Hallo Leute!
Ich würde gerne ein /id Befehl/System erstellen. Ich bin Scriptanfänger, und würde mich daher freuen, wenn ihr nicht einfach nur das Script hinschreibt, sondern ein bisschen was dazu erklärt. Warum habt ihr dass so gemacht usw. ^^.
Mann soll eingeben /ID [ID] oder [Name]
Wenn man nur /id eingibt soll da stehen ( /ID [ID] oder [NAME] )
Wenn man erfolgreich ID oder Name eingegeben hat sollte im Text folgendes stehen:
ID: [SEINE ID]
Name: [SEIN NAME]
FPS: [FPS ANZAHL]
Danke schonmal!
Alles anzeigen
Meep Meep, Geronimo ist zur stelle
Also:
Erst einmal musst du natürlich festlegen mit was du deinen Befehl schreibst(hier mal mit strcmp):
if(strcmp(cmd, "/id", true) == 0)
{
}
Dann musst du natürlich überprüfen, ob der Spieler eingeloggt ist das kann man mit IsPlayerConnected(playerid):
if(IsPlayerConnected(playerid))
{
}
return 1;
Dann musst du die Parameter festlegen und natürlich überprüfen, ob der Spieler nur /ID ohne Parameter eingibt und wann mit:
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "[Hemeles]: NUTZUNG: /id [Spieler ID]"); //Hier überprüft er die erstellte Variable TMP auf strtok(cmdtext, idx); D.H. Er guckt ob der Spieler keine Parameter benutzt!
return 1;
}
new target; //Erstellung eines Ziels(Target)
target = ReturnUser(tmp); // Target wird eingestellt in das was eingegeben wird von dem Parameter
new sstring[256];//Neuer String
if(IsPlayerConnected(target))//Er guckt ob Target Online ist ;D
{
if(target != INVALID_PLAYER_ID)
{
GetPlayerName(target, giveplayer, sizeof(giveplayer));
format(sstring, sizeof(sstring), "Name: %s, ID: %d, Level: %d",giveplayer,target,PlayerInfo[target][pLevel]); //Hier wird der neue String benutzt und formatiert in Name: %s ID: %d und Level: %d ;)
SendClientMessage(playerid, COLOR_GRAD1, sstring);
}
}
Ich hoffe ich konnte dir helfen und wünsche noch einen guten Abend und Rutsch ins neue Jahr 2013
MfG
Geronimo