public void StartBattle(SCStartGame res) { BeforeStartGame(SyncMode.STEP_LOCK); CharacterBase mainPlayer = GameClient.Instance.MainPlayer; foreach (var p in res.Uins) { CharacterBase currentPlayer = null; currentPlayer = p == Uin ? mainPlayer : CharacterManager.Instance.GetNewCharacter(); currentPlayer.ThisData.uin = p; currentPlayer.ChangeCharacter(1); currentPlayer.Init(); _inputListeners.Add(currentPlayer.ThisData.uin, currentPlayer); currentPlayer.Position = Vector3.zero; TickerManager.Instance.AddTick(currentPlayer); TickerManager.Instance.AddFixedTick(currentPlayer); } AfterStartGame(); }
public override void DeSerialize(MemoryStream stream) { _data = SCStartGame.Parser.ParseFrom(stream); }