mirror of
				https://bitbucket.org/Ioncannon/project-meteor-server.git
				synced 2025-05-20 08:26:59 -04:00 
			
		
		
		
	Added npc ls saving/functionality.
This commit is contained in:
		| @@ -1385,6 +1385,45 @@ namespace FFXIVClassic_Map_Server | ||||
|             return success; | ||||
|         } | ||||
|  | ||||
|  | ||||
|         public static void SaveNpcLS(Player player, uint npcLSId, bool isCalling, bool isExtra) | ||||
|         { | ||||
|             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 = @" | ||||
|                     INSERT INTO characters_npclinkshell  | ||||
|                     (characterId, npcLinkshellId, isCalling, isExtra) | ||||
|                     VALUES | ||||
|                     (@charaId, @lsId, @calling, @extra) | ||||
|                     ON DUPLICATE KEY UPDATE | ||||
|                     characterId = @charaId, npcLinkshellId = @lsId, isCalling = @calling, isExtra = @extra | ||||
|                     "; | ||||
|  | ||||
|                     cmd = new MySqlCommand(query, conn); | ||||
|                     cmd.Parameters.AddWithValue("@charaId", player.actorId); | ||||
|                     cmd.Parameters.AddWithValue("@lsId", npcLSId); | ||||
|                     cmd.Parameters.AddWithValue("@calling", isCalling ? 1 : 0); | ||||
|                     cmd.Parameters.AddWithValue("@extra", isExtra ? 1 : 0); | ||||
|  | ||||
|                     cmd.ExecuteNonQuery(); | ||||
|                 } | ||||
|                 catch (MySqlException e) | ||||
|                 { | ||||
|                     Program.Log.Error(e.ToString()); | ||||
|                 } | ||||
|                 finally | ||||
|                 { | ||||
|                     conn.Dispose(); | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|  | ||||
| } | ||||
|   | ||||
| @@ -1254,6 +1254,19 @@ namespace FFXIVClassic_Map_Server.Actors | ||||
|             return -1; | ||||
|         } | ||||
|  | ||||
|         public void SetNpcLS(uint npcLSId, bool isCalling, bool isExtra) | ||||
|         { | ||||
|             playerWork.npcLinkshellChatExtra[npcLSId] = isExtra; | ||||
|             playerWork.npcLinkshellChatCalling[npcLSId] = isCalling; | ||||
|  | ||||
|             Database.SaveNpcLS(this, npcLSId, isCalling, isExtra); | ||||
|  | ||||
|             ActorPropertyPacketUtil propPacketUtil = new ActorPropertyPacketUtil("playerWork/npcLinkshellChat", this, actorId); | ||||
|             propPacketUtil.AddProperty(String.Format("playerWork.npcLinkshellChatExtra[{0}]", npcLSId)); | ||||
|             propPacketUtil.AddProperty(String.Format("playerWork.npcLinkshellChatCalling[{0}]", npcLSId)); | ||||
|             QueuePackets(propPacketUtil.Done()); | ||||
|         } | ||||
|  | ||||
|         private void SendQuestClientUpdate(int slot) | ||||
|         { | ||||
|             ActorPropertyPacketUtil propPacketUtil = new ActorPropertyPacketUtil("playerWork/journal", this, actorId); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user