public ActionResult Create(UpsertBlacklistUserViewModel model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    UserBlackList newBlacklistUser = new UserBlackList();

                    newBlacklistUser.clanUserId = model.ClanUserId;
                    newBlacklistUser.clanId     = (int)ClanManager.GetClanId(User.Identity.GetUserId());
                    newBlacklistUser.note       = model.Notes;

                    BlacklistManager.Insert(newBlacklistUser);

                    ClanUser blUser = ClanUserManager.SelectByClanUserId(model.ClanUserId);
                    blUser.clanId = null;
                    ClanUserManager.Update(blUser);
                }
            }
            catch
            {
                return(View(new UpsertBlacklistUserViewModel()));
            }

            return(RedirectToAction("EditMode", "Members"));
        }
        /// <summary>
        /// Возвращает основную информацию об игроке
        /// </summary>
        private object CreateShortPlayerInfo(PlayerInfo playerInfo, WorkInfo activeWork)
        {
            var hasWork       = activeWork != null;
            var workLevelInfo = string.Empty;

            if (hasWork)
            {
                workLevelInfo = activeWork.Type == WorkType.Police ? PoliceDataGetter.RankNames[activeWork.Level] : activeWork.Level.ToString();
            }
            var info = new {
                playerInfo.Name,
                TagName = playerInfo.Clan != null?ClanManager.GetClanName(playerInfo.Clan.ClanId) : null,
                              playerInfo.Balance,
                              playerInfo.Level,
                              playerInfo.Experience,
                              Driver    = playerInfo.Driver.CanDriveB,
                              Work      = hasWork ? activeWork.Type.GetDescription() : string.Empty,
                              WorkLevel = workLevelInfo,
                              WorkExp   = hasWork ? activeWork.Experience : 0,
                              Salary    = hasWork ? activeWork.Salary : 0,
                              Wanted    = playerInfo.Wanted.WantedLevel,
                              playerInfo.PhoneNumber,
                              playerInfo.PhoneBalance,
                              playerInfo.Settings,
                              ClanRank = playerInfo.Clan?.Rank.GetDescription(),
                              ClanRep  = playerInfo.Clan?.Reputation
            };

            return(info);
        }
Example #3
0
        public ActionResult RegisterClan(RegisterClanViewModel model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    Clan newClan = new Clan();

                    newClan.name               = model.ClanName;
                    newClan.description        = model.Description;
                    newClan.shieldLogoLocation = model.Shield;

                    ClanManager.Insert(newClan);
                    ClanUser clanUser = HttpContext.GetCurrentLoginInformation();

                    if (clanUser != null)
                    {
                        clanUser.clanId     = newClan.id;
                        clanUser.userRoleId = (int)ClanRole.Leader;
                        ClanUserManager.Update(clanUser);
                    }
                    else
                    {
                        return(View(new RegisterClanViewModel()));
                    }
                }
            }
            catch
            {
                return(View(new RegisterClanViewModel()));
            }

            return(RedirectToAction("Index", "ClanInfo"));
        }
        public override void run()
        {
            try
            {
                Account player = _client._player;
                if (player == null)
                {
                    return;
                }
                Clan c = ClanManager.getClan(player.clanId);
                if (c._id > 0 && (c.owner_id == _client.player_id) && PlayerManager.updateClanInfo(c._id, autoridade, limite_rank, limite_idade, limite_idade2))
                {
                    c.autoridade    = autoridade;
                    c.limite_rank   = limite_rank;
                    c.limite_idade  = limite_idade;
                    c.limite_idade2 = limite_idade2;
                }
                else
                {
                    erro = 0x80000000;
                }

                _client.SendPacket(new CLAN_SAVEINFO3_PAK(erro));
            }
            catch (Exception ex)
            {
                SaveLog.fatal(ex.ToString());
                Printf.b_danger("[CLAN_SAVEINFO3_REC.run] Erro fatal!");
            }
        }
