mirror of
https://bitbucket.org/Ioncannon/project-meteor-server.git
synced 2025-06-10 14:34:32 +02:00
Fixed work values not updating. GL UI now shows up though it isn't configured.
This commit is contained in:
parent
186d5b5cc5
commit
8fb4910320
7 changed files with 33 additions and 15 deletions
|
@ -87,6 +87,8 @@
|
|||
<Compile Include="actors\chara\Work.cs" />
|
||||
<Compile Include="actors\debug\Debug.cs" />
|
||||
<Compile Include="actors\director\Director.cs" />
|
||||
<Compile Include="actors\director\GuildleveDirector.cs" />
|
||||
<Compile Include="actors\director\Work\GuildleveWork.cs" />
|
||||
<Compile Include="actors\EventList.cs" />
|
||||
<Compile Include="actors\group\ContentGroup.cs" />
|
||||
<Compile Include="actors\group\Work\ContentGroupWork.cs" />
|
||||
|
|
|
@ -110,6 +110,9 @@ namespace FFXIVClassic_Map_Server.actors.director
|
|||
p.QueuePacket(GetInitPackets(p.actorId));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
StartCoroutine("mainLoop", this);
|
||||
}
|
||||
|
||||
public void AddMember(Actor actor)
|
||||
|
@ -223,5 +226,21 @@ namespace FFXIVClassic_Map_Server.actors.director
|
|||
return null;
|
||||
}
|
||||
|
||||
private List<LuaParam> StartCoroutine(string funcName, params object[] args)
|
||||
{
|
||||
if (directorScript != null)
|
||||
{
|
||||
if (!directorScript.Globals.Get(funcName).IsNil())
|
||||
{
|
||||
currentCoroutine = directorScript.CreateCoroutine(directorScript.Globals[funcName]).Coroutine;
|
||||
DynValue value = currentCoroutine.Resume(args);
|
||||
LuaEngine.GetInstance().ResolveResume(null, currentCoroutine, value);
|
||||
}
|
||||
else
|
||||
Program.Log.Error("Could not find script for director {0}.", GetName());
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
|
@ -36,7 +36,7 @@ namespace FFXIVClassic_Map_Server.actors.director
|
|||
guildleveWork.startTime = Utils.UnixTimeStampUTC();
|
||||
ActorPropertyPacketUtil propertyBuilder = new ActorPropertyPacketUtil("guildleveWork/start", this, actorId);
|
||||
propertyBuilder.AddProperty("guildleveWork.startTime");
|
||||
SendPacketsToPlayers(propertyBuilder.Done());
|
||||
SendPacketsToPlayers(propertyBuilder.Done());
|
||||
}
|
||||
|
||||
public void EndGuildleve()
|
||||
|
|
|
@ -38,7 +38,7 @@ namespace FFXIVClassic_Map_Server.dataobjects
|
|||
|
||||
public void QueuePacket(SubPacket subPacket, bool isAuthed, bool isEncrypted)
|
||||
{
|
||||
//subPacket.header.targetId = id;
|
||||
subPacket.header.targetId = id;
|
||||
Server.GetWorldConnection().QueuePacket(subPacket, isAuthed, isEncrypted);
|
||||
}
|
||||
|
||||
|
|
|
@ -372,12 +372,12 @@ namespace FFXIVClassic_Map_Server.lua
|
|||
CallLuaFunction(player, target, "onEventStarted", false, LuaUtils.CreateLuaParamObjectList(lparams));
|
||||
}
|
||||
|
||||
private DynValue ResolveResume(Player player, Coroutine coroutine, DynValue value)
|
||||
public DynValue ResolveResume(Player player, Coroutine coroutine, DynValue value)
|
||||
{
|
||||
if (value == null || value.IsVoid())
|
||||
return value;
|
||||
|
||||
if (value.String != null && value.String.Equals("_WAIT_EVENT"))
|
||||
if (player != null && value.String != null && value.String.Equals("_WAIT_EVENT"))
|
||||
{
|
||||
GetInstance().AddWaitEventCoroutine(player, coroutine);
|
||||
}
|
||||
|
|
|
@ -113,7 +113,7 @@ namespace FFXIVClassic_Map_Server.packets.send.actor
|
|||
string[] split = name.Split('.');
|
||||
int arrayIndex = 0;
|
||||
|
||||
if (!(split[0].Equals("work") || split[0].Equals("charaWork") || split[0].Equals("playerWork") || split[0].Equals("npcWork")))
|
||||
if (!(split[0].Equals("work") || split[0].Equals("charaWork") || split[0].Equals("playerWork") || split[0].Equals("npcWork") || split[0].Equals("guildleveWork")))
|
||||
return false;
|
||||
|
||||
Object curObj = actor;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue