Wie kann ich machen das 2 Befehle das selbe bewirken
zu beispiel das man eingibt /su oder /wanted? also ohne
2 Befehle zu erstellen
Frage zu Ocmd
- [DT]Midoman
- 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
-
-
Das geht nicht.
Du machst einfach einen befehl und kopierst ihn und fügst in nochmal ein
Dann änderst du einfach den "/BEFEHL" -
Oder du machst es über OnPlayerCommandText
-
Das geht mit Y_COMMANDS
http://forum.sa-mp.com/showthread.php?t=169029
Command_AddAltNamed("su", "wanted");
-
ocmd:befehel ocmd:befehl ?
{
dududududu
} -
-
Ungetestet.
#define ADDCMD:%1->%2; \
ocmd:%1(playerid, params[]) \
return ocmd_%2(playerid, params);ADDCMD:su->wanted;
ocmd:wanted(playerid, params[]) {
// ...
return 1;
} -
Brotfische manchmal hasse ich Breadfish.
Grade 10 Minuten Antwort getippt flache Taste
Naja hier in kurz form.
Lösung:
Kopiere den Befehl
Z.B:
ocmd:herrufen(playerid,params[]){ new user; if(sscanf(params, "u",user)) return SendClientMessage(playerid,Grau2,"Benutzung: /herrufen [Spieler]"); if(IstSpielerAdmin(playerid,2)) { if(GetPlayerVehicleSeat(user) == 0) { new car = GetPlayerVehicleID(user); new float:X; new float:Y; new float:Z; GetPlayerPos(playerid,X,Y,Z); SetPlayerPos(user,X,Y,Z); SetVehiclePos(car,X,Y,Z); } else { new float:X; new float:Y; new float:Z; GetPlayerPos(playerid,X,Y,Z); SetPlayerPos(user,X,Y,Z); } } else { SendClientMessage(playerid,Rot,"Du bist kein Administrator oder dein Adminlevel ist nicht hoch genug."); }}
füg ihn wieder ein und mach aus den 1 Befehl denn 2
Z.b
herrufen = gohere
ocmd:gohere(playerid,params[]){ new user; if(sscanf(params, "u",user)) return SendClientMessage(playerid,Grau2,"Benutzung: /gohere [Spieler]"); if(IstSpielerAdmin(playerid,2)) { if(GetPlayerVehicleSeat(user) == 0) { new car = GetPlayerVehicleID(user); new float:X; new float:Y; new float:Z; GetPlayerPos(playerid,X,Y,Z); SetPlayerPos(user,X,Y,Z); SetVehiclePos(car,X,Y,Z); } else { new float:X; new float:Y; new float:Z; GetPlayerPos(playerid,X,Y,Z); SetPlayerPos(user,X,Y,Z); } } else { SendClientMessage(playerid,Rot,"Du bist kein Administrator oder dein Adminlevel ist nicht hoch genug."); }} -
-
Ich habe das Thread gelesen. Jedoch finde ich persönlich die anderen Methoden zu kompli
Also habe ich nur gesagt was ich machen würde. Aber wenn er die Kompli Methode haben will bitte! -
-
Ich habe das Thread gelesen. Jedoch finde ich persönlich die anderen Methoden zu kompli
Also habe ich nur gesagt was ich machen würde. Aber wenn er die Kompli Methode haben will bitte!
Was ist an einem Define kompli`? -
Kompliziert ist es nicht, und Zeilen Spart man auch genug
-
Nichts.
Aber ich finde das ganze
[/ ocmd:%1(playerid, params[]) \
return ocmd_%2(playerid, params);ADDCMD:su->wanted;
ocmd:wanted(playerid, params[]) {
// ...
return 1;
kompli
also bleib ich bei meiner und ihr bei eurer und alle sind zu Frieden -
WTF Leute?!
Das geht gabz einfach.ocmd:befehl(playerid, params)
return ocmd_befehl2(playerid, params); -
Ungetestet.
#define ADDCMD:%1->%2; \
ocmd:%1(playerid, params[]) \
return ocmd_%2(playerid, params);ADDCMD:su->wanted;
ocmd:wanted(playerid, params[]) {
// ...
return 1;
}
Vom Prinzip her klappt es aber ich würd es sicherheitsmäßig so machen:ocmd:wanted(playerid,params[])
{
//Dein Command zeug hier rein
return 1;
}
wenn du denn dann erneut aufrufen willst, mach es dann so:
ocmd:su(playerid,params[])return ocmd_wanted(playerid,params);
Das klappt zu 100% -
WTF Leute?!
Das geht gabz einfach.ocmd:befehl(playerid, params)
return ocmd_befehl2(playerid, params);
Bitte genauer sagen. -
Vom Prinzip her klappt es aber ich würd es sicherheitsmäßig so machen:ocmd:wanted(playerid,params[])
{
//Dein Command zeug hier rein
return 1;
}
wenn du denn dann erneut aufrufen willst, mach es dann so:
ocmd:su(playerid,params[])return ocmd_wanted(playerid,params);
Das klappt zu 100%Bitte genauer sagen.
Das sollte alles erklären -
Ja.
war aber wie ich meinen schrieb noch nicht da -
WTF Leute?!
Das geht gabz einfach.ocmd:befehl(playerid, params)
return ocmd_befehl2(playerid, params);
Das ist genau das selbe, nur dass ich es einfacher mit einem Define versehen habe.ZitatVom Prinzip her klappt es aber ich würd es sicherheitsmäßig so machen:
Was redest du von Sicherheit? Das ist genau das selbe nur nicht mit einem Define mit einem anderen Format versehen. -
breadfish.de
Hat das Thema geschlossen.