Example #5
0
 public override void RunImplement()
 {
     try
     {
         Account player = client.SessionPlayer;
         if (player == null || player.clanId <= 0)
         {
             client.SendCompletePacket(PackageDataManager.CLAN_MEMBER_LEAVE_2147487835_ACK);
             return;
         }
         Clan clan = ClanManager.GetClan(player.clanId);
         if (clan.id == 0 || clan.ownerId == player.playerId)
         {
             client.SendCompletePacket(PackageDataManager.CLAN_MEMBER_LEAVE_2147487838_ACK);
             return;
         }
         if (player.ExecuteQuery($"UPDATE accounts SET clan_id='0', clan_authority='0', clan_fights='0', clan_wins='0', clan_date='0' WHERE id='{player.playerId}'"))
         {
             List <Account> players = player.GetClanPlayers(player.playerId);
             using (PROTOCOL_CLAN_MEMBER_LEAVE_ACK packet = new PROTOCOL_CLAN_MEMBER_LEAVE_ACK(player.playerId))
             {
                 player.SendPacketForPlayers(packet, players);
             }
             players = null;
             Account ownerClan = AccountManager.GetAccount(clan.ownerId, 0);
             if (ownerClan != null)
             {
                 if (ownerClan.GetMessagesCount() < 100)
                 {
                     Message message = new Message(15)
                     {
                         senderName = clan.name,
                         senderId   = player.playerId,
                         clanId     = clan.id,
                         type       = 4,
                         text       = player.nickname,
                         state      = 1,
                         noteEnum   = NoteMessageClanEnum.Secession
                     };
                     if (message != null && ownerClan.InsertMessage(message) && ownerClan.isOnline)
                     {
                         //Envia mensagem para o dono do clã, notificando que o jogador saiu do clã.
                         ownerClan.SendPacket(new BOX_MESSAGE_RECEIVE_PAK(message));
                     }
                 }
             }
             player.clanId        = 0;
             player.clanAuthority = ClanAuthorityEnum.None;
             client.SendCompletePacket(PackageDataManager.CLAN_MEMBER_LEAVE_SUCCESS_ACK);
         }
         else
         {
             client.SendCompletePacket(PackageDataManager.CLAN_MEMBER_LEAVE_0x8000106B_ACK);
         }
     }
     catch (Exception ex)
     {
         PacketLog(ex);
     }
 }
 protected internal override void read()
 {
     this.clan = new Clan();
     base.readH();
     this.length_c_name = (int)base.readC();
     this.length_c_info = (int)base.readC();
     this.length_info   = (int)base.readC();
     this.clan_name     = base.readS(this.length_c_name);
     this.clan_info     = base.readS(this.length_c_info);
     this.info          = base.readS(this.length_info);
     this.unk           = base.readD();
     this.clan.setClanId(base.getClient().getPlayerId());
     this.clan.setClanName(this.clan_name);
     this.clan.setClanRank(0);
     this.clan.setLogo1(0);
     this.clan.setLogo2(0);
     this.clan.setLogo3(0);
     this.clan.setLogo4(0);
     this.clan.setOwnerId(base.getClient().getPlayerId());
     this.clan.setLogoColor(0);
     this.clan.clan_info = this.clan_info;
     CLogger.getInstance().info("[Clan] name: " + this.clan_name);
     CLogger.getInstance().info("[Clan] information: " + this.clan_info);
     ClanManager.getInstance().AddClan(this.clan);
     base.getClient().getPlayer().setClanId(base.getClient().getPlayerId());
     AccountManager.getInstance().UpdateClan(base.getClient().getPlayerId(), base.getClient().getPlayerId());
 }
