Exemple #1
0
        public override void ClientVote(GameMsg_ClVote message, BasePlayer player)
        {
            if (ActiveVote == null)
            {
                return;
            }

            if (PlayersVoteInfo[player.ClientId].Vote == 0)
            {
                if (message.Vote == 0)
                {
                    return;
                }

                PlayersVoteInfo[player.ClientId].Vote = message.Vote;

                for (var i = 0; i < GameContext.Players.Length; i++)
                {
                    if (player.ClientId == i ||
                        GameContext.Players[i] == null ||
                        GameContext.Players[i].Team == Team.Spectators || !Server.ClientEndPoint(i)
                        .Compare(Server.ClientEndPoint(player.ClientId), false))
                    {
                        continue;
                    }

                    if (PlayersVoteInfo[i].Vote != 0)
                    {
                        return;
                    }
                }

                if (message.Vote > 0)
                {
                    ActiveVote.VotesYes++;
                }
                else if (message.Vote < 0)
                {
                    ActiveVote.VotesNo++;
                }

                SendVoteStatus(null);
                CheckVoteStatus();
            }
            else if (ActiveVote.CallerId == player.ClientId)
            {
            }
        }
Exemple #2
0
 protected override void OnMsgClientVote(BasePlayer player, GameMsg_ClVote message)
 {
     Votes.ClientVote(message, player);
 }
Exemple #3
0
 public abstract void ClientVote(GameMsg_ClVote message, BasePlayer player);
Exemple #4
0
 protected abstract void OnMsgClientVote(BasePlayer player, GameMsg_ClVote message);