public override void run() { Account player = _client._player; Room room = player == null ? null : player._room; try { if (room == null || room._leader == slotId || room._slots[slotId]._playerId == 0) { _client.SendPacket(new ROOM_CHANGE_HOST_PAK(0x80000000)); } else if (room._state == RoomState.Ready && room._leader == player._slotId) { room.setNewLeader(slotId, 0, room._leader, false); using (ROOM_CHANGE_HOST_PAK packet = new ROOM_CHANGE_HOST_PAK(slotId)) room.SendPacketToPlayers(packet); room.updateSlotsInfo(); } } catch (Exception ex) { SaveLog.fatal(ex.ToString()); Printf.b_danger("[ROOM_CHANGE_HOST_REC.run] Erro fatal!"); } }
public override void run() { Account player = this._client._player; Room room = player == null ? (Room)null : player._room; try { if (room == null || room._leader == this.slotId || room._slots[this.slotId]._playerId == 0L) { this._client.SendPacket((SendPacket) new ROOM_CHANGE_HOST_PAK(2147483648U)); } else { if (room._state != RoomState.Ready || room._leader != player._slotId) { return; } room.setNewLeader(this.slotId, 0, room._leader, false); using (ROOM_CHANGE_HOST_PAK roomChangeHostPak = new ROOM_CHANGE_HOST_PAK(this.slotId)) room.SendPacketToPlayers((SendPacket)roomChangeHostPak); room.updateSlotsInfo(); } } catch (Exception ex) { Logger.info("ROOM_CHANGE_HOST_REC: " + ex.ToString()); } }
private void ChangeLeader(Room r, List <Account> players, int slotId) { r.setNewLeader(slotId, 0, -1, false); using (ROOM_CHANGE_HOST_PAK roomChangeHostPak = new ROOM_CHANGE_HOST_PAK(slotId)) this.SendPacketToRoom((SendPacket)roomChangeHostPak, players); r.updateSlotsInfo(); r.requestHost.Clear(); }