Example #7
0
        public EditDescriptionViewModel(int clanId)
        {
            Clan clan = ClanManager.SelectByClanId(clanId);

            this.ClanId      = clan.id;
            this.Description = clan.description;
        }
        protected internal override void write()
        {
            Clan c = ClanManager.getInstance().get(pl.getClanId());

            this.writeH(3909);
            this.writeD(pl.getSlot());
            this.writeC((byte)pl.getRoom().getSlotState(this.pl.getSlot())); // слот-статус
            this.writeC((byte)pl.getRank());                                 // ранг игрока
            this.writeC(0x2d);
            this.writeC(0x40);
            this.writeB(new byte[10]); // неизвестные байты
            if (pl.getClanId() == 0)
            {
                this.writeC((byte)255); // иконка клана
                this.writeC((byte)255); // иконка клана
                this.writeC((byte)255); // иконка клана
                this.writeC((byte)255); // иконка клана
                this.writeC((byte)0);   // иконка клана
                this.writeB(new byte[6]);
                this.writeS("", 17);
            }
            if (pl.getClanId() > 0)
            {
                this.writeC((byte)c.getLogo1());     // иконка клана
                this.writeC((byte)c.getLogo2());     // иконка клана
                this.writeC((byte)c.getLogo3());     // иконка клана
                this.writeC((byte)c.getLogo4());     // иконка клана
                this.writeC((byte)c.getLogoColor()); // иконка клана
                this.writeB(new byte[6]);
                this.writeS(c.getClanName(), 17);
            }
            this.writeS(pl.getPlayerName(), 33);  //Apelido
            this.writeC((byte)pl.getNameColor()); //Cor do nickname
        }
Example #9
0
 public override void run()
 {
     try
     {
         Account player = this._client._player;
         if (player != null)
         {
             Clan clan = ClanManager.getClan(player.clanId);
             if (clan._id > 0 && clan._info != this.clan_info && (clan.owner_id == this._client.player_id || player.clanAccess >= 1 && player.clanAccess <= 2))
             {
                 if (ComDiv.updateDB("clan_data", "clan_info", (object)this.clan_info, "clan_id", (object)clan._id))
                 {
                     clan._info = this.clan_info;
                 }
                 else
                 {
                     this.erro = 2147487860U;
                 }
             }
             else
             {
                 this.erro = 2147487835U;
             }
         }
         else
         {
             this.erro = 2147487835U;
         }
     }
     catch
     {
         this.erro = 2147487860U;
     }
     this._client.SendPacket((SendPacket) new CLAN_REPLACE_INTRO_PAK(this.erro));
 }
Example #10
0
            public MyClanInformation(User usr)
            {
                Clan clan     = usr.clan;
                int  Count    = (clan.maxUsers / 20) - 1;
                int  clanRank = ClanManager.GetClanRank(clan.id);
                int  length   = clan.ClanWars.Count;

                newPacket(26384);
                addBlock(4); // OPCode
                addBlock(1);
                addBlock(clan.clanRank(usr));
                addBlock(clan.name);
                addBlock(clan.Master);
                addBlock(clan.MasterEXP);
                addBlock(Count);
                addBlock(clan.ClanUsers.Count);
                addBlock(clan.pendingUsers.Count > 0 ? 1 : 0);
                addBlock(clan.win);  // Clan Win
                addBlock(clan.lose); // Clan Lose
                addBlock(clan.exp);  // Clan EXP
                addBlock(clanRank);  // Clan Ranking
                addBlock(0);
                addBlock(clan.Description.Replace((char)0x20, (char)0x1D));
                addBlock(clan.Announcment.Replace((char)0x20, (char)0x1D));
                addBlock(clan.iconid);
                addBlock(length);
                foreach (ClanWar cw in clan.ClanWars.Values.Where(u => u != null).Take(length > 3 ? 3 : length))
                {
                    addBlock(cw.versusClan);
                    addBlock(cw.score);
                    addBlock(cw.won ? 1 : 0);
                }
            }
Example #11
0
        public static string SetFakeNick(string str, Account player, Room room)
        {
            string name = str.Substring(11);

            if (name.Length > ConfigGS.maxNickSize || name.Length < ConfigGS.minNickSize)
            {
                return(Translation.GetLabel("FakeNickWrongLength"));
            }
            if (PlayerManager.isPlayerNameExist(name))
            {
                return(Translation.GetLabel("FakeNickAlreadyExist"));
            }
            if (!ComDiv.updateDB("accounts", "player_name", (object)name, "player_id", (object)player.player_id))
            {
                return(Translation.GetLabel("FakeNickFail"));
            }
            player.player_name = name;
            player.SendPacket((SendPacket) new AUTH_CHANGE_NICKNAME_PAK(name));
            if (room != null)
            {
                using (ROOM_GET_NICKNAME_PAK roomGetNicknamePak = new ROOM_GET_NICKNAME_PAK(player._slotId, player.player_name, player.name_color))
                    room.SendPacketToPlayers((SendPacket)roomGetNicknamePak);
            }
            if (player.clanId > 0)
            {
                using (CLAN_MEMBER_INFO_UPDATE_PAK memberInfoUpdatePak = new CLAN_MEMBER_INFO_UPDATE_PAK(player))
                    ClanManager.SendPacket((SendPacket)memberInfoUpdatePak, player.clanId, -1L, true, true);
            }
            AllUtils.syncPlayerToFriends(player, true);
            return(Translation.GetLabel("FakeNickSuccess", (object)name));
        }
