public void OnStartGameAction(ICommunication communication, DataPackage data) { if (communication.IsMaster) { if (_serverInfo._lobbylist[0].IsLobbyComplete()) { _gameStarted = true; Core.State = StateEnum.GameRunningState; for (int i = 0; i < _serverInfo._communications.Count; i++) { if (!(_serverInfo._communications[i] == communication)) { _serverInfo._communications[i].Send(_dataPackageProvider.GetPackage("PlayerData")); } } communication.Send(_dataPackageProvider.GetPackage("ServerStartingGame")); } else { communication.Send(_dataPackageProvider.GetPackage("NotEnoughInfo")); } } else { communication.Send(_dataPackageProvider.GetPackage("OnlyMasterStartInfo")); } }
public void Execute(ICommunication communication) { communication.Send(_dataPackageProvider.GetPackage("DeclinedInfo")); DisconnectClient(); for (int i = 0; i <= _serverInfo._communications.Count - 1; i++) { _serverInfo._communications[i].Send(_dataPackageProvider.GetPackage("DeclineUpdate")); } }
private void LobbyCheck() { if (_serverInfo._lobbylist[0].IsLobbyComplete()) { Core.ConnectionStatus = ClientConnectionStatus.Declined; _currentcommunication.Send(_dataPackageProvider.GetPackage("LobbyCheckFailed")); _disconnectionHandler.Execute(_currentcommunication); } else { Core.ConnectionStatus = ClientConnectionStatus.Accepted; _currentcommunication.Send(_dataPackageProvider.GetPackage("LobbyCheckSuccessful")); _connectionHandler.Execute(_currentcommunication); } Core.ValidationStatus = ValidationEnum.WaitingForPlayer; }
public void Execute(ICommunication communication) { _serverInfo._lobbylist[0]._CurrentPlayerCount++; communication.Send(_dataPackageProvider.GetPackage("AcceptedInfo")); for (int i = 0; i < _serverInfo._communications.Count; i++) { _serverInfo._communications[i].Send(_dataPackageProvider.LobbyDisplay()); } }