Example #1
0
        public override void run()
        {
            try
            {
                if (_client == null)
                {
                    return;
                }
                Account player = _client._player;
                if (player == null)
                {
                    return;
                }
                player.LastLobbyEnter = DateTime.Now;
                if (player.channelId >= 0)
                {
                    Channel ch = player.getChannel();
                    if (ch != null)
                    {
                        ch.AddPlayer(player.Session);
                    }
                }
                Room room = player._room;
                if (room != null)
                {
                    if (player._slotId >= 0 && (int)room._state >= 2 && (int)room._slots[player._slotId].state >= 9)
                    {
                        goto JumpToPacket;
                    }
                    else
                    {
                        room.RemovePlayer(player, false);
                    }
                }
                AllUtils.syncPlayerToFriends(player, false);
                AllUtils.syncPlayerToClanMembers(player);
                AllUtils.GetXmasReward(player);
JumpToPacket:
                _client.SendPacket(new LOBBY_ENTER_PAK());
            }
            catch (Exception ex)
            {
                SaveLog.fatal(ex.ToString());
                Printf.b_danger("[LOBBY_ENTER_REC.run] Erro fatal!");
            }
        }
Example #2
0
        public override void run()
        {
            try
            {
                if (this._client == null)
                {
                    return;
                }
                Account player = this._client._player;
                if (player == null)
                {
                    return;
                }
                player.LastLobbyEnter = DateTime.Now;
                if (player.channelId >= 0)
                {
                    player.getChannel().AddPlayer(player.Session);
                }
                Room room = player._room;
                if (room != null)
                {
                    if (player._slotId < 0 || room._state < RoomState.Loading || room._slots[player._slotId].state < SLOT_STATE.LOAD)
                    {
                        room.RemovePlayer(player, false, 0);
                    }
                    else
                    {
                        goto label_9;
                    }
                }
                AllUtils.syncPlayerToFriends(player, false);
                AllUtils.syncPlayerToClanMembers(player);
                AllUtils.GetXmasReward(player);
label_9:
                this._client.SendPacket((SendPacket) new LOBBY_ENTER_PAK());
            }
            catch (Exception ex)
            {
                Logger.warning("[LOBBY_ENTER_REC] " + ex.ToString());
            }
        }