Example #12
0
        protected internal override void write()
        {
            this.writeH((short)1349);
            Account player = AccountManager.getInstance().get(this._lc.getLogin());

            this.players_in_clan = ClanManager.getInstance().getClanPlayers(player.getClanId());
            this.writeC(Convert.ToByte(this.players_in_clan.Count - 1));

            if (player.getClanId() == 0)
            {
                this.writeC((byte)33); //QUANTIDADE DE CARACTERES DO NOME DO JOGADOR
                this.writeS("", 33);
                this.writeB(new byte[17]);
            }
            else
            {
                foreach (Account players_in_clan2 in players_in_clan)
                {
                    if (players_in_clan2.getPlayerName() == player.getPlayerName())
                    {
                    }
                    else
                    {
                        this.writeC((byte)33);
                        this.writeS(players_in_clan2.getPlayerName(), 33);
                        this.writeB(new byte[16]);
                        this.writeC(Convert.ToByte(players_in_clan2.getRank()));
                    }
                }
            }
        }
Example #13
0
 public override void RunImplement()
 {
     try
     {
         Account  player = client.SessionPlayer;
         DateTime now    = DateTime.Now;
         if (player == null || player.clanId <= 0 || type != ChattingTypeEnum.Clan_Member_Page || text.Length > 60 || player.nickname.Length < Settings.NickMinLength || player.nickname.Length > Settings.NickMaxLength || (now - player.lastChatting).TotalSeconds < 1)
         {
             return;
         }
         if (StringFilter.CheckFilterChat(text))
         {
             client.SendPacket(new CLAN_CHAT_1390_PAK("Server", true, "Não é possivel digitar palavras inapropriadas."));
             return;
         }
         Clan clan = ClanManager.GetClan(player.clanId);
         if (clan.id == 0)
         {
             return;
         }
         List <Account> players = player.GetClanPlayers(-1);
         using (CLAN_CHAT_1390_PAK packet = new CLAN_CHAT_1390_PAK(player.nickname, player.UseChatGM(), text))
         {
             player.SendPacketForPlayers(packet, players);
         }
         player.lastChatting = now;
         players             = null;
     }
     catch (Exception ex)
     {
         PacketLog(ex);
     }
 }
Example #14
0
 public override void run()
 {
     try
     {
         Account player = this._client._player;
         if (player == null)
         {
             return;
         }
         Room room = player._room;
         if (room != null)
         {
             room.changeSlotState(player._slotId, SLOT_STATE.CLAN, false);
             room.StopCountDown(player._slotId);
             room.updateSlotsInfo();
         }
         Clan clan = ClanManager.getClan(player.clanId);
         if (player.clanId == 0 && player.player_name.Length > 0)
         {
             this.id = PlayerManager.getRequestClanId(player.player_id);
         }
         this._client.SendPacket((SendPacket) new CLAN_CLIENT_ENTER_PAK(this.id > 0 ? this.id : clan._id, player.clanAccess));
         if (clan._id <= 0 || this.id != 0)
         {
             return;
         }
         this._client.SendPacket((SendPacket) new CLAN_DETAIL_INFO_PAK(0, clan));
     }
     catch (Exception ex)
     {
         Logger.info("CLAN_CLIENT_ENTER_REC: " + ex.ToString());
     }
 }
