747
« on: Tuesday, June 24, 2014, 19:36:02 PM »
A maplist would not fit into the chat window.
This is the check for how many votes are required, I see nothing wrong with it:
MvVotesRequired = Level.Game.GetNumPlayers() / 2 + 1;
Playername is already saved and checked against:
class MVHandler extends BroadcastHandler HideCategories(Movement,Collision,Lighting,LightColor,Karma,Force);
var array<string> Voters;
var int iRequiredVotes;
function BroadcastText (PlayerReplicationInfo SenderPRI, PlayerController Receiver, string Msg, name Type)
{
if ((SenderPRI.PlayerName == Receiver.PlayerReplicationInfo.PlayerName) && (Caps(Msg) == "YES") && CheckCanVote(SenderPRI.PlayerName))
{
Voters.Length = Voters.Length + 1;
Voters[Voters.Length - 1] = SenderPRI.PlayerName;
Level.Game.BroadcastHandler.Broadcast(None, SenderPRI.PlayerName $ " has added their vote for a map change! [" $ string(Voters.Length) $ "/" $ string(iRequiredVotes) $ "]");
}
else
{
Super.BroadcastText(SenderPRI,Receiver,Msg,Type);
}
}
function bool CheckCanVote (string PlayerName)
{
local int i;
i = 0;
if ( i < Voters.Length )
{
if ( PlayerName == Voters[i] )
{
return False;
}
i++;
}
return True;
}