Bonsoir, je voudrais créer un systeme d'équilibrage pour 4 Team
Ou j'en suis sur c'est qu'il faut que j'utilise L’événement OnPlayerRequestSpawn
Donc j'ai cherché sur le net quelques exemple et avec quelques idées sa a donné ceci
if(grove > ballas || grove > vagos || grove > lspd && gTeam[playerid] == TEAM_GROVE )
{
SendClientMessage(playerid, COLOR_ROUGE, "Cet Team est Full!");
return 0;
}
else if (ballas > grove || ballas > vagos || ballas > lspd && gTeam[playerid] == TEAM_BALLAS)
{
SendClientMessage(playerid, COLOR_ROUGE, "Cet Team est full!");
return 0;
}
if (vagos > grove || vagos > ballas || vagos > lspd && gTeam[playerid] == TEAM_VAGOS)
{
SendClientMessage(playerid, COLOR_ROUGE, "Cet Team est full!");
return 0;
}
if (lspd > grove || lspd > vagos || lspd > ballas && gTeam[playerid] == TEAM_LSPD)
{
SendClientMessage(playerid, COLOR_ROUGE, "Cet Team est full!");
return 0;
}
Jusque là on est Ok (du moins je pense)
Donc faut incrémenté et décrémenté la variable ou il faut
if (gTeam[playerid] == TEAM_GROVE)
{
grove--;
}
else if (gTeam[playerid] == TEAM_BALLAS)
{
ballas--;
}
else if (gTeam[playerid] == TEAM_VAGOS)
{
vagos--;
}
else if (gTeam[playerid] == TEAM_LSPD)
{
lspd--;
}
dans public OnPlayerDisconnect et OnPlayerDeath on décrémente
et on incrémente quand le player Spawn
if (gTeam[playerid] == TEAM_GROVE)
{
grove++;
}
else if (gTeam[playerid] == TEAM_BALLAS)
{
ballas++;
}
else if (gTeam[playerid] == TEAM_VAGOS)
{
vagos++;
}
else if (gTeam[playerid] == TEAM_LSPD)
{
lspd++;
}
Le probleme en réfléchissant un peu, Ok il spawn sa rajoute +1 a la variable, mais disons que la personne bug avant de spawn ou déco avant de spawn pour X raison donc de là il y a une erreur
Ensuite si le player meurt ok sa fais -1 et sa rajoute + 1 quand sa spawn on est ok mais si quelqu'un spawn avant qu'il respawn(peu propable mais qui arrivera un jour ou l'autre)
Vu que j'ai un /changeteam qui kill sa fera aussi une erreur je pense dans le défilement, j'ai pensé à incrémenté lors du /changeteam mais disons aussi que la personne /changeteam plusieurs fois par erreur ou /changeteam avant de spawn
Enfin Bref j'ai la tete en surchauffe je ne connais pas d'autres moyen de régler sa ^^ si vous avez une idée ce serait sympa pour m'aider ^^