Example #15
0
 public override void run()
 {
     try
     {
         Account p = _client._player;
         if (p == null)
         {
             return;
         }
         Clan c = ClanManager.getClan(clanId);
         if (c._id == 0)
         {
             erro = 0x80000000;
         }
         else if (c.limite_rank > p._rank)
         {
             erro = 2147487867;
         }
         _client.SendPacket(new CLAN_CHECK_CREATE_INVITE_PAK(erro));
     }
     catch (Exception ex)
     {
         SaveLog.fatal(ex.ToString());
         Printf.b_danger("[CLAN_CHECK_CREATE_INVITE_REC.run] Erro fatal!");
     }
 }
Example #16
0
 public override void RunImplement()
 {
     try
     {
         Account player = client.SessionPlayer;
         if (player == null)
         {
             return;
         }
         Clan clan = ClanManager.GetClan(clanId);
         if (clan.id == 0)
         {
             client.SendCompletePacket(PackageDataManager.CLAN_CHECK_CREATE_INVITE_0x80000000_PAK);
         }
         else if (player.rankId < clan.limitRankId)
         {
             client.SendCompletePacket(PackageDataManager.CLAN_CHECK_CREATE_INVITE_2147487867_PAK);
         }
         else if (player.age < clan.limitAgeBigger || player.age > clan.limitAgeSmaller)
         {
             client.SendCompletePacket(PackageDataManager.CLAN_CHECK_CREATE_INVITE_0x8000107A_ACK);
         }
         else
         {
             client.SendCompletePacket(PackageDataManager.CLAN_CHECK_CREATE_INVITE_SUCCESS_PAK);
         }
     }
     catch (Exception ex)
     {
         PacketLog(ex);
     }
 }
Example #17
0
 public override void run()
 {
     try
     {
         Account p = _client._player;
         if (p != null)
         {
             Clan c = ClanManager.getClan(p.clanId);
             if (c._id > 0 && c._info != clan_info && (c.owner_id == _client.player_id || p.clanAccess >= 1 && p.clanAccess <= 2))
             {
                 if (ComDiv.updateDB("clan_data", "clan_info", clan_info, "clan_id", c._id))
                 {
                     c._info = clan_info;
                 }
                 else
                 {
                     erro = 2147487860;
                 }
             }
             else
             {
                 erro = 2147487835;
             }
         }
         else
         {
             erro = 2147487835;
         }
     }
     catch
     {
         erro = 2147487860;
     }
     _client.SendPacket(new CLAN_REPLACE_INTRO_PAK(erro));
 }
        public static void Load(ReceiveGPacket p)
        {
            int    type   = p.readC();
            int    clanId = p.readD();
            long   ownerId;
            int    date;
            string name, info;
            Clan   clanCache = ClanManager.getClan(clanId);

            if (type == 0)
            {
                if (clanCache != null)
                {
                    return;
                }
                ownerId = p.readQ();
                date    = p.readD();
                name    = p.readS(p.readC());
                info    = p.readS(p.readC());
                Clan clan = new Clan {
                    _id = clanId, _name = name, owner_id = ownerId, _logo = 0, _info = info, creationDate = date
                };
                ClanManager.AddClan(clan);
            }
            else
            {
                if (clanCache != null)
                {
                    ClanManager.RemoveClan(clanCache);
                }
            }
        }
Example #19
0
 public override void RunImplement()
 {
     try
     {
         Account player = client.SessionPlayer;
         if (player == null)
         {
             return;
         }
         Clan clan = ClanManager.GetClan(player.clanId);
         if (player.clanId > 0 && clan.id > 0 && clan.informations != informations && informations.Length <= 241 && (clan.ownerId == player.playerId || player.clanAuthority >= ClanAuthorityEnum.Master && player.clanAuthority <= ClanAuthorityEnum.Auxiliar))
         {
             if (player.ExecuteQuery($"UPDATE clan_data SET clan_info='{informations}' WHERE clan_id='{clan.id}'"))
             {
                 clan.informations = informations;
                 client.SendCompletePacket(PackageDataManager.PROTOCOL_CLAN_REPLACE_INTRO_SUCCESS_ACK);
             }
             else
             {
                 client.SendCompletePacket(PackageDataManager.PROTOCOL_CLAN_REPLACE_INTRO_2147487860_ACK);
             }
         }
         else
         {
             client.SendCompletePacket(PackageDataManager.PROTOCOL_CLAN_REPLACE_INTRO_2147487835_ACK);
         }
     }
     catch (Exception ex)
     {
         PacketLog(ex);
     }
 }
