GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: scott1 le 28 Novembre 2008, 14:37:02
-
Bonjour bonjour, ça fait un bail que je cherche, masi ne trouvant pas je fait appel a vous, j'ai une commande /changenick pour changer de pseudo, tout le monde peux l'utiliser, mais ce n'est pas pratique, on ne sais plus qui est qui, donc j'aimerai que ce soit l'admin qui change le nom des joueur, mais je ne sais comment faire, en truc du genre
If playerisadmin =1338
/changenick [playerid] [newnick]
Merci
-
mais une condition exemple
if (AccountInfo[playerid][AdminLevel] >= 1 || IsPlayerAdmin(playerid))
-
non non sa je connai, masi s'est pour avoir l'id du joueur, en fait j'aurai besoin d'une nouvelle commande, puisque l'encienne s'etait celui qui la tapait qui changeait de nick, maintenant il faut que je recupere l'id du joueur et tout
-
[code=][code]
if(strcmp(cmd,"/nom", true)==0)
{
new pid, tmpp[256], tmp[256];
new texte[256];
new name[MAX_PLAYER_NAME];
new name2[MAX_PLAYER_NAME];
tmpp = strtok(cmdtext, idx);
if(!strlen(tmpp))
{
SendClientMessage(playerid, COLOR_RED, "USAGE: /nom [playerid] [nom]");
return 1;
}
pid = strval(tmpp);
if(!IsPlayerConnected(pid))
{
SendClientMessage(playerid, COLOR_RED, "Ce player n'est pas connecté");
return 1;
}
if(IsPlayerAdmin(playerid)==0)
{
SendClientMessage(playerid, COLOR_RED, "Tu n'es pas admin !!!");
return 1;
}
tmp = strtok(cmdtext, idx);
GetPlayerName(playerid, name, sizeof(name));
GetPlayerName(pid, name2, sizeof(name2));
format(texte, sizeof(texte), " %s a renomer %s en %s", name, name2, tmp);
SendClientMessageToAll(COLOR_YELLOW, texte);
SetPlayerName(pid,tmp);
return 1;
}
code by [StAfF]mAn
c'etait ici http://www.gtaonline.fr/forums/index.php/topic,2149.0.html
Apres si ce n'est pas sa ben c'est que je comprend pas la façon donc tu t'exprime [/code]
-
Ho ma tite commande ^^ :cheers
Mais au lieu de lui donner le code tu aurai pu lui expliquer ;) Il aurai mieux compris par la suite et aurai pu faire ces propres commandes avec le strtok ::)
-
Si tu veux bien, je veux bien que tu m'explique ^^
Merci
-
Ho ma tite commande ^^ :cheers
Mais au lieu de lui donner le code tu aurai pu lui expliquer ;) Il aurai mieux compris par la suite et aurai pu faire ces propres commandes avec le strtok ::)
ben enfaite j'ai tester de lui expliquer mais j'attend son code :/ pour lui dire en attendant il peu mettre celui la est des que son code est la je lui expliquerai puis juste faire recherche et on tombe sur ton code :D
-
Voila, merci de votre aide
if (strcmp(cmd, "/changenick", true)==0)
{
tmp = strtok(cmdtext, idx);
new string2[256];
if (gPlayerLogged[playerid] != 1)
{
SendClientMessage(playerid, COLOR_GRAD1, " You Are Not Logged In");
return 1;
}
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /changename [newname]");
return 1;
}
format(string, sizeof(string), "%s.cer", tmp);
if(fexist(string))
{
SendClientMessage(playerid, COLOR_GRAD1, " That nick is registered");
return 1;
}
OnPlayerRename(tmp,string,playerid);
format(string, sizeof(string), "You may now reconnect with the name %s", tmp);
SendClientMessage(playerid, COLOR_YELLOW, string);
GetPlayerName(playerid, playername, sizeof(playername));
format(string2, sizeof(string2), "%s.cer", playername);
printf("%s has changed there name to %s.", playername,tmp);
gPlayerLogged[playerid] = 0;
fremove(string2);
return 1;
}