コード例 #1
0
 public override void RunImplement()
 {
     try
     {
         Account player = client.SessionPlayer;
         if (player == null || AccountManager.CheckNickLengthInvalid(nickname))
         {
             client.SendCompletePacket(PackageDataManager.AUTH_CHECK_NICKNAME_ERROR_PAK);
             return;
         }
         if (!StringFilter.CheckStringFilter(nickname) || AccountManager.CheckNicknameExist(nickname).Result)
         {
             client.SendCompletePacket(PackageDataManager.AUTH_CHECK_NICKNAME_ERROR_PAK);
             return;
         }
         if (nickname != player.nickname)
         {
             client.SendCompletePacket(PackageDataManager.AUTH_CHECK_NICKNAME_SUCCESS_PAK);
         }
         else
         {
             client.SendCompletePacket(PackageDataManager.AUTH_CHECK_NICKNAME_ERROR_PAK);
         }
     }
     catch (Exception ex)
     {
         PacketLog(ex);
     }
 }
コード例 #2
0
 public override void RunImplement()
 {
     try
     {
         Account player = client.SessionPlayer;
         if (player == null || player.nickname.Length > 0 || AccountManager.CheckNickLengthInvalid(nickname))
         {
             client.SendCompletePacket(PackageDataManager.LOBBY_CREATE_NICKNAME_ERROR_0x80001013_PAK);
             return;
         }
         if (StringFilter.CheckStringFilter(nickname) && !AccountManager.CheckNicknameExist(nickname).Result&& player.UpdateNick(nickname).Result)
         {
             player.nickname = nickname;
             if (!NickHistoryManager.CreateHistory(player.playerId, player.nickname, nickname, "First nick"))
             {
                 Logger.Analyze($" [LOBBY_CREATE_NICK_NAME_REQ] Não foi possivel salvar o histórico de nome. PlayerId: {player.playerId} Nickname: {nickname} Motivo: First nick.");
             }
             List <ItemsModel> awards = DefaultInventoryManager.awards;
             if (awards.Count > 0)
             {
                 client.SendPacket(new PROTOCOL_INVENTORY_ITEM_CREATE_ACK(1, player, awards));
                 client.SendCompletePacket(PackageDataManager.GAME_SERVER_MESSAGE_ITEM_RECEIVE_PAK);
             }
             client.SendCompletePacket(PackageDataManager.LOBBY_CREATE_NICKNAME_SUCCESS_PAK);
             client.SendPacket(new PROTOCOL_BASE_QUEST_GET_INFO_ACK(player));
             ApiManager.SendPacketToAllClients(new API_USER_INFO_ACK(player));
         }
         else
         {
             Logger.Analyze($" [LOBBY_CREATE_NICK_NAME_REQ] Não foi possivel atualizar o nome do jogador na database. PlayerId: {player.playerId} Nickname: {nickname} Motivo: First nick.");
             client.SendCompletePacket(PackageDataManager.LOBBY_CREATE_NICKNAME_ERROR_0x80000113_PAK);
         }
     }
     catch (Exception ex)
     {
         PacketLog(ex);
     }
 }
コード例 #3
0
 public override void RunImplement()
 {
     try
     {
         Account player = client.SessionPlayer;
         if (player == null)
         {
             return;
         }
         Clan clan = ClanManager.GetClan(player.clanId);
         if (ClanManager.CheckNameLengthInvalid(clanName) || !StringFilter.CheckStringFilter(clanName) || ClanManager.IsClanNameExist(clanName).Result)
         {
             client.SendCompletePacket(PackageDataManager.CLAN_CHECK_NAME_ERROR_ACK);
         }
         else
         {
             client.SendCompletePacket(PackageDataManager.CLAN_CHECK_NAME_SUCCESS_ACK);
         }
     }
     catch (Exception ex)
     {
         PacketLog(ex);
     }
 }
