Abandoning/Completing GLs now marks them correctly in the Journal.

This commit is contained in:
Filip Maj
2017-06-25 23:02:20 -04:00
parent 573b9a7202
commit b5db036d71
3 changed files with 64 additions and 1 deletions

View File

@@ -1141,6 +1141,23 @@ namespace FFXIVClassic_Map_Server.Actors
SendGuildleveClientUpdate(freeSlot);
}
public void MarkGuildleve(uint id, bool abandoned, bool completed)
{
if (HasGuildleve(id))
{
for (int i = 0; i < questGuildleve.Length; i++)
{
if (questGuildleve[i] != null && questGuildleve[i] == id)
{
work.guildleveChecked[i] = abandoned;
work.guildleveDone[i] = completed;
Database.MarkGuildleve(this, id, abandoned, completed);
SendGuildleveClientUpdate(i);
}
}
}
}
public void RemoveGuildleve(uint id)
{
if (HasGuildleve(id))
@@ -1409,6 +1426,14 @@ namespace FFXIVClassic_Map_Server.Actors
QueuePackets(propPacketUtil.Done());
}
private void SendGuildleveMarkClientUpdate(int slot)
{
ActorPropertyPacketUtil propPacketUtil = new ActorPropertyPacketUtil("work/guildleve", this, actorId);
propPacketUtil.AddProperty(String.Format("work.guildleveDone[{0}]", slot));
propPacketUtil.AddProperty(String.Format("work.guildleveChecked[{0}]", slot));
QueuePackets(propPacketUtil.Done());
}
public void SetLoginDirector(Director director)
{
if (ownedDirectors.Contains(director))