Implemented more of the Guildleve Director. Correct script is now autoloaded based on leveplate. Players are now added to the contentgroup on leve start. Moved animation and stuff to C# side of things. Cleaned up code.

This commit is contained in:
Filip Maj
2017-06-25 14:25:54 -04:00
parent c42f1a08de
commit 875b76634a
9 changed files with 292 additions and 55 deletions

View File

@@ -795,7 +795,7 @@ namespace FFXIVClassic_Map_Server.Actors
QueuePacket(GameMessagePacket.BuildPacket(Server.GetWorldManager().GetActor().actorId, actorId, textIdOwner.actorId, textId, log, LuaUtils.CreateLuaParamList(msgParams)));
}
public void SendGameMessage(Actor textIdOwner, ushort textId, byte log, string customSender, params object[] msgParams)
public void SendGameMessageCustomSender(Actor textIdOwner, ushort textId, byte log, string customSender, params object[] msgParams)
{
if (msgParams == null || msgParams.Length == 0)
QueuePacket(GameMessagePacket.BuildPacket(Server.GetWorldManager().GetActor().actorId, actorId, textIdOwner.actorId, textId, customSender, log));
@@ -803,7 +803,7 @@ namespace FFXIVClassic_Map_Server.Actors
QueuePacket(GameMessagePacket.BuildPacket(Server.GetWorldManager().GetActor().actorId, actorId, textIdOwner.actorId, textId, customSender, log, LuaUtils.CreateLuaParamList(msgParams)));
}
public void SendGameMessage(Actor textIdOwner, ushort textId, byte log, uint displayId, params object[] msgParams)
public void SendGameMessageDisplayIDSender(Actor textIdOwner, ushort textId, byte log, uint displayId, params object[] msgParams)
{
if (msgParams == null || msgParams.Length == 0)
QueuePacket(GameMessagePacket.BuildPacket(Server.GetWorldManager().GetActor().actorId, actorId, textIdOwner.actorId, textId, displayId, log));
@@ -1433,13 +1433,25 @@ namespace FFXIVClassic_Map_Server.Actors
public void RemoveDirector(Director director)
{
if (!ownedDirectors.Contains(director))
if (ownedDirectors.Contains(director))
{
QueuePacket(RemoveActorPacket.BuildPacket(actorId, director.actorId));
ownedDirectors.Remove(director);
director.RemoveMember(this);
}
}
public Director GetGuildleveDirector()
{
foreach (Director d in ownedDirectors)
{
if (d is GuildleveDirector)
return d;
}
return null;
}
public Director GetDirector(string directorName)
{
foreach (Director d in ownedDirectors)