Example #20
0
        protected internal override void write()
        {
            base.writeH((short)0xF15);
            if (room.getLeader() == null)
            {
                room.setNewLeader(0);
            }

            base.writeD(room.getLeader().getSlot());
            for (int i = 0; i < 16; i++)
            {
                Account playerBySlot = room.getPlayerBySlot(i);
                base.writeC((byte)room.getSlotState(i));
                base.writeC(Convert.ToByte(playerBySlot == null ? 0 : playerBySlot.getRank()));
                base.writeB(new byte[9]);
                base.writeC(Convert.ToByte(playerBySlot == null || ClanManager.getInstance().get(playerBySlot.getClanId()) == null ? 255 : ClanManager.getInstance().get(playerBySlot.getClanId()).getLogo1()));
                base.writeC(Convert.ToByte(playerBySlot == null || ClanManager.getInstance().get(playerBySlot.getClanId()) == null ? 255 : ClanManager.getInstance().get(playerBySlot.getClanId()).getLogo2()));
                base.writeC(Convert.ToByte(playerBySlot == null || ClanManager.getInstance().get(playerBySlot.getClanId()) == null ? 255 : ClanManager.getInstance().get(playerBySlot.getClanId()).getLogo3()));
                base.writeC(Convert.ToByte(playerBySlot == null || ClanManager.getInstance().get(playerBySlot.getClanId()) == null ? 255 : ClanManager.getInstance().get(playerBySlot.getClanId()).getLogo4()));
                base.writeC(Convert.ToByte(playerBySlot == null || ClanManager.getInstance().get(playerBySlot.getClanId()) == null ? 0 : ClanManager.getInstance().get(playerBySlot.getClanId()).getLogoColor()));
                base.writeB(new byte[6]);
                base.writeS(playerBySlot == null || ClanManager.getInstance().get(playerBySlot.getClanId()) == null ? "" : ClanManager.getInstance().get(playerBySlot.getClanId()).getClanName(), 17);
                base.writeH(0);
                base.writeC(0);
            }
        }
 public override void run()
 {
     try
     {
         Account player = _client._player;
         if (player != null)
         {
             Clan clan = ClanManager.getClan(player.clanId);
             if (clan._id > 0 && clan.owner_id == _client.player_id &&
                 ComDiv.deleteDB("clan_data", "clan_id", clan._id) &&
                 ComDiv.updateDB("contas", "player_id", player.player_id, new string[] { "clan_id", "clanaccess", "clan_game_pt", "clan_wins_pt" }, 0, 0, 0, 0) &&
                 ClanManager.RemoveClan(clan))
             {
                 player.clanId     = 0;
                 player.clanAccess = 0;
                 SEND_CLAN_INFOS.Load(clan, 1);
             }
             else
             {
                 erro = 2147487850;
             }
         }
         else
         {
             erro = 2147487850;
         }
         _client.SendPacket(new CLAN_CLOSE_PAK(erro));
     }
     catch (Exception ex)
     {
         SaveLog.fatal(ex.ToString());
         Printf.b_danger("[CLAN_CLOSE_REC.run] Erro fatal!");
     }
 }
        public override void read()
        {
            Account p = _client._player;

            if (p == null)
            {
                return;
            }
            Clan clan = ClanManager.getClan(p.clanId);

            if (clan._id > 0 && (p.clanAccess >= 1 && p.clanAccess <= 2 || clan.owner_id == p.player_id))
            {
                int count = readC();
                for (int i = 0; i < count; i++)
                {
                    long pId = readQ();
                    if (PlayerManager.DeleteInviteDb(clan._id, pId))
                    {
                        if (MessageManager.getMsgsCount(pId) < 100)
                        {
                            Message msg = CreateMessage(clan, pId, p.player_id);
                            if (msg != null)
                            {
                                Account pK = AccountManager.getAccount(pId, 0);
                                if (pK != null && pK._isOnline)
                                {
                                    pK.SendPacket(new BOX_MESSAGE_RECEIVE_PAK(msg), false);
                                }
                            }
                        }
                        result++;
                    }
                }
            }
        }
