/// <summary>
        ///
        /// </summary>
        /// <param name="player">Conta principal</param>
        /// <param name="friend">Amigo que será adicionado/atualizado..</param>
        /// <param name="type">0=Adicionar|1=Atualizar|2=Deletar</param>
        ///
        // send to Game or sync
        public static void Load(Account player, Friend friend, int type)
        {
            if (player == null)
            {
                return;
            }

            GameServerModel gs = Game_SyncNet.GetServer(player._status);

            if (gs == null)
            {
                return;
            }

            using (SendGPacket pk = new SendGPacket())
            {
                pk.writeH(17);
                pk.writeQ(player.player_id);
                pk.writeC((byte)type);
                pk.writeQ(friend.player_id);

                if (type != 2)
                {
                    pk.writeC((byte)friend.state);
                }
                Game_SyncNet.SendPacket(pk.mstream.ToArray(), gs._syncConn);
            }
        }
Example #2
0
        public static void LoadItem(Account player, ItemsModel item)
        {
            if (player == null || player._status.serverId == 0)
            {
                return;
            }
            GameServerModel gs = Game_SyncNet.GetServer(player._status);

            if (gs == null)
            {
                return;
            }

            using (SendGPacket pk = new SendGPacket())
            {
                pk.writeH(18);
                pk.writeQ(player.player_id);
                pk.writeQ(item._objId);
                pk.writeD(item._id);
                pk.writeC((byte)item._equip);
                pk.writeC((byte)item._category);
                pk.writeD(item._count);
                Game_SyncNet.SendPacket(pk.mstream.ToArray(), gs._syncConn);
            }
        }
Example #3
0
        /*
         * public static void Update(Clan clan, int type)
         * {
         *  foreach (GameServerModel gs in ServersXML._servers)
         *  {
         *      if (gs._serverId == 0 || gs._serverId == ConfigGS.serverId)
         *          continue;
         *
         *      using (SendGPacket pk = new SendGPacket())
         *      {
         *          pk.writeH(22);
         *          pk.writeC((byte)type);
         *          if (type == 0)
         *              pk.writeQ(clan.owner_id);
         *          else if (type == 1)
         *          {
         *              pk.writeC((byte)(clan._name.Length + 1));
         *              pk.writeS(clan._name, clan._name.Length + 1);
         *          }
         *          else if (type == 2)
         *              pk.writeC((byte)clan._name_color);
         *          Game_SyncNet.SendPacket(pk.mstream.ToArray(), gs._syncConn);
         *      }
         *  }
         * }
         */
        // send to game
        public static void Load(Clan clan, int type)
        {
            foreach (GameServerModel gs in ServersXML._servers)
            {
                if (gs._serverId == 0 || gs._serverId == ConfigGS.serverId)
                {
                    continue;
                }

                using (SendGPacket pk = new SendGPacket())
                {
                    pk.writeH(21);
                    pk.writeC((byte)type);
                    pk.writeD(clan._id);
                    if (type == 0)
                    {
                        pk.writeQ(clan.owner_id);
                        pk.writeD(clan.creationDate);
                        pk.writeC((byte)(clan._name.Length + 1));
                        pk.writeS(clan._name, clan._name.Length + 1);
                        pk.writeC((byte)(clan._info.Length + 1));
                        pk.writeS(clan._info, clan._info.Length + 1);
                    }
                    Game_SyncNet.SendPacket(pk.mstream.ToArray(), gs._syncConn);
                }
            }
        }
Example #4
0
        public static void Load(Account player, Friend friend, int type)
        {
            if (player == null)
            {
                return;
            }
            GameServerModel server = Game_SyncNet.GetServer(player._status);

            if (server == null)
            {
                return;
            }
            using (SendGPacket sendGpacket = new SendGPacket())
            {
                sendGpacket.writeH((short)17);
                sendGpacket.writeQ(player.player_id);
                sendGpacket.writeC((byte)type);
                sendGpacket.writeQ(friend.player_id);
                if (type != 2)
                {
                    sendGpacket.writeC((byte)friend.state);
                    sendGpacket.writeC(friend.removed);
                }
                Game_SyncNet.SendPacket(sendGpacket.mstream.ToArray(), server.Connection);
            }
        }
