Random team choose
#1

Hello.

I want make one gamemode, but.. i need build this random teamplayer chooser.

Like... gTeam[playerid] = 2; (<-- BLUE TEAM)

System will choose (random) one player FROM BLUE TEAM and makes player to VIP.

How do make this random chooser? Thanks.

// I have already searched, still didn't found.
Reply
#2

pawn Код:
stock GetRandomPlayer()
{
    new players = 0;
    for(new i = 0; i < GetMaxPlayers(); i++)
    {
        if(IsPlayerConnected(i)) players ++;
    }
   
   
    players = random(players) + 1;
 
    for(new i = 0; i < GetMaxPlayers(); i ++)
    {
        if(IsPlayerConnected(i))
        {
            players --;              
            if(players == 0) return i;
        }
    }
    return 0;
}

??
Reply
#3

hm maybe kind of this:
pawn Код:
stock RandomPlayer()
{
    new count = 0;
    for(new i=0; i<GetMaxPlayers(); i++)
    {
        if(IsPlayerConnected(i))
        {
            if(gTeam[i] == 2)
            {
                count++;
            }
        }
    }
    if(count != 0)
    {
        new rst = random(count);
        new count2;
        for(new n=0; n<GetMaxPlayers(); n++)
        {
            if(IsPlayerConnected(n))
            {
                if(gTeam[n] == 2)
                {
                    count2++;
                    if(count2 == rst)
                    {
                        return n;
                    }
                }
            }
        }
    }
    return -1;
}
no clue whether it works though, just wrote it up

edit: oh one before me
Reply
#4

Quote:
Originally Posted by [ISS]jumbo
Посмотреть сообщение
pawn Код:
stock GetRandomPlayer()
{
    new players = 0;
    for(new i = 0; i < GetMaxPlayers(); i++)
    {
        if(IsPlayerConnected(i)) players ++;
    }
   
   
    players = random(players) + 1;
 
    for(new i = 0; i < GetMaxPlayers(); i ++)
    {
        if(IsPlayerConnected(i))
        {
            players --;              
            if(players == 0) return i;
        }
    }
    return 0;
}

??
Where is gTeam[playerid] == 2?

Quote:
Originally Posted by Typhome
Посмотреть сообщение
Like... gTeam[playerid] = 2; (<-- BLUE TEAM)

System will choose (random) one player FROM BLUE TEAM and makes player to VIP.
Reply
#5

you have 2 use GetRandomPlayer function in your script
Reply
#6

You cant really understand..

SYSTEM MUST CHOOSE PLAYER FROM BLUE TEAM.
Reply
#7

like mmm

pawn Код:
public SetRandomPlayerToBlueTeam()
{
    new randomp,name[MAX_PLAYER_NAME],string[128];
    randomp = GetRandomPlayer();
    gTeam[randomp] = 2;
    GetPlayerName(randomp,name,sizeof(name));
    format(string,sizeof(string),"%s is now blue team",name);
    SendClientMessageToAll(color,string);
    return 1;
}
idk if can work
Reply
#8

Quote:

SYSTEM MUST CHOOSE PLAYER FROM BLUE TEAM.


AHHHHHHHHHH LOOOOL xD mmmm try modify the GetRandomPlayer
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)