GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: LePtitClown le 01 Avril 2009, 18:42:11
-
Salut,j'ai un petit problème avec ma commande, normalment on tape /boss et on devient surpuissna mais là on peut taper n'importe quoi avec un/ ca marche ex /d /f /dmlfkmdf.
J'ai donc pensé à réaliser une condition où si le joueur n'est pas admin ça ne marchera pas cmme ça plus de problème, or j'ai quelques problèmes avec ce script.
Voici ci qui pose pb:
//cmd d'invincibilité
if (IsPlayerAdmin (playeriID) == 0) <======= il me mette une rreur à cette ligne
if(strcmp(cmdtext, "/boss", true) == 0)
SetPlayerArmour(playerid, 100.0);
SetPlayerHealth(playerid, 100.0);
GivePlayerWeapon(playerid, 26,300);
GivePlayerMoney(playerid, 100000);
SetPlayerSkin(playerid, 264);
SendClientMessage(playerid, COLOR_RED, "Tues tout ce qui bouge!");
return 0;
A++
-
Une petite faute de frape, rien de grave ;)
Tu met :
if (IsPlayerAdmin (playeriID) == 0)
if(strcmp(cmdtext, "/boss", true) == 0)
Mais il faut :
if(strcmp(cmdtext, "/boss", true) == 0)
{
if (IsPlayerAdmin (playerid) == 0)
{
//Ta commande ici
}
return 1;
}
++
MrT®
-
il m'écrive un warning ( c'est déjà mieux avant j'avais 26 erreurs )
Avec tes modification je crois que ça fait ça. Je ne sias pas où mettre le return 0;
Voila ce que ça donne
//cmd d'invincibilité
if(strcmp(cmdtext, "/boss", true) == 0)
{
if (IsPlayerAdmin (playerid) == 0)
{
SetPlayerArmour(playerid, 100.0);
SetPlayerHealth(playerid, 100.0);
GivePlayerWeapon(playerid, 26,300);
GivePlayerMoney(playerid, 100000);
SetPlayerSkin(playerid, 264);
SendClientMessage(playerid, COLOR_RED, "Tues tout ce qui bouge!");
}
return 1;
}
return 0;
}
lors de la compilation:
C:\DOCUME~1\PROPRI~1\Bureau\SAMP02~1.WIN\GAMEMO~1\lvdm.pwn(294) : warning 217: loose indentation
A++
-
Rien de grave juste le return 0; qui est mal placer, essaye sa :
if(strcmp(cmdtext, "/boss", true) == 0)
{
if (IsPlayerAdmin (playerid) == 0)
{
SetPlayerArmour(playerid, 100.0);
SetPlayerHealth(playerid, 100.0);
GivePlayerWeapon(playerid, 26,300);
GivePlayerMoney(playerid, 100000);
SetPlayerSkin(playerid, 264);
SendClientMessage(playerid, COLOR_RED, "Tues tout ce qui bouge!");
}
return 1;
}
return 0;
++
MrT®
-
Merci bcp pour ton aide
Mais la condition admin n'est pas respectée je ne sais pas pourquoi
je peux taper /boss et avoir les armes et tout et tout alors que je ne sis pas admin, cette ajout avec la condition admin a juste enlevé les commandes comme /f /d /fgjfld etc..
Si tu sais de quoi ça vient ce serait enocre plus sympa mdr ^^
A+++
-
Remplace le
if (IsPlayerAdmin (playerid) == 0)
par
if (IsPlayerAdmin (playerid) == 1)
Tout devrait désormais fonctionner, sans aucun bug. :)
++
MrT®
-
Alors là je dis merci
j'aurai bien une autre question mais la si c'est pas de mon niveau tu le dis tout de suite mdr
je souhaite que lorsque je tape la commande (que tu dois commencer à connaitre maintenant) ,un véhicule que j'aurai choisi l'ID ( ex: un kart ) arrive à mes pieds lorsque je tape la commande
C'est la question supprême ^^
A++
-
Pour sa il faut récupérer la position du joueur, et créer un véhicule avec la position que l'on a récupérée,
pour sa essaye de t'inspirer de ce FS : http://forum.sa-mp.com/index.php?topic=91711.0 (http://forum.sa-mp.com/index.php?topic=91711.0)
++
MrT®