Example #23
0
 protected internal override void read()
 {
     clan = new Clan();
     this.readH();
     this.length_c_name = readC();
     this.length_c_info = readC();
     this.length_info   = readC();
     this.clan_name     = readS(length_c_name);
     this.clan_info     = readS(length_c_info);
     this.info          = readS(length_info);
     this.unk           = readD();
     clan.setClanId(this.getClient().getPlayerId());
     clan.setClanName(this.clan_name);
     clan.setClanRank(0);
     clan.setLogo1(0);
     clan.setLogo2(0);
     clan.setLogo3(0);
     clan.setLogo4(0);
     clan.setOwnerId(this.getClient().getPlayerId());
     clan.setLogoColor(0);
     CLogger.getInstance().info("Nome do clã: " + this.clan_name);
     CLogger.getInstance().info("Informação do clã: " + this.clan_info);
     ClanManager.getInstance().AddClan(clan);
     this.getClient().getPlayer().setClanId(this.getClient().getPlayerId());
     AccountManager.getInstance().UpdateClan(this.getClient().getPlayerId(), this.getClient().getPlayerId());
 }
Example #24
0
 public override void run()
 {
     try
     {
         Account player = this._client._player;
         if (player == null)
         {
             return;
         }
         Clan clan = ClanManager.getClan(player.clanId);
         if (clan._id > 0 && clan.owner_id == this._client.player_id && PlayerManager.updateClanInfo(clan._id, this.autoridade, this.limite_rank, this.limite_idade, this.limite_idade2))
         {
             clan.autoridade    = this.autoridade;
             clan.limite_rank   = this.limite_rank;
             clan.limite_idade  = this.limite_idade;
             clan.limite_idade2 = this.limite_idade2;
         }
         else
         {
             this.erro = 2147483648U;
         }
         this._client.SendPacket((SendPacket) new CLAN_SAVEINFO3_PAK(this.erro));
     }
     catch (Exception ex)
     {
         Logger.info(ex.ToString());
     }
 }
 public override void run()
 {
     try
     {
         Account p = _client._player;
         if (p == null)
         {
             return;
         }
         Room room = p._room;
         if (room != null)
         {
             room.changeSlotState(p._slotId, SLOT_STATE.CLAN, false);
             room.StopCountDown(p._slotId);
             room.updateSlotsInfo();
         }
         Clan clan = ClanManager.getClan(p.clanId);
         if (p.clanId == 0 && p.player_name.Length > 0)
         {
             id = PlayerManager.getRequestClanId(p.player_id);
         }
         _client.SendPacket(new CLAN_CLIENT_ENTER_PAK(id > 0 ? id : clan._id, p.clanAccess));
         if (clan._id > 0 && id == 0)
         {
             _client.SendPacket(new CLAN_DETAIL_INFO_PAK(0, clan));
         }
     }
     catch (Exception ex)
     {
         SaveLog.fatal(ex.ToString());
         Printf.b_danger("[CLAN_CLIENT_ENTER_REC.run] Erro fatal!");
     }
 }
