public void HandleCommand(BaseGame game, Player player, GSPacketIn packet) { if(game is PVEGame) { PVEGame pve = game as PVEGame; bool tryAgain = packet.ReadBoolean(); bool isHost = packet.ReadBoolean(); if (isHost == true) { if (tryAgain == true) { if (player.PlayerDetail.RemoveMoney(100) > 0) { //退回关卡结算 pve.WantTryAgain = 1; game.SendToAll(packet); player.PlayerDetail.LogAddMoney(AddMoneyType.Game, AddMoneyType.Game_TryAgain, player.PlayerDetail.PlayerCharacter.ID, 100, player.PlayerDetail.PlayerCharacter.Money); } else { player.PlayerDetail.SendInsufficientMoney((int)eBattleRemoveMoneyType.TryAgain); } } else { //退回房间 pve.WantTryAgain = 0; game.SendToAll(packet); } pve.CheckState(0); } } }
public int HandlePacket(GameClient client, GSPacketIn packet) { if (client.Player.PlayerCharacter.ConsortiaID == 0) return 0; int id = packet.ReadInt(); bool upGrade = packet.ReadBoolean(); bool result = false; string msg = "ConsortiaUserGradeUpdateHandler.Failed"; using (ConsortiaBussiness db = new ConsortiaBussiness()) { string tempUserName = ""; ConsortiaDutyInfo info = new ConsortiaDutyInfo(); if (db.UpdateConsortiaUserGrade(id, client.Player.PlayerCharacter.ConsortiaID, client.Player.PlayerCharacter.ID, upGrade, ref msg, ref info, ref tempUserName)) { msg = "ConsortiaUserGradeUpdateHandler.Success"; result = true; GameServer.Instance.LoginServer.SendConsortiaDuty(info, upGrade ? 6 : 7, client.Player.PlayerCharacter.ConsortiaID,id, tempUserName,client.Player.PlayerCharacter.ID,client.Player.PlayerCharacter.NickName); } } packet.WriteBoolean(result); packet.WriteString(LanguageMgr.GetTranslation(msg)); client.Out.SendTCP(packet); return 0; }
//修改: Xiaov //时间: 2009-11-7 //描述: 获取用户装备<已测试> public int HandlePacket(GameClient client, GSPacketIn packet) { bool type = packet.ReadBoolean();//_loc_3.writeBoolean(true); int id = packet.ReadInt(); string nickname; if (!type) nickname = packet.ReadString(); GamePlayer player = Managers.WorldMgr.GetPlayerById(id); PlayerInfo info; List<ItemInfo> items; if (player != null) { info = player.PlayerCharacter; items = player.MainBag.GetItems(0, 31); } else { using (PlayerBussiness pb = new PlayerBussiness()) { info = pb.GetUserSingleByUserID(id); items = pb.GetUserEuqip(id); } } if (info != null && items != null) client.Out.SendUserEquip(info, items); return 0; }
public int HandlePacket(GameClient client, GSPacketIn packet) { if (client.Player.PlayerCharacter.ConsortiaID == 0) return 0; int banUserID = packet.ReadInt(); bool isBanChat = packet.ReadBoolean(); int userID = 0; string userName = ""; bool result = false; string msg = "ConsortiaIsBanChatHandler.Failed"; using (ConsortiaBussiness db = new ConsortiaBussiness()) { if (db.UpdateConsortiaIsBanChat(banUserID, client.Player.PlayerCharacter.ConsortiaID, client.Player.PlayerCharacter.ID, isBanChat, ref userID, ref userName, ref msg)) { msg = "ConsortiaIsBanChatHandler.Success"; result = true; GameServer.Instance.LoginServer.SendConsortiaBanChat(userID, userName, client.Player.PlayerCharacter.ID, client.Player.PlayerCharacter.NickName,isBanChat); } } packet.WriteBoolean(result); packet.WriteString(LanguageMgr.GetTranslation(msg)); client.Out.SendTCP(packet); return 0; }
public int HandlePacket(GameClient client, GSPacketIn packet) { if (client.Player.PlayerCharacter.ConsortiaID == 0) return 0; int id = packet.ReadInt(); bool isAlly = packet.ReadBoolean(); bool result = false; string msg = "ConsortiaApplyAllyAddHandler.Add_Failed"; using (ConsortiaBussiness db = new ConsortiaBussiness()) { ConsortiaApplyAllyInfo info = new ConsortiaApplyAllyInfo(); info.Consortia1ID = client.Player.PlayerCharacter.ConsortiaID; info.Consortia2ID = id; info.Date = DateTime.Now; info.State = 0;// isAlly ? 1 : 0; info.Remark = ""; info.IsExist = true; if (db.AddConsortiaApplyAlly(info, client.Player.PlayerCharacter.ID, ref msg)) { msg = "ConsortiaApplyAllyAddHandler.Add_Success"; result = true; } } packet.WriteBoolean(result); packet.WriteString(LanguageMgr.GetTranslation(msg)); client.Out.SendTCP(packet); return 0; }
public int HandlePacket(GameClient client, GSPacketIn packet) { if (client.Player.CurrentMarryRoom != null && client.Player.PlayerCharacter.ID == client.Player.CurrentMarryRoom.Info.PlayerID) { string roomName = packet.ReadString(); bool isPwdChanged = packet.ReadBoolean(); string pwd = packet.ReadString(); string introduction = packet.ReadString(); MarryRoom room = client.Player.CurrentMarryRoom; room.Info.RoomIntroduction = introduction; room.Info.Name = roomName; if (isPwdChanged) { room.Info.Pwd = pwd; } using (PlayerBussiness db = new PlayerBussiness()) { db.UpdateMarryRoomInfo(room.Info); } room.SendMarryRoomInfoUpdateToScenePlayers(room); client.Player.Out.SendMessage(eMessageType.Normal, LanguageMgr.GetTranslation("MarryRoomInfoUpdateHandler.Successed")); return 0; } return 1; }
public int HandlePacket(GameClient client, GSPacketIn packet) { if (client.Player.CurrentRoom != null && client.Player == client.Player.CurrentRoom.Host) { RoomMgr.UpdateRoomPos(client.Player.CurrentRoom, packet.ReadByte(), packet.ReadBoolean()); } return 0; }
public void HandleASSState(GSPacketIn packet) { bool state = packet.ReadBoolean(); AntiAddictionMgr.SetASSState(state); //GamePlayer[] players = WorldMgr.GetAllPlayers(); //foreach (GamePlayer p in players) //{ //p.Out.SendAASControl(state, p.IsAASInfo, p.IsMinor); //} }
public void HandleCommand(BaseGame game, Player player, GSPacketIn packet) { if (player.IsAttacking) { game.SendToAll(packet); bool tag = packet.ReadBoolean(); byte speedTime = packet.ReadByte(); player.PrepareShoot(speedTime); } }
public int HandlePacket(GameClient client, GSPacketIn packet) { bool result = packet.ReadBoolean(); int UserID = packet.ReadInt(); int AnswerId = packet.ReadInt(); //答复对话框ID //先判断自已有没有结婚 if (result && client.Player.PlayerCharacter.IsMarried) { client.Player.Out.SendMessage(eMessageType.ChatERROR, LanguageMgr.GetTranslation("MarryApplyReplyHandler.Msg2")); } using (PlayerBussiness db = new PlayerBussiness()) { PlayerInfo tempSpouse = db.GetUserSingleByUserID(UserID); //发送好人卡 if (!result) { SendGoodManCard(tempSpouse.NickName, tempSpouse.ID, client.Player.PlayerCharacter.NickName, client.Player.PlayerCharacter.ID, db); GameServer.Instance.LoginServer.SendUpdatePlayerMarriedStates(tempSpouse.ID); } //判断对方有没有结婚 if (tempSpouse == null || tempSpouse.Sex == client.Player.PlayerCharacter.Sex) { return 1; } if (tempSpouse.IsMarried) { client.Player.Out.SendMessage(eMessageType.ChatNormal, LanguageMgr.GetTranslation("MarryApplyReplyHandler.Msg3")); } MarryApplyInfo info = new MarryApplyInfo(); info.UserID = UserID; info.ApplyUserID = client.Player.PlayerCharacter.ID; info.ApplyUserName = client.Player.PlayerCharacter.NickName; info.ApplyType = 2; info.LoveProclamation = ""; info.ApplyResult = result; int id = 0; if (db.SavePlayerMarryNotice(info, AnswerId, ref id)) { if (result) { client.Player.Out.SendMarryApplyReply(client.Player, tempSpouse.ID, tempSpouse.NickName, result, false, id); client.Player.LoadMarryProp(); SendSYSMessages(client.Player, tempSpouse); } GameServer.Instance.LoginServer.SendUpdatePlayerMarriedStates(tempSpouse.ID); return 0; } } return 1; }
//修改: Xiaov //时间: 2009-11-7 //描述: 用户与用户之间私聊<已测试> public int HandlePacket(GameClient client, GSPacketIn packet) { int receiverID = packet.ReadInt(); //int senderID = packet.ReadInt(); string receiver = packet.ReadString(); string sender = packet.ReadString(); string msg = packet.ReadString(); bool isAutoReply = packet.ReadBoolean(); if (receiverID == 0) { using (PlayerBussiness db = new PlayerBussiness()) { PlayerInfo info = db.GetUserSingleByNickName(receiver); if (info != null) receiverID = info.ID; } } if (receiverID != 0) { GSPacketIn pkg = packet.Clone(); pkg.ClearContext(); pkg.WriteInt(receiverID); pkg.ClientID = (client.Player.PlayerCharacter.ID); //pkg.WriteInt(senderID); pkg.WriteString(receiver); pkg.WriteString(sender); pkg.WriteString(msg); pkg.WriteBoolean(false); GamePlayer player = Managers.WorldMgr.GetPlayerById(receiverID); if (player != null) { if (player.IsBlackFriend(client.Player.PlayerCharacter.ID)) return 1; player.Out.SendTCP(pkg); } else { GameServer.Instance.LoginServer.SendPacket(pkg); } client.Out.SendTCP(pkg); } else { client.Out.SendMessage(eMessageType.ERROR, LanguageMgr.GetTranslation("UserPrivateChatHandler.NoUser")); } return 1; }
public int HandlePacket(GameClient client, GSPacketIn packet) { //_loc_3.writeBoolean(param2); bool responseLuckyNum = packet.ReadBoolean(); //_loc_3.writeInt(param1); int LuckyNum = packet.ReadInt(); //GSPacketIn pkg = packet.Clone(); //pkg.WriteInt(2); //pkg.WriteString("False,False,True,True"); //client.SendTCP(pkg); return 1; }
public void HandleConfigState(GSPacketIn packet) { bool aSSState = packet.ReadBoolean(); bool dailyState = packet.ReadBoolean(); AwardMgr.DailyAwardState = dailyState; AntiAddictionMgr.SetASSState(aSSState); //GamePlayer[] players = WorldMgr.GetAllPlayers(); //foreach (GamePlayer p in players) //{ //p.Out.SendAASControl(aSSState, p.IsAASInfo, p.IsMinor); //} }
//修改: Xiaov //时间: 2009-11-7 //描述: 隐藏装备<已测试> public int HandlePacket(GameClient client,GSPacketIn packet) { bool hide = packet.ReadBoolean(); int categroyID = packet.ReadInt(); switch (categroyID) { case 13: categroyID = 3; break; } client.Player.HideEquip(categroyID, hide); return 0; }
public void HandleCommand(BaseGame game, Player player, GSPacketIn packet) { if (player.IsAttacking) { packet.Parameter1 = player.Id; game.SendToAll(packet); //同客户端同步LifeTime game.SendSyncLifeTime(); bool tag = packet.ReadBoolean(); //开炮所需时间 byte speedTime = packet.ReadByte(); player.PrepareShoot(speedTime); } }
public bool HandleCommand(TankGameLogicProcessor process, GamePlayer player, GSPacketIn packet) { if (player.CurrentGame.Data.CurrentIndex == player || player.CurrentGame.Data.Players[player].State == TankGameState.DEAD) { GSPacketIn pkg = packet.Clone(); pkg.ClientID = player.PlayerCharacter.ID; player.CurrentGame.SendToPlayerExceptSelf(pkg, player); byte type = packet.ReadByte(); int tx = packet.ReadInt(); int ty = packet.ReadInt(); byte dir = packet.ReadByte(); bool isLiving = packet.ReadBoolean(); Player p = player.CurrentGame.Data.Players[player]; switch (type) { case 0: case 1: //p.X = tx; //p.Y = ty; p.SetXY(tx, ty); if (player.CurrentGame != null) { p.StartMoving(); if (p.Y - ty > 1 || p.IsLiving != isLiving) { //GameServer.log.Error(string.Format("修正掉落: 动作类型 {0} 原始Y:{1} 最新Y:{2}", type, ty, p.Y)); //把服务器修正的掉落指令和客户掉落指令加以区分。 pkg = player.Out.SendPlayerMove(3, p.X, p.Y, 0, p.IsLiving); player.CurrentGame.SendToPlayerExceptSelf(pkg, player); } } break; case 2: if (player.CurrentGame.Data.Players[player].State == TankGameState.DEAD) { p.EndX = tx; p.EndY = ty; } break; } return true; } return false; }
public void HandleCommand(BaseGame game, Player player, GSPacketIn packet) { if (game.GameState == eGameState.SessionPrepared || game.GameState == eGameState.GameOver) { //if (player.Weapon == null) //{ // player.PlayerDetail.SendMessage(LanguageMgr.GetTranslation("Game.Server.SceneGames.NoEquip")); // return; //} bool isReady = packet.ReadBoolean(); if (player.Ready != isReady) { player.Ready = isReady; game.SendToAll(packet); } } }
public int HandlePacket(GameClient client, GSPacketIn packet) { if (client.Player.PlayerCharacter.MarryInfoID != 0) { return 1; } bool IsPublishEquip = packet.ReadBoolean(); string Introduction = packet.ReadString(); int UserID = client.Player.PlayerCharacter.ID; eMessageType eMsg = eMessageType.Normal; string msg = "MarryInfoAddHandler.Fail"; int needGold = 10000; if (needGold > client.Player.PlayerCharacter.Gold) { eMsg = eMessageType.ERROR; msg = "MarryInfoAddHandler.Msg1"; } else { client.Player.SaveIntoDatabase(); MarryInfo info = new MarryInfo(); info.UserID = UserID; info.IsPublishEquip = IsPublishEquip; info.Introduction = Introduction; info.RegistTime = DateTime.Now; using (PlayerBussiness db = new PlayerBussiness()) { if (db.AddMarryInfo(info)) { client.Player.RemoveGold(needGold); msg = "MarryInfoAddHandler.Msg2"; client.Player.PlayerCharacter.MarryInfoID = info.ID; client.Out.SendMarryInfoRefresh(info, info.ID, true); } } } client.Out.SendMessage(eMsg, LanguageMgr.GetTranslation(msg)); return 0; }
public bool HandleCommand(TankGameLogicProcessor process, GamePlayer player, GSPacketIn packet) { if (player.CurrentGame.Data.Players[player].State == TankGameState.DEAD) return false; //{ bool tag = packet.ReadBoolean(); if (player.CurrentGame.Data.CurrentFire == null && tag && player.CurrentGame.Data.CurrentIndex == player) { player.CurrentGame.Data.SpendTime(packet.ReadByte()); player.CurrentGame.Data.CurrentFire = player; } if (!tag && player.CurrentGame.Data.CurrentIndex == player) { process.SendPlayFinish(player.CurrentGame, player); } player.CurrentGame.ReturnPacket(player, packet); //} return false; }
public void HandleCommand(BaseGame game, Player player, GSPacketIn packet) { if (player.IsAttacking) { GSPacketIn pkg = packet.Clone(); pkg.ClientID = player.PlayerDetail.PlayerCharacter.ID; pkg.Parameter1 = player.Id; game.SendToAll(pkg, player.PlayerDetail); byte type = packet.ReadByte(); int tx = packet.ReadInt(); int ty = packet.ReadInt(); byte dir = packet.ReadByte(); bool isLiving = packet.ReadBoolean(); //Console.WriteLine("isLiving : {0}, tx : {1}, ty : {2}, type : {3}, playerId : {4}", isLiving, tx, ty, type, player.Id); switch (type) { case 0: case 1: //p.X = tx; //p.Y = ty; // if (player.PlayerDetail.PlayerCharacter.NickName == "jacken123") // Console.WriteLine(player.PlayerDetail.PlayerCharacter.NickName + "X坐标" + player.X.ToString() + "Y坐标" + player.Y.ToString()); player.SetXY(tx, ty); player.StartMoving(); // if (player.PlayerDetail.PlayerCharacter.NickName == "jacken123") // Console.WriteLine(string.Format("修正掉落: 动作类型 {0} 原始Y:{1} 最新Y:{2}", type, ty, player.Y)); if (player.Y - ty > 1 || player.IsLiving != isLiving) { //Console.WriteLine("player.IsLiving : {0}, playerId : {1}", player.IsLiving, player.Id); //把服务器修正的掉落指令和客户掉落指令加以区分。 Console.WriteLine("玩家移动掉落:"+player.IsLiving.ToString()); game.SendPlayerMove(player, 3, player.X, player.Y, 0, player.IsLiving, null); } break; case 2: break; } } }
public int HandlePacket(GameClient client, GSPacketIn packet) { bool result = packet.ReadBoolean(); if (client.Player.CurrentGame != null && client.Player.CurrentGame.GameState == eGameState.LOAD && client.Player.CurrentGame.GameMode == eGameMode.FLAG) { packet.ClientID = (client.Player.PlayerCharacter.ID); if (result) { if (!client.Player.CurrentGame.Data.FlagPlayer.Contains(client.Player)) client.Player.CurrentGame.Data.FlagPlayer.Add(client.Player); } else { if (client.Player.CurrentGame.Data.FlagPlayer.Contains(client.Player)) client.Player.CurrentGame.Data.FlagPlayer.Remove(client.Player); } client.Player.CurrentGame.SendToAll(packet); } return 0; }
public int HandlePacket(GameClient client, GSPacketIn packet) { //type可能的值为 -2, -1, 1, 3, 4 //当type = 1, 3, 4时,分别指快速加入组队战,Boss战,夺宝战 //当type = -1时,房间ID为所点的房间ID,无密码时也传空字符串 //当type = -2时,表示PVE游戏中的邀请 bool isInvite=packet.ReadBoolean(); int type = packet.ReadInt(); int isRoundID = packet.ReadInt(); int roomId = -1; string pwd = null; if (isRoundID==-1) { roomId = packet.ReadInt(); pwd = packet.ReadString(); } if (type == 1) type = 0; else if (type == 2) type = 4; //string pwd = null; //switch (type) //{ // case -1: // roomId = packet.ReadInt(); // pwd = packet.ReadString(); // break; // default: // break; //} //TrieuLSL //GSPacketIn pkg2 = new GSPacketIn((byte)ePackageType.SYS_NOTICE); //pkg2.WriteInt(1); //pkg2.WriteString("Bạn đang sử dụng gunny phiên bản do smallwind1912 phát triển mọi thắc mắc xin liên hệ [email protected] hoặc truy cập wohzoo.com "); //client.Out.SendTCP(pkg2); RoomMgr.EnterRoom(client.Player, roomId, pwd, type); return 0; }
public void HandleCommand(BaseGame game, Player player, GSPacketIn packet) { if (player.IsLiving || player.IsAttacking) { GSPacketIn pkg = packet.Clone(); pkg.ClientID = player.Id; game.SendToAll(pkg, player.PlayerDetail); byte type = packet.ReadByte(); int tx = packet.ReadInt(); int ty = packet.ReadInt(); byte dir = packet.ReadByte(); bool isLiving = packet.ReadBoolean(); switch (type) { case 0: case 1: //p.X = tx; //p.Y = ty; player.SetXY(tx, ty); player.StartMoving(); if (player.Y - ty > 1 || player.IsLiving != isLiving) { //GameServer.log.Error(string.Format("修正掉落: 动作类型 {0} 原始Y:{1} 最新Y:{2}", type, ty, p.Y)); //把服务器修正的掉落指令和客户掉落指令加以区分。 pkg = player.PlayerDetail.Out.SendPlayerMove(player,3, player.X, player.Y, 0, player.IsLiving); game.SendToAll(pkg, player.PlayerDetail); } break; case 2: if (player.IsLiving == false) { player.TargetPoint = new Point(tx, ty); } break; } } }
public void HandleCommand(BaseGame game, Player player, GSPacketIn packet) { if (player.IsAttacking) { //GSPacketIn pkg = packet.Clone(); //pkg.ClientID = player.PlayerDetail.PlayerCharacter.ID; //pkg.Parameter1 = player.Id; //game.SendToAll(pkg, player.PlayerDetail); byte type = packet.ReadByte(); int tx = packet.ReadInt(); int ty = packet.ReadInt(); byte dir = packet.ReadByte(); bool isLiving = packet.ReadBoolean(); //_loc_7.writeShort(param6); _player.map.currentTurn short map_currentTurn = packet.ReadShort(); game.SendPlayerMove(player, type, tx, ty, dir, isLiving); switch (type) { case 0: case 1: player.SetXY(tx, ty); player.StartMoving(); if (player.Y - ty > 1 || player.IsLiving != isLiving) { //trminhpc type=3 game.SendPlayerMove(player, 3, player.X, player.Y, 0);//, player.IsLiving, null); } //else //{ // game.SendPlayerMove(player, type, tx, ty, dir, isLiving, null); //} break; } } }
public int HandlePacket(GameClient client, GSPacketIn packet) { if (client.Player.PlayerCharacter.ConsortiaID == 0) return 1; bool state = packet.ReadBoolean(); bool result = false; string msg = "CONSORTIA_APPLY_STATE.Failed"; using (ConsortiaBussiness db = new ConsortiaBussiness()) { if (db.UpdateConsotiaApplyState(client.Player.PlayerCharacter.ConsortiaID, client.Player.PlayerCharacter.ID, state,ref msg)) { msg = "CONSORTIA_APPLY_STATE.Success"; result =true; } } packet.WriteBoolean(result); packet.WriteString(LanguageMgr.GetTranslation(msg)); client.Out.SendTCP(packet); return 0; }
public int HandlePacket(GameClient client, GSPacketIn packet) { if(client.Player.PlayerCharacter.MarryInfoID == 0) { return 1; } //int id = packet.ReadInt(); bool IsPublishEquip = packet.ReadBoolean(); string Introduction = packet.ReadString(); int id = client.Player.PlayerCharacter.MarryInfoID; string msg = "MarryInfoUpdateHandler.Fail"; using (PlayerBussiness db = new PlayerBussiness()) { MarryInfo info = db.GetMarryInfoSingle(id); if (info == null) { msg = "MarryInfoUpdateHandler.Msg1"; } else { info.IsPublishEquip = IsPublishEquip; info.Introduction = Introduction; info.RegistTime = DateTime.Now; if (db.UpdateMarryInfo(info)) { msg = "MarryInfoUpdateHandler.Succeed"; } } client.Out.SendMarryInfoRefresh(info, id, info != null); client.Out.SendMessage(eMessageType.Normal, LanguageMgr.GetTranslation(msg)); } return 0; }
public int HandlePacket(GameClient client, GSPacketIn packet) { //type可能的值为 -2, -1, 1, 3, 4 //当type = 1, 3, 4时,分别指快速加入组队战,Boss战,夺宝战 //当type = -1时,房间ID为所点的房间ID,无密码时也传空字符串 //当type = -2时,表示PVE游戏中的邀请 bool isInvite=packet.ReadBoolean(); int type = packet.ReadInt(); int isRoundID = packet.ReadInt(); int roomId = -1; string pwd = null; if (isRoundID==-1) { roomId = packet.ReadInt(); pwd = packet.ReadString(); } if (type == 1) type = 0; else if (type == 2) type = 4; RoomMgr.EnterRoom(client.Player, roomId, pwd, type); return 0; }
private void HandlePlayerOnMissionOver(GSPacketIn pkg) { GamePlayer player = WorldMgr.GetPlayerById(pkg.ClientID); AbstractGame game = player.CurrentRoom.Game; if (player != null) { player.OnMissionOver(game, pkg.ReadBoolean(), pkg.ReadInt(), pkg.ReadInt()); } }
private void HandlePlayerOnUsingItem(GSPacketIn pkg) { GamePlayer player = WorldMgr.GetPlayerById(pkg.ClientID); if (player != null) { int templateId = pkg.ReadInt(); bool result = player.UsePropItem(null, pkg.Parameter1, pkg.Parameter2, templateId, pkg.ReadBoolean()); SendUsingPropInGame(player.CurrentRoom.Game.Id, player.GamePlayerId, templateId, result); } }
private void HandlePlayerOnGameOver(GSPacketIn pkg) { GamePlayer player = WorldMgr.GetPlayerById(pkg.ClientID); if (player != null && player.CurrentRoom != null && player.CurrentRoom.Game != null) { player.OnGameOver(player.CurrentRoom.Game, pkg.ReadBoolean(), pkg.ReadInt()); } }