コード例 #4
0
 /// <summary>
 /// Gera efeitos dos cupons na Database.
 /// </summary>
 /// <param name="cuponId">Id do cupom</param>
 /// <param name="cuponDays">Dias do cupom</param>
 /// <param name="player">Jogador</param>
 private void CreateCuponEffects(int cupomId, int cuponDays, Account player)
 {
     if (cupomId == 1201051000)
     {
         Clan clan = ClanManager.GetClan(player.clanId);
         if (clan.id > 0 && clan.ownerId == player.playerId)
         {
             if (!ClanManager.CheckNameLengthInvalid(txt) && StringFilter.CheckStringFilter(txt) && !ClanManager.IsClanNameExist(txt).Result&& clan.UpdateName(txt).Result)
             {
                 clan.name = txt;
                 List <Account> players = player.GetClanPlayers(-1);
                 using (CLAN_CHANGE_NAME_PAK packet = new CLAN_CHANGE_NAME_PAK(txt))
                 {
                     player.SendPacketForPlayers(packet, players);
                 }
             }
             else
             {
                 client.SendCompletePacket(PackageDataManager.INVENTORY_ITEM_EQUIP_0x80000000_PAK);
                 return;
             }
         }
     }
     else if (cupomId == 1201052000)
     {
         Clan clan = ClanManager.GetClan(player.clanId);
         if (clan.id > 0 && clan.ownerId == player.playerId && !ClanManager.IsClanLogoExist(objetivo).Result&& clan.UpdateLogo(objetivo).Result)
         {
             clan.logo = objetivo;
             List <Account> players = player.GetClanPlayers(-1);
             using (CLAN_CHANGE_LOGO_PAK packet = new CLAN_CHANGE_LOGO_PAK(objetivo))
             {
                 player.SendPacketForPlayers(packet, players);
             }
         }
         else
         {
             client.SendCompletePacket(PackageDataManager.INVENTORY_ITEM_EQUIP_0x80000000_PAK);
             return;
         }
     }
     else if (cupomId == 1201047000)
     {
         if (!AccountManager.CheckNickLengthInvalid(txt) && StringFilter.CheckStringFilter(txt) && !AccountManager.CheckNicknameExist(txt).Result&& player.UpdateNick(txt).Result)
         {
             player.nickname = txt;
             if (!NickHistoryManager.CreateHistory(player.playerId, player.nickname, txt, "Change nick"))
             {
                 Logger.Warning($" [GAME] [PROTOCOL_INVENTORY_ITEM_EFFECT_REQ] (CuponId: 1201047000) Não foi possivel salvar o histórico de nome. PlayerId: {player.playerId} Nickname: {txt} Motivo: Change nick.");
             }
             if (player.room != null)
             {
                 using (PROTOCOL_ROOM_GET_NICKNAME_ACK packet = new PROTOCOL_ROOM_GET_NICKNAME_ACK(player.slotId, player.nickname, player.nickcolor))
                 {
                     player.room.SendPacketToPlayers(packet);
                 }
             }
             client.SendPacket(new PROTOCOL_AUTH_CHANGE_NICKNAME_ACK(player.nickname));
             if (player.clanId > 0)
             {
                 List <Account> players = player.GetClanPlayers(-1);
                 using (PROTOCOL_CLAN_MEMBER_INFO_UPDATE_ACK packet = new PROTOCOL_CLAN_MEMBER_INFO_UPDATE_ACK(player))
                 {
                     player.SendPacketForPlayers(packet, players);
                 }
             }
             player.SyncPlayerToFriends(true);
         }
         else
         {
             client.SendCompletePacket(PackageDataManager.INVENTORY_ITEM_EQUIP_2147483923_PAK);
             return;
         }
     }
     else if (cupomId == 1200006000)
     {
         if (player.ExecuteQuery($"UPDATE accounts SET nickcolor='{(int)objetivo}' WHERE id='{player.playerId}'"))
         {
             player.nickcolor = (byte)objetivo;
             client.SendPacket(new PROTOCOL_INVENTORY_ITEM_CREATE_ACK(1, player, new ItemsModel(cupomId, 3, "NameColor [Active]", 2, cuponDays, 0)));
             client.SendPacket(new BASE_2612_PAK(player));
             if (player.room != null)
             {
                 using (PROTOCOL_ROOM_GET_NICKNAME_ACK packet = new PROTOCOL_ROOM_GET_NICKNAME_ACK(player.slotId, player.nickname, player.nickcolor))
                 {
                     player.room.SendPacketToPlayers(packet);
                 }
             }
         }
         else
         {
             client.SendCompletePacket(PackageDataManager.INVENTORY_ITEM_EQUIP_0x80000000_PAK);
             return;
         }
     }
     else if (cupomId == 1200009000)
     {
         if ((int)objetivo >= 51 || (int)objetivo < player.rankId - 10 || (int)objetivo > player.rankId + 10)
         {
             client.SendCompletePacket(PackageDataManager.INVENTORY_ITEM_EQUIP_0x80000000_PAK);
             return;
         }
         else if (player.ExecuteQuery($"UPDATE player_bonus SET fakerank='{(int)objetivo}' WHERE player_id='{player.playerId}'"))
         {
             player.bonus.fakeRank = (int)objetivo;
             client.SendPacket(new PROTOCOL_BASE_USER_EFFECTS_ACK(info.Length, player.bonus));
             client.SendPacket(new PROTOCOL_INVENTORY_ITEM_CREATE_ACK(1, player, new ItemsModel(cupomId, 3, "Patente falsa [Active]", 2, cuponDays, 0)));
             if (player.room != null)
             {
                 player.room.UpdateSlotsInfo();
             }
         }
         else
         {
             client.SendCompletePacket(PackageDataManager.INVENTORY_ITEM_EQUIP_0x80000000_PAK);
             return;
         }
     }
     else if (cupomId == 1200010000)
     {
         if (AccountManager.CheckNickLengthInvalid(txt))
         {
             client.SendCompletePacket(PackageDataManager.INVENTORY_ITEM_EQUIP_0x80000000_PAK);
             return;
         }
         if (StringFilter.CheckStringFilter(txt) && !AccountManager.CheckNicknameExist(txt).Result&& player.UpdateFakeNick().Result&& player.UpdateNick(txt).Result)
         {
             player.bonus.fakeNick = player.nickname;
             player.nickname       = txt;
             if (!NickHistoryManager.CreateHistory(player.playerId, player.nickname, txt, "Change nick false"))
             {
                 Logger.Warning($" [GAME] [PROTOCOL_INVENTORY_ITEM_EFFECT_REQ] (CuponId: 1200010000) Não foi possivel salvar o histórico de nome. PlayerId: {player.playerId} Nickname: {txt} Motivo: Change nick false.");
             }
             client.SendPacket(new PROTOCOL_BASE_USER_EFFECTS_ACK(info.Length, player.bonus));
             client.SendPacket(new PROTOCOL_AUTH_CHANGE_NICKNAME_ACK(player.nickname));
             client.SendPacket(new PROTOCOL_INVENTORY_ITEM_CREATE_ACK(1, player, new ItemsModel(cupomId, 3, "FakeNick [Active]", 2, cuponDays, 0)));
             Room room = player.room;
             if (room != null)
             {
                 room.UpdateSlotsInfo();
             }
         }
         else
         {
             client.SendCompletePacket(PackageDataManager.INVENTORY_ITEM_EQUIP_2147483923_PAK);
             return;
         }
     }
     else if (cupomId == 1200014000)
     {
         if (player.ExecuteQuery($"UPDATE player_bonus SET sightcolor='{(int)objetivo}' WHERE player_id='{player.playerId}'"))
         {
             player.bonus.sightColor = (short)objetivo;
             client.SendPacket(new PROTOCOL_BASE_USER_EFFECTS_ACK(info.Length, player.bonus));
             client.SendPacket(new PROTOCOL_INVENTORY_ITEM_CREATE_ACK(1, player, new ItemsModel(cupomId, 3, "Cor da mira [Active]", 2, cuponDays, 0)));
         }
         else
         {
             client.SendCompletePacket(PackageDataManager.INVENTORY_ITEM_EQUIP_0x80000000_PAK);
             return;
         }
     }
     else if (cupomId == 1200005000)
     {
         Clan clan = ClanManager.GetClan(player.clanId);
         if (clan.id > 0 && clan.ownerId == player.playerId && player.ExecuteQuery($"UPDATE clan_data SET color='{(int)objetivo}' WHERE clan_id='{clan.id}'"))
         {
             clan.nameColor = (byte)objetivo;
             client.SendPacket(new CLAN_CHANGE_NAME_COLOR_PAK(clan.nameColor));
         }
         else
         {
             client.SendCompletePacket(PackageDataManager.INVENTORY_ITEM_EQUIP_0x80000000_PAK);
             return;
         }
     }
     else if (cupomId == 1201085000)
     {
         if (player.room != null)
         {
             Account playerRoom = player.room.GetPlayerBySlot((int)objetivo);
             if (playerRoom != null)
             {
                 client.SendPacket(new PROTOCOL_ROOM_INSPECTPLAYER_ACK(playerRoom));
             }
             else
             {
                 client.SendCompletePacket(PackageDataManager.INVENTORY_ITEM_EQUIP_0x80000000_PAK);
                 return;
             }
         }
         else
         {
             client.SendCompletePacket(PackageDataManager.INVENTORY_ITEM_EQUIP_0x80000000_PAK);
             return;
         }
     }
     else
     {
         Logger.Error("[ITEM_EFFECT] Efeito do cupom não encontrado! Id: " + cupomId);
         client.SendCompletePacket(PackageDataManager.INVENTORY_ITEM_EQUIP_0x80000000_PAK);
         return;
     }
 }