Bonjour à tous/toutes,
C'est à propos de ma commande /hitman qui permet de mettre la tête à prix d'un joueur.
Voici le script :
new hitman[MAX_PLAYERS];
new hiter[MAX_PLAYERS];
new ID;
dcmd_hitman(playerid, params[])
{
new amounthit;
if(sscanf(params, "dd", ID, amounthit))
{
SendClientMessage(playerid, COLOR_ERROR, "Utiliser: /hitman [id] [somme]");
}
else if(amounthit > 0)
{
if(IsPlayerConnected(ID))
{
if(GetPlayerMoney(playerid) >= amounthit)
{
if(antispam[playerid] == 0)
{
hitman[ID] = amounthit;
hiter[ID] = playerid;
new string[256];
format(string, sizeof(string), "Vous avez mis un contrat sur %s de %i$", ReturnPlayerName(ID), amounthit);
SendClientMessage(playerid, COLOR_YELLOW, string);
format(string, sizeof(string), "* %s a mis un contrat sur %s de %i$", ReturnPlayerName(playerid), ReturnPlayerName(ID), amounthit);
SendClientMessageToAll(COLOR_YELLOW, string);
GameTextForPlayer(playerid," ~y~Vous avez un contrat", 3000, 5);
}
else
{
SendClientMessage(playerid, COLOR_ERROR, "Il y a déjà un contrat en cours !");
}
}
else
{
SendClientMessage(playerid, COLOR_ERROR, "Vous n'avez pas assez d'argent");
}
}
else
{
SendClientMessage(playerid, COLOR_ERROR, "Mauvais ID");
}
}
else
{
SendClientMessage(playerid, COLOR_ERROR, "Le minimum est de 1$");
}
return 1;
}
public OnPlayerDeath (playerid, killerid, reason)
if(reason <= 46 && hitman[playerid] != 0)
{
format(string, sizeof(string), "* %s a rempli le contrat sur %s et a gagné %i$ ", ReturnPlayerName(killerid), ReturnPlayerName(playerid), hitman[playerid]);
SendClientMessageToAll(COLOR_YELLOW, string);
GivePlayerMoney(killerid, hitman[playerid]);
GivePlayerMoney(hiter[playerid],-hitman[playerid]);
hitman[playerid] = 0;
}
return 1;
}
Si part exemple je mets la tête à prix sur quelqu'un à 100$, ca marche mais si je rajoute 150$ par exemple, le hit n'est pas de 250$ mais 150$.
Donc je souhaiterai pouvoir additionner les contrats que placent les joueurs sur quelqu'un mais comment faire ?
Coordialement, RenZoKen