Example #26
0
 public override void RunImplement()
 {
     try
     {
         Account player = client.SessionPlayer;
         if (player == null || authorityConfig > 15 || (limitRankId != 4 && limitRankId != 17 && limitRankId != 31 && limitRankId != 46) || (limitAgeBigger != 0 && limitAgeBigger != 15 && limitAgeBigger != 20 && limitAgeBigger != 30) || (limitAgeSmaller != 0 && limitAgeSmaller != 15 && limitAgeSmaller != 20 && limitAgeSmaller != 30))
         {
             return;
         }
         Clan clan = ClanManager.GetClan(player.clanId);
         if (clan.id > 0 && (clan.ownerId == player.playerId) && clan.UpdateClanInfo(authorityConfig, limitRankId, limitAgeBigger, limitAgeSmaller))
         {
             clan.authorityConfig = (ClanAuthorityConfigEnum)authorityConfig;
             clan.limitRankId     = limitRankId;
             clan.limitAgeBigger  = limitAgeBigger;
             clan.limitAgeSmaller = limitAgeSmaller;
             client.SendCompletePacket(PackageDataManager.PROTOCOL_CLAN_SAVEINFO3_SUCCESS_ACK);
         }
         else
         {
             client.SendCompletePacket(PackageDataManager.PROTOCOL_CLAN_SAVEINFO3_ERROR_ACK);
         }
     }
     catch (Exception ex)
     {
         PacketLog(ex);
     }
 }
 protected internal override void write()
 {
     ClanManager.getInstance().createClanInDb(this._clan_name, this.p.getPlayerId());
     base.writeH(1311);
     base.writeD(0);
     base.writeC(96);
     base.writeC(65);
     base.writeH(0);
     base.writeS(this._clan_name, 17);
     base.writeH(0);
     base.writeC(1);
     base.writeB(new byte[]
     {
         50,
         75,
         5,
         51
     });
     base.writeB(new byte[14]);
     base.writeC(2);
     base.writeC(23);
     base.writeC(6);
     base.writeB(new byte[5]);
     base.writeS(this.p.getPlayerName(), 33);
     base.writeC((byte)this.p.getRank());
     base.writeS(this._clan_info, 120);
     base.writeB(new byte[12]);
     base.writeD(4859);
     base.writeD(4860);
 }
Example #28
0
 public override void RunImplement()
 {
     try
     {
         Account player = client.SessionPlayer;
         if (player == null)
         {
             return;
         }
         Clan clan = ClanManager.GetClan(player.clanId);
         if (clan.id > 0 && clan.ownerId == player.playerId && player.clanAuthority == ClanAuthorityEnum.Master && player.ExecuteQuery($"DELETE FROM clan_data WHERE clan_id='{clan.id}'") && player.ExecuteQuery($"UPDATE accounts SET clan_id='0', clan_authority='0', clan_fights='0', clan_wins='0', clan_date='0' WHERE id='{player.playerId}'") && ClanManager.RemoveClan(clan))
         {
             player.clanId        = 0;
             player.clanAuthority = ClanAuthorityEnum.None;
             ClanManager.RemoveClan(clan);
             client.SendCompletePacket(PackageDataManager.CLAN_CLOSE_SUCCESS_PAK);
         }
         else
         {
             client.SendCompletePacket(PackageDataManager.CLAN_CLOSE_2147487850_PAK);
         }
     }
     catch (Exception ex)
     {
         PacketLog(ex);
     }
 }
Example #29
0
        /// <summary>
        /// Checks whether local user is a member of a clan, then disables or enables <see cref="_showClan"/>
        /// button accordingly. Shows this menu.
        /// </summary>
        public async override void Show()
        {
            Client   client  = NakamaSessionManager.Instance.Client;
            ISession session = NakamaSessionManager.Instance.Session;

            // If local user is not a member of a clan, disable clan leaderboards
            IUserGroupListUserGroup clan = await ClanManager.GetUserClanAsync(client, session);

            if (clan != null)
            {
                _showClan.gameObject.SetActive(true);
            }
            else
            {
                // User is not a member of any clan
                // Hiding clan score tab

                if (_showClan.interactable == true)
                {
                    // Last showed tab is clan tab
                    // Switching to other tab
                    ShowGlobalLeaderboards();
                }
                _showClan.gameObject.SetActive(false);
            }


            base.Show();
        }
Example #30
0
        protected internal override void write()
        {
            ClanManager.getInstance().createClanInDb(this._clan_name, p.getPlayerId());
            CLogger.getInstance().info("Recebendo: S_CREATE_CLAN");
            this.writeH(1311);
            this.writeD(0);
            this.writeC(0x60);
            this.writeC(0x41);
            this.writeH(0);
            this.writeS(_clan_name, 16);
            this.writeH(0);
            this.writeC(1);
            this.writeB(new byte[] { 0x32, 0x4b, 0x05, 0x33, 0x01 });
            this.writeB(new byte[14]);
            this.writeC(2);
            this.writeC(0x17);
            this.writeC(6);
            this.writeB(new byte[5]);

            this.writeS(this.p.getPlayerName(), 33); //лидер клана
            this.writeC(0x0D);

            this.writeS(this._clan_info, 120);
            this.writeB(new byte[12]);
        }