Example #5
0
 public static void Load(Clan clan, int type)
 {
     foreach (GameServerModel server in ServersXML._servers)
     {
         if (server._id != 0 && server._id != ConfigGS.serverId)
         {
             using (SendGPacket sendGpacket = new SendGPacket())
             {
                 sendGpacket.writeH((short)21);
                 sendGpacket.writeC((byte)type);
                 sendGpacket.writeD(clan._id);
                 if (type == 0)
                 {
                     sendGpacket.writeQ(clan.owner_id);
                     sendGpacket.writeD(clan.creationDate);
                     sendGpacket.writeC((byte)(clan._name.Length + 1));
                     sendGpacket.writeS(clan._name, clan._name.Length + 1);
                     sendGpacket.writeC((byte)(clan._info.Length + 1));
                     sendGpacket.writeS(clan._info, clan._info.Length + 1);
                 }
                 Game_SyncNet.SendPacket(sendGpacket.mstream.ToArray(), server.Connection);
             }
         }
     }
 }
Example #6
0
        public static void Update(Clan clan, int type)
        {
            foreach (GameServerModel server in ServersXML._servers)
            {
                if (server._id != 0 && server._id != ConfigGS.serverId)
                {
                    using (SendGPacket sendGpacket = new SendGPacket())
                    {
                        sendGpacket.writeH((short)22);
                        sendGpacket.writeC((byte)type);
                        switch (type)
                        {
                        case 0:
                            sendGpacket.writeQ(clan.owner_id);
                            break;

                        case 1:
                            sendGpacket.writeC((byte)(clan._name.Length + 1));
                            sendGpacket.writeS(clan._name, clan._name.Length + 1);
                            break;

                        case 2:
                            sendGpacket.writeC((byte)clan._name_color);
                            break;
                        }
                        Game_SyncNet.SendPacket(sendGpacket.mstream.ToArray(), server.Connection);
                    }
                }
            }
        }
Example #7
0
        public static void SendUDPPlayerLeave(Room room, int slotId)
        {
            if (room == null)
            {
                return;
            }
            int count = room.getPlayingPlayers(2, SLOT_STATE.BATTLE, 0, slotId);

            using (SendGPacket pk = new SendGPacket())
            {
                pk.writeH(2);
                pk.writeD(room.UniqueRoomId);
                pk.writeD((room.mapId * 16) + room.room_type);
                pk.writeC((byte)slotId);
                pk.writeC((byte)count);
                Game_SyncNet.SendPacket(pk.mstream.ToArray(), room.UDPServer._battleSyncConn);
            }
        }
Example #8
0
        public static void SendUDPPlayerLeave(Room room, int slotId)
        {
            if (room == null)
            {
                return;
            }
            int playingPlayers = room.getPlayingPlayers(2, SLOT_STATE.BATTLE, 0, slotId);

            using (SendGPacket sendGpacket = new SendGPacket())
            {
                sendGpacket.writeH((short)2);
                sendGpacket.writeD(room.UniqueRoomId);
                sendGpacket.writeD(room.mapId * 16 + (int)room.room_type);
                sendGpacket.writeC((byte)slotId);
                sendGpacket.writeC((byte)playingPlayers);
                Game_SyncNet.SendPacket(sendGpacket.mstream.ToArray(), room.UDPServer.Connection);
            }
        }
Example #9
0
        public static void Load(Account pl, Account member, int type)
        {
            if (pl == null)
            {
                return;
            }
            GameServerModel server = Game_SyncNet.GetServer(pl._status);

            if (server == null)
            {
                return;
            }
            using (SendGPacket sendGpacket = new SendGPacket())
            {
                sendGpacket.writeH((short)16);
                sendGpacket.writeQ(pl.player_id);
                sendGpacket.writeC((byte)type);
                switch (type)
                {
                case 1:
                    sendGpacket.writeQ(member.player_id);
                    sendGpacket.writeC((byte)(member.player_name.Length + 1));
                    sendGpacket.writeS(member.player_name, member.player_name.Length + 1);
                    sendGpacket.writeB(member._status.buffer);
                    sendGpacket.writeC((byte)member._rank);
                    break;

                case 2:
                    sendGpacket.writeQ(member.player_id);
                    break;

                case 3:
                    sendGpacket.writeD(pl.clanId);
                    sendGpacket.writeC((byte)pl.clanAccess);
                    break;
                }
                Game_SyncNet.SendPacket(sendGpacket.mstream.ToArray(), server.Connection);
            }
        }
