public Player(ComplexNetworkManager networkManager, GameplayController gameplayController) { _gameplayController = gameplayController; _networkManager = networkManager; _networkManager.RegisterCallback <GameStateChanged>(OnUpdatedStateReceived); _networkManager.RegisterCallback <PlayerSideChanged>(OnUpdatedPlayerSide); if (_networkManager.IsClient) { _gameplayController.OnTurnChanged += SendGameStateToServer; } }
void Start() { _networkManager = NetworkManager.singleton as ComplexNetworkManager; GameplayController = new GameplayController(); Player = new Player(_networkManager, GameplayController); if (_networkManager.IsServer) { _server = new Server(); _server.Init(_networkManager.Server); } if (!_networkManager.Client.IsReady) { _networkManager.Client.OnServerReadyToPlay += OnServerReady; } else { OnServerReady(); } TryInitServer(); TryInitClient(); }