public static void PlayerAddScore(int _fromClient, Packet _packet) { if (Server.clients[_fromClient].player != null) { int _team = _packet.ReadInt(); bool _isFinishLine = _packet.ReadBool(); int _addScore; if (_isFinishLine) { _addScore = Constants.FinishLineScore; } else { _addScore = Constants.KillScore; } Server.clients[_fromClient].player.score += _addScore; GameLogic.score[_team] += _addScore; ServerSend.NewScoreToAll(_team, GameLogic.score[_team]); Console.WriteLine($"Team {_team+1} gain score {_addScore}, total score = {GameLogic.score[_team]}"); if (GameLogic.score[_team] >= Constants.WIN_SCORE) { ServerSend.WinToAll(_team); //Restart game // RouterServer.Initialize(); // Server.Initialize(); GameLogic.Reset(); } } }
public static void PlayerAddScore(int _fromClient, Packet _packet) { if (Server.clients[_fromClient].player != null) { int _team = _packet.ReadInt(); int _addScore = _packet.ReadInt(); Console.WriteLine($"{GameLogic.score[_team]}, {_addScore}"); Server.clients[_fromClient].player.score += _addScore; GameLogic.score[_team] += _addScore; ServerSend.NewScoreToAll(_team, GameLogic.score[_team]); if (GameLogic.score[_team] >= Constants.WIN_SCORE) { ServerSend.WinToAll(_team); //Restart game // foreach(ServerSideClient _client in Server.clients.Values) { // if (_client.tcp.clientSocket != null){ // _client._Disconnect(); // } // } GameLogic.Reset(); } } }