Всем привет, кто может помочь с одной функцией. В чем смысл, на сервере 3 команды, и при заходе на сервер автоматически тебя распределит в одну из команд так чтобы кол. участников в каждой команде было поровну. Вот как я сделал но почему то делает полную лажу.
В начале мода:
Переменные:
Код HTML:new PlayerClass[MAX_PLAYERS];
new russia = 0;
new america = 0;
new japonia = 0;
Дальше в OnPlayerSpawnКод HTML:stock PlayerCountrySelection(playerid)
{
if(russia == america && america == japonia)
{
new country = random(2);
if(country == 0)//russia
{
PlayerClass[playerid] = 0;
russia++;
GamemodeBlankStat();
}
else if(country == 1)//america
{
PlayerClass[playerid] = 1;
america++;
GamemodeBlankStat();
}
else if(country == 2)//japonia
{
PlayerClass[playerid] = 2;
japonia++;
GamemodeBlankStat();
}
}
else if(russia << america && america == japonia)
{
PlayerClass[playerid] = 0;
russia++;
GamemodeBlankStat();
}
else if(russia == america && america >> japonia)
{
PlayerClass[playerid] = 2;
japonia++;
GamemodeBlankStat();
}
else if(russia == japonia && russia >> america)
{
PlayerClass[playerid] = 1;
america++;
GamemodeBlankStat();
}
else if(russia == japonia && russia << america)
{
new country = random(1);
if(country == 0)//russia
{
PlayerClass[playerid] = 0;
russia++;
GamemodeBlankStat();
}
else if(country == 1)//japonia
{
PlayerClass[playerid] = 2;
japonia++;
GamemodeBlankStat();
}
}
else if(russia == america && russia << japonia)
{
new country = random(1);
if(country == 0)//russia
{
PlayerClass[playerid] = 0;
russia++;
GamemodeBlankStat();
}
else if(country == 1)//america
{
PlayerClass[playerid] = 1;
america++;
GamemodeBlankStat();
}
}
else if(america == japonia && america << russia)
{
new country = random(1);
if(country == 0)//america
{
PlayerClass[playerid] = 1;
america++;
GamemodeBlankStat();
}
else if(country == 1)//japonia
{
PlayerClass[playerid] = 2;
japonia++;
GamemodeBlankStat();
}
}
}
stock PlayerLeaveCountry(playerid)
{
if(PlayerClass[playerid] == 0)
{
russia = russia - 1;
GamemodeBlankStat();
}
if(PlayerClass[playerid] == 1)
{
america = america - 1;
GamemodeBlankStat();
}
if(PlayerClass[playerid] == 2)
{
japonia = japonia - 1;
GamemodeBlankStat();
}
}
И в OnPlayerDisconnectКод HTML:PlayerCountrySelection(playerid);
if(PlayerClass[playerid] == 0)
{
SendClientMessage(playerid,-1,"Òû ïðèñîåäèíèëñÿ ê Àðìèé Ðîññèè!");
}
else if(PlayerClass[playerid] == 1)
{
SendClientMessage(playerid,-1,"Òû ïðèñîåäèíèëñÿ ê Àðìèé ÑØÀ!");
}
else if(PlayerClass[playerid] == 2)
{
SendClientMessage(playerid,-1,"Òû ïðèñîåäèíèëñÿ ê Àðìèé ßïîíèè!");
}
Заранее спасибо.Код HTML:pLogged[playerid] = 0;
PlayerLeaveCountry(playerid);
SavePlayerInfo(playerid);
P.S. Если скажете что то про то что я вставил в OnPLayerSpawn и после смерти т.д. забудьте. Проблема в самом распределений игрока в одну из трёх команд.