Example #10
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="pl">Conta principal</param>
        /// <param name="member"></param>
        /// <param name="type">0=Zerar players e clanId|1=Adicionar|2=Remover|3=att clanid e aux</param>
        public static void Load(Account pl, Account member, int type)
        {
            if (pl == null)
            {
                return;
            }
            GameServerModel gs = Game_SyncNet.GetServer(pl._status);

            if (gs == null)
            {
                return;
            }

            using (SendGPacket pk = new SendGPacket())
            {
                pk.writeH(16);
                pk.writeQ(pl.player_id);
                pk.writeC((byte)type);
                if (type == 1) //adicionar
                {
                    pk.writeQ(member.player_id);
                    pk.writeC((byte)(member.player_name.Length + 1));
                    pk.writeS(member.player_name, member.player_name.Length + 1);
                    pk.writeB(member._status.buffer);
                    pk.writeC((byte)member._rank);
                }
                else if (type == 2) //remover
                {
                    pk.writeQ(member.player_id);
                }
                else if (type == 3) //atualizar id do clã e aux
                {
                    pk.writeD(pl.clanId);
                    pk.writeC((byte)pl.clanAccess);
                }
                Game_SyncNet.SendPacket(pk.mstream.ToArray(), gs._syncConn);
            }
        }
Example #11
0
        public static void LoadGoldCash(Account player)
        {
            if (player == null)
            {
                return;
            }
            GameServerModel server = Game_SyncNet.GetServer(player._status);

            if (server == null)
            {
                return;
            }
            using (SendGPacket sendGpacket = new SendGPacket())
            {
                sendGpacket.writeH((short)19);
                sendGpacket.writeQ(player.player_id);
                sendGpacket.writeC((byte)0);
                sendGpacket.writeC((byte)player._rank);
                sendGpacket.writeD(player._gp);
                sendGpacket.writeD(player._money);
                Game_SyncNet.SendPacket(sendGpacket.mstream.ToArray(), server.Connection);
            }
        }
Example #12
0
        public static void LoadItem(Account player, ItemsModel item)
        {
            if (player == null || player._status.serverId == (byte)0)
            {
                return;
            }
            GameServerModel server = Game_SyncNet.GetServer(player._status);

            if (server == null)
            {
                return;
            }
            using (SendGPacket sendGpacket = new SendGPacket())
            {
                sendGpacket.writeH((short)18);
                sendGpacket.writeQ(player.player_id);
                sendGpacket.writeQ(item._objId);
                sendGpacket.writeD(item._id);
                sendGpacket.writeC((byte)item._equip);
                sendGpacket.writeC((byte)item._category);
                sendGpacket.writeD(item._count);
                Game_SyncNet.SendPacket(sendGpacket.mstream.ToArray(), server.Connection);
            }
        }
Example #13
0
        /// <summary>
        /// Atualiza 'gp', 'money', 'rank'.
        /// </summary>
        /// <param name="player"></param>
        public static void LoadGoldCash(Account player)
        {
            if (player == null)
            {
                return;
            }
            GameServerModel gs = Game_SyncNet.GetServer(player._status);

            if (gs == null)
            {
                return;
            }

            using (SendGPacket pk = new SendGPacket())
            {
                pk.writeH(19);
                pk.writeQ(player.player_id);
                pk.writeC(0);
                pk.writeC((byte)player._rank);
                pk.writeD(player._gp);
                pk.writeD(player._money);
                Game_SyncNet.SendPacket(pk.mstream.ToArray(), gs._syncConn);
            }
        }