Little team Balancer help!
#1

Well i have a code here. It works, but i have 4 teams and i do not know how to set the Count1. Count2 Count3 Count4 to make it work for 4 teams


EX. Count1 > Count2 Count2 > Count1

idk how to make it for make for 4 teams.. help

Код:
new count1, count2, count3, count4;
for(new p = 0; p < GetMaxPlayers(); p++)
{
  if (gTeam[p] == TEAM_USA)
  {
    count1++;
  }
  else if (gTeam[p] == TEAM_CHINA)
  {
    count2++;
  }
  else if (gTeam[p] == TEAM_IRAN)
  {
    count3++;
  }
else if (gTeam[p] == TEAM_RUSSIA)
  {
    count4++;
  }
}
if ((count1 > count2) && gTeam[playerid] == TEAM_USA)
  return SendClientMessage(playerid, COLOR_RED, " This team is full!");
else if ((count2 > count1) && gTeam[playerid] == TEAM_CHINA)
  return SendClientMessage(playerid, COLOR_RED, " This team is full!");
else if ((count2 > count1) && gTeam[playerid] == TEAM_IRAN)
  return SendClientMessage(playerid, COLOR_RED, " This team is full!");
Reply
#2

I'd do something like this
Код:
new usa, china, iran, russia, lowest, highest, highnum, lownum;
for(new p = 0; p < GetMaxPlayers(); p++)
{
  if (gTeam[p] == TEAM_USA)
  {
    usa++;
    if(usa > highnum)
    {
      highnum = usa;
      highest = 1;
    }
    if(usa < lownum)
    {
      lownum = usa;
      lowest = 1;
    }
  }
if ((highest == 1) && gTeam[playerid] == TEAM_USA)
  return SendClientMessage(playerid, COLOR_RED, " This team is full!");
Reply
#3

guys i need file script team balancer with 2 teams plz help drop me a pm plz plz
Reply
#4

When a player wants to spawn, I check if the team is full:
pawn Код:
public OnPlayerRequestSpawn(playerid)
{
    if(IsTeamFull(gTeam[playerid]))
    {
        SendClientMessage(playerid, C_GREY, "Team full! Please choose another one.");
        return 0;
    }
    else return 1;
}
This is the IsTeamFull stock:
pawn Код:
stock IsTeamFull(teamid)
{
    if(teamid == T_ENGLAND)
    {
        if(TeamMembers(teamid) > TeamMembers(T_RUSSIA) || TeamMembers(teamid) > TeamMembers(T_MEXICO) || TeamMembers(teamid) > TeamMembers(T_IRAQ))
        {
            return 1;
        }
        else return 0;
    }
    if(teamid == T_RUSSIA)
    {
        if(TeamMembers(teamid) > TeamMembers(T_ENGLAND) || TeamMembers(teamid) > TeamMembers(T_MEXICO) || TeamMembers(teamid) > TeamMembers(T_IRAQ))
        {
            return 1;
        }
        else return 0;
    }
    if(teamid == T_MEXICO)
    {
        if(TeamMembers(teamid) > TeamMembers(T_RUSSIA) || TeamMembers(teamid) > TeamMembers(T_ENGLAND) || TeamMembers(teamid) > TeamMembers(T_IRAQ))
        {
            return 1;
        }
        else return 0;
    }
    if(teamid == T_IRAQ)
    {
        if(TeamMembers(teamid) > TeamMembers(T_RUSSIA) || TeamMembers(teamid) > TeamMembers(T_MEXICO) || TeamMembers(teamid) > TeamMembers(T_ENGLAND))
        {
            return 1;
        }
        else return 0;
    }
    return 0;
}
And the stock that gets the players in that team (needed for previous stock):
pawn Код:
stock TeamMembers(teamid)
{
    new players = 0;
    foreach(Player, i)
    {
        if(gTeam[i] == teamid)
        {
            players ++;
        }
    }
    return players;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)