public static void Handle_ChangeMap(ClientConnection Client, PacketReader reader, byte last) { Account User = Client.CurrentAccount; NormalRoom room = Rooms.GetRoom(User.CurrentRoomId); bool isRoomMaster = User.RoomPos == room.RoomMasterIndex; if (isRoomMaster) { int mapid = reader.ReadLEInt32(); if (!MapHolder.MapInfos.TryGetValue(mapid, out MapInfo mapinfo)) { Console.WriteLine("Unknown mapid: {0}", mapid); return; } //room.MapNum = mapid; room.setMapNum(mapid); room.RuleType = mapinfo.RuleType; foreach (var RoomPlayer in room.PlayerList()) { RoomPlayer.Connection.SendAsync(new GameRoom_Hex("FF6405F70300000000000000000000", last)); RoomPlayer.Connection.SendAsync(new GameRoom_ChangeMap_FF6605(RoomPlayer, mapid, last)); RoomPlayer.Connection.SendAsync(new GameRoom_ChangeMap_FFEA02(RoomPlayer, mapid, last)); } } }