public void MsgtoSer_StartGame(NetworkConnection cliconn, Msg_StartGame climsg) { if (climsg.comcode == ComCode.StartGame) { H.klog($"Server got msg to start game at room {climsg.roomid}"); if (GameMan._ins.roomTab_ser.ContainsKey(climsg.roomid)) { GameMan.Room ro = GameMan._ins.roomTab_ser[climsg.roomid]; // sending loading message to leader and all other member Msg_StartGame mess = new Msg_StartGame { sceneName = "Scene_001", comcode = ComCode.StartGame, load_scene_command = true }; ro.leader.Send(mess); for (int i = 0; i < ro.members.Count; i++) { ro.members[i].Send(mess); } GameMan._ins.SetupMatchIns(climsg.roomid); } } else if (climsg.comcode == ComCode.SceneLoading) { H.klog($"This client {cliconn.connectionId} finishes loading scene"); if (GameMan._ins.roomTab_ser.ContainsKey(climsg.roomid)) { GameMan.Room ro = GameMan._ins.roomTab_ser[climsg.roomid]; if (ro.members.Count == 0) { ro.leader.Send(new Msg_StartGame { comcode = ComCode.StartGame, rdyNspawn = true }); } else { ro.allDoneLoading += 1; if (ro.allDoneLoading == (ro.members.Count + 1)) { ro.allDoneLoading = 0; Msg_StartGame msg = new Msg_StartGame { comcode = ComCode.StartGame, rdyNspawn = true, load_scene_command = false }; ro.leader.Send(msg); for (int i = 0; i < ro.members.Count; i++) { ro.members[i].Send(msg); } } } } } }
public void MsgtoCli_StartGame(Msg_StartGame sermsg) { if (sermsg.comcode == ComCode.StartGame) { if (sermsg.load_scene_command) { sceneloading = SceneManager.LoadSceneAsync(sermsg.sceneName); } else { if (sermsg.rdyNspawn) { ReadySpawn(); } } } }
void OnMsg_L2C_RepLogin(Deserializer reader) { var msg = reader.Parse <NetMsg.Lobby.Msg_RepLogin>(); _playerID = msg.playerId; Debug.Log("PlayerID " + _playerID + " roomId:" + msg.roomId); if (msg.roomId > 0) { IsReconnected = true; InitRoom(msg.ip, msg.port, NetworkDefine.NetKey); var subMsg = new Msg_StartGame(); subMsg.Deserialize(new Deserializer(msg.childMsg)); reconnectedInfo = subMsg; StartRoom(); } else { EventHelper.Trigger(EEvent.OnLoginResult, msg); } }
void OnMsg_L2C_ReqInit(Deserializer reader) { var msg = reader.Parse <NetMsg.Lobby.Msg_RepInit>(); _playerID = msg.playerId; Debug.Log("PlayerID " + _playerID + " roomId:" + msg.roomId); if (msg.roomId > 0) { IsReconnected = true; InitRoom(msg.ip, msg.port, NetworkDefine.NetKey); var subMsg = new Msg_StartGame(); subMsg.Deserialize(new Deserializer(msg.childMsg)); reconnectedInfo = subMsg; StartRoom(); } else { SendCreateRoomMsg(); } }
public void OpenRecordFile(string path) { var bytes = File.ReadAllBytes(path); var reader = new Deserializer(Compressor.Decompress(bytes)); var TypeId = reader.GetInt(); var RoomId = reader.GetInt(); var Seed = reader.GetInt(); var AllActors = reader.GetBytes_255(); var msg = new Msg_RepMissFrame(); msg.startTick = 0; msg.Deserialize(reader); var msgStartGame = new Msg_StartGame(); msgStartGame.RoomID = RoomId; msgStartGame.Seed = Seed; msgStartGame.AllActors = AllActors; msgStartGame.SimulationSpeed = 60; MaxRunTick = msg.frames.Length + 1; IsVideoMode = true; framesInfo = msg; gameInfo = msgStartGame; }
public static void StartGame(Msg_StartGame msg) { UnityEngine.Debug.Log("StartGame"); Instance.StartGame(msg.mapId, msg.playerInfos, msg.localPlayerId); }