mirror of
https://bitbucket.org/Ioncannon/project-meteor-server.git
synced 2025-04-02 19:42:05 -04:00
Abandoning/Completing GLs now marks them correctly in the Journal.
This commit is contained in:
parent
573b9a7202
commit
b5db036d71
@ -432,6 +432,42 @@ namespace FFXIVClassic_Map_Server
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void MarkGuildleve(Player player, uint glId, bool isAbandoned, bool isCompleted)
|
||||||
|
{
|
||||||
|
string query;
|
||||||
|
MySqlCommand cmd;
|
||||||
|
|
||||||
|
using (MySqlConnection conn = new MySqlConnection(String.Format("Server={0}; Port={1}; Database={2}; UID={3}; Password={4}", ConfigConstants.DATABASE_HOST, ConfigConstants.DATABASE_PORT, ConfigConstants.DATABASE_NAME, ConfigConstants.DATABASE_USERNAME, ConfigConstants.DATABASE_PASSWORD)))
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
conn.Open();
|
||||||
|
|
||||||
|
query = @"
|
||||||
|
UPDATE characters_quest_guildleve_regional
|
||||||
|
SET abandoned = @abandoned, completed = @completed
|
||||||
|
WHERE characterId = @charaId and guildleveId = @guildleveId
|
||||||
|
";
|
||||||
|
|
||||||
|
cmd = new MySqlCommand(query, conn);
|
||||||
|
cmd.Parameters.AddWithValue("@charaId", player.actorId);
|
||||||
|
cmd.Parameters.AddWithValue("@guildleveId", glId);
|
||||||
|
cmd.Parameters.AddWithValue("@abandoned", isAbandoned);
|
||||||
|
cmd.Parameters.AddWithValue("@completed", isCompleted);
|
||||||
|
|
||||||
|
cmd.ExecuteNonQuery();
|
||||||
|
}
|
||||||
|
catch (MySqlException e)
|
||||||
|
{
|
||||||
|
Program.Log.Error(e.ToString());
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
conn.Dispose();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public static void SaveGuildleve(Player player, uint glId, int slot)
|
public static void SaveGuildleve(Player player, uint glId, int slot)
|
||||||
{
|
{
|
||||||
string query;
|
string query;
|
||||||
|
@ -1141,6 +1141,23 @@ namespace FFXIVClassic_Map_Server.Actors
|
|||||||
SendGuildleveClientUpdate(freeSlot);
|
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)
|
public void RemoveGuildleve(uint id)
|
||||||
{
|
{
|
||||||
if (HasGuildleve(id))
|
if (HasGuildleve(id))
|
||||||
@ -1409,6 +1426,14 @@ namespace FFXIVClassic_Map_Server.Actors
|
|||||||
QueuePackets(propPacketUtil.Done());
|
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)
|
public void SetLoginDirector(Director director)
|
||||||
{
|
{
|
||||||
if (ownedDirectors.Contains(director))
|
if (ownedDirectors.Contains(director))
|
||||||
|
@ -94,6 +94,7 @@ namespace FFXIVClassic_Map_Server.actors.director
|
|||||||
foreach (Actor a in GetPlayerMembers())
|
foreach (Actor a in GetPlayerMembers())
|
||||||
{
|
{
|
||||||
Player player = (Player)a;
|
Player player = (Player)a;
|
||||||
|
player.MarkGuildleve(guildleveId, false, true);
|
||||||
player.PlayAnimation(0x02000002);
|
player.PlayAnimation(0x02000002);
|
||||||
player.ChangeMusic(81);
|
player.ChangeMusic(81);
|
||||||
player.SendGameMessage(Server.GetWorldManager().GetActor(), 50023, 0x20, (object)(int)guildleveId);
|
player.SendGameMessage(Server.GetWorldManager().GetActor(), 50023, 0x20, (object)(int)guildleveId);
|
||||||
@ -129,6 +130,7 @@ namespace FFXIVClassic_Map_Server.actors.director
|
|||||||
{
|
{
|
||||||
Player player = (Player)p;
|
Player player = (Player)p;
|
||||||
player.SendGameMessage(Server.GetWorldManager().GetActor(), 50147, 0x20, (object)guildleveId);
|
player.SendGameMessage(Server.GetWorldManager().GetActor(), 50147, 0x20, (object)guildleveId);
|
||||||
|
player.MarkGuildleve(guildleveId, true, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
EndGuildleve(false);
|
EndGuildleve(false);
|
||||||
|
Loading…
Reference in New Issue
Block a user