Hallo liebe Community,
ich brauche eure Hilfe beim scripten.
Ich wollte einen Befehl, der wie folgt aussieht: Man gibt /test 1 ein und dann kommt der Text: Dies ist ein Test Text und ist ... gewidmet". Bei ... Soll der Name von Playerid 1 abgefragt und dort eingefügt werden, deshalb auch /test 1.
Wenn der Player mit der ID, die man eingibt, nicht online ist, dass soll eine Fehlermeldung ausgegeben werden
Am besten mit ocmd.
Danke im vorraus
Einen Playernamen in einen vorgegebenen Text?
- Hardy535
- Geschlossen
- Erledigt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
ocmd:test(playerid,params[])
{
new pID, str[128], name[MAX_PLAYER_NAME];
if(sscanf(params,"u",pID))return SendClientMessage(playerid,Grau,"[Benutze]: /test [Name/ID] ");
if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,0xFEFEFEFE,"Dieser Spieler ist nicht online.");
format(str,sizeof(str),"Diesist ein Text und ist %s gewidmet",GetPlayerName(pID,name,sizeof(name)));
SendClientMessage(playerid,0xFDD700FF,str);
return 1;
}So müsste das aussehen
-
2 Dinge fehlen mir dabei: Es wird nicht der Name ausgegeben, sondern die ID und es soll nur über die ID gehen, nicht über den Namen!
Außerdem ist dort keine Abfrage, ob der Spieler online ist -
1. Es wird der Name ausgegeben :X
2. Es wird abgefragt, ob der Spieler Online ist. (Editiert)"/test 1"
dann steht da "Dies ist ein Text und ist TestUser123 gewidmet"hinter der formatierung steht doch : GetPlayerName(pID,name,sizeof(name))
oO
-
Funktioniert einfach nicht, denn jetzt wird ausgegeben: "Diesist ein Text und ist 6 gewidmet" (habs mit ID 0 ausprobiert)
-
Ach kein Wunder, ich schick dir vllt ein Müll
versuch es so::
ocmd:test(playerid,params[])
{
new pID, str[128], name[MAX_PLAYER_NAME];
GetPlayerName(pID,name,sizeof(name));
if(sscanf(params,"d",pID))return SendClientMessage(playerid,Grau,"[Benutze]: /test [ID] ");
if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,0xFEFEFEFE,"Dieser Spieler ist nicht online.");
format(str,sizeof(str),"Diesist ein Text und ist %s gewidmet",name);
SendClientMessage(playerid,0xFDD700FF,str);
return 1;
} -
Dankeschön, funktioniert einwandfrei
-
No Problem, sollte wieder mal was sein, kannst du mir auch PN schreiben
-
breadfish.de
Hat das Thema geschlossen.