ich habe gerade einen /givegun befehl gescriptet und jetze gibt er keine waffe ???
ocmd:givegun(playerid,params[])
{
new pID, weapon, ammunation;
if(sscanf(params,"udd",pID))return SendClientMessage(playerid,ROT,"Benutze /givegun[playerid] [waffen ID] [munition]");
if(weapon < 0 || weapon > 54)return SendClientMessage(playerid,ROT, "Error: Bitte gib eine gültige Waffen-ID an (0-54)!");
GivePlayerWeapon(pID, weapon, ammunation);
return 1;
}
/giveweapon
- xSnake
- 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
-
-
if(sscanf(params,"udd",pID))
Zu
if(sscanf(params,"udd",pID, weapon, ammunation)) -
if(sscanf(params,"udd",pID))
Zu
if(sscanf(params,"udd",pID, weapon, ammunation))
Danke so funktioniert es
wie könnte ich das jetze einfügen wenn ich /givegun 5 eingebe und das absende er mir die Liste der Weapons und der Ids anzeigt ?
z.b 5 als id -
wie könnte ich das jetze einfügen wenn ich /givegun 5 eingebe und das absende er mir die Liste der Weapons und der Ids anzeigt ?
Mit der ID meinst du dann was genau? (Das er eine Liste mit der ID 5 aufruft, oder was?) -
Mit der ID meinst du dann was genau? (Das er eine Liste mit der ID 5 aufruft, oder was?)
Nein damit meine ich das wenn er das eingibt und absendet kommt
z.b
========== Weapon ID's ==========
Dealge 24,Mp5 29...... -
Einfach in den Befehl ein paar Nachrichten aussenden?
SendClientMessage(playerid, FARBE, "========== Weapon ID's ==========");
SendClientMessage(playerid, FARBE, "Dealge 24,Mp5 29......"); -
Einfach in den Befehl ein paar Nachrichten aussenden?
SendClientMessage(playerid, FARBE, "========== Weapon ID's ==========");
SendClientMessage(playerid, FARBE, "Dealge 24,Mp5 29......");
egal ich mach einen Neuen Befehl trotzdem Danke -
Kann es dir leider nicht im Befehl machen, dazu habe ich gerade weniger die Lust und mir fehlt ein guter Editor in dem ich das ganze machen kann mit einem gescheiten Zeilenumbruch. Jedenfalls brauchst du kein neuen Befehl.
-
Kann es dir leider nicht im Befehl machen, dazu habe ich gerade weniger die Lust und mir fehlt ein guter Editor in dem ich das ganze machen kann mit einem gescheiten Zeilenumbruch. Jedenfalls brauchst du kein neuen Befehl.
naja hab erstmal ein Neuen befehl gemacht beschäftige mich damit später -
Sorry nicht getestet wenn dort was falsch ist selber Korrigieren
Ganz unten im script:
stock SpielerName(playerid)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
return name;
}und dann zu deine ocmd commands
ocmd:giveweapon(playerid,params[])
{
new pID,waffe,muni;
if(sscanf(params,"uii",pID,waffe,muni))return SendClientMessage(playerid,-1," INFO: /giveweapon[playerid/name][waffe][munition]");
if(waffe <1||waffe >54)return SendClientMessage(playerid,-1," Info: Waffe darf nicht unter 1 sein und nicht über 54");
if(waffe <1||waffe >500)return SendClientMessage(playerid,-1," Info: Munitione darf nicht unter 1 sein und nicht über 500");
GivePlayerWeapon(pID,waffe,muni);
new string[128];
format(string,128,"* %s hat dir die WaffenID(%d) mit (%d) Munition.",SpielerName(playerid),waffe,muni);
SendClientMessage(pID,-1,string);
format(string,128,"* Du hast %s die WaffenID(%d) mit (%d) Munition.",SpielerName(pID),waffe,muni);
SendClientMessage(playerid,-1,string);
return 1;
}Viel Spaß
Mit freundelichen grüßen
Pascal -
Beitrag von xSnake ()
Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar. -
ich habe gerade den Befehl ein bisschen Verbessert jetze kommt das raus
[13:56:54] Du hast [RGR]Snake eine gegeben mit 50 Muni
[13:56:54] Du hast von [RGR]Snake eine bekommen mit 50 Muniif(!isAdmin(playerid,3)) return SendClientMessage(playerid,ROT,"Info: Du bist dazu nicht befugt!");
new pID, weapon, ammunation;
if(sscanf(params,"udd",pID, weapon, ammunation))return SendClientMessage(playerid,ROT,"Benutze /givegun [playerid] [waffen ID] [munition]");
if(weapon < 0 || weapon > 54)return SendClientMessage(playerid,ROT, "Error: Bitte gib eine gültige Waffen-ID an (0-54)!");
GivePlayerWeapon(pID, weapon, ammunation);
new string[128];
format(string, sizeof(string),"Du hast %s eine %s gegeben mit %i Muni",getPlayerName(pID), weapon, ammunation);
SendClientMessage(playerid, ROT, string);
format(string, sizeof(string),"Du hast von %s eine %s bekommen mit %i Muni",getPlayerName(playerid), weapon, ammunation);
SendClientMessage(pID, ROT, string);
return 1; -
ich habe gerade den Befehl ein bisschen Verbessert jetze kommt das raus
[13:56:54] Du hast [RGR]Snake eine gegeben mit 50 Muni
[13:56:54] Du hast von [RGR]Snake eine bekommen mit 50 Muniif(!isAdmin(playerid,3)) return SendClientMessage(playerid,ROT,"Info: Du bist dazu nicht befugt!");
new pID, weapon, ammunation;
if(sscanf(params,"udd",pID, weapon, ammunation))return SendClientMessage(playerid,ROT,"Benutze /givegun [playerid] [waffen ID] [munition]");
if(weapon < 0 || weapon > 54)return SendClientMessage(playerid,ROT, "Error: Bitte gib eine gültige Waffen-ID an (0-54)!");
GivePlayerWeapon(pID, weapon, ammunation);
new string[128];
format(string, sizeof(string),"Du hast %s eine %s gegeben mit %i Muni",getPlayerName(pID), weapon, ammunation);
SendClientMessage(playerid, ROT, string);
format(string, sizeof(string),"Du hast von %s eine %s bekommen mit %i Muni",getPlayerName(playerid), weapon, ammunation);
SendClientMessage(pID, ROT, string);
return 1;
Und was genau klappt da nicht? -
Das Problem ist:
format(string, sizeof(string),"Du hast %s eine %s gegeben mit %i Muni",getPlayerName(pID), weapon, ammunation);
SendClientMessage(playerid, ROT, string);format(string, sizeof(string),"Du hast von %s eine %s bekommen mit %i Muni",getPlayerName(playerid), weapon, ammunation);
SendClientMessage(pID, ROT, string);Wenn du das so machst und dann bei pID nach getPlayerName(playerid) fragst, dann frägst du ja praktisch nach seinem eigenen Namen.
Du brauchst also eine globale Variable, habe gerade das selbe Problem noch nie gemacht -
[13:56:54] Du hast [RGR]Snake eine (hier sollte die waffe stehen gegeben mit 50 Muni
[13:56:54] Du hast von [RGR]Snake eine (hier sollte die waffe stehen) bekommen mit 50 Muni -
Hey,
versuche es mal so:
if(!isAdmin(playerid,3)) return SendClientMessage(playerid,ROT,"Info: Du bist dazu nicht befugt!");
new pID, weapon, ammunation;
if(sscanf(params,"udd",pID, weapon, ammunation))return SendClientMessage(playerid,ROT,"Benutze /givegun [playerid] [waffen ID] [munition]");
if(weapon < 0 || weapon > 54)return SendClientMessage(playerid,ROT, "Error: Bitte gib eine gültige Waffen-ID an (0-54)!");
GivePlayerWeapon(pID, weapon, ammunation);
new string[128],gunname[32];
GetWeaponName(weapon,gunname,sizeof(gunname)); //Waffenname auslesen
format(string, sizeof(string),"Du hast %s eine %s gegeben mit %i Muni",getPlayerName(pID), gunname, ammunation);
SendClientMessage(playerid, ROT, string);
format(string, sizeof(string),"Du hast von %s eine %s bekommen mit %i Muni",getPlayerName(playerid), gunname, ammunation);
return SendClientMessage(pID, ROT, string);Du hast einen Integer als String ausgegeben.. -> Deswegen stand dort nichts.
Außerdem musst du den Waffennamen auslesen! -
Hey,
versuche es mal so:
if(!isAdmin(playerid,3)) return SendClientMessage(playerid,ROT,"Info: Du bist dazu nicht befugt!");
new pID, weapon, ammunation;
if(sscanf(params,"udd",pID, weapon, ammunation))return SendClientMessage(playerid,ROT,"Benutze /givegun [playerid] [waffen ID] [munition]");
if(weapon < 0 || weapon > 54)return SendClientMessage(playerid,ROT, "Error: Bitte gib eine gültige Waffen-ID an (0-54)!");
GivePlayerWeapon(pID, weapon, ammunation);
new string[128],gunname[32];
GetWeaponName(weapon,gunname,sizeof(gunname)); //Waffenname auslesen
format(string, sizeof(string),"Du hast %s eine %s gegeben mit %i Muni",getPlayerName(pID), gunname, ammunation);
SendClientMessage(playerid, ROT, string);
format(string, sizeof(string),"Du hast von %s eine %s bekommen mit %i Muni",getPlayerName(playerid), gunname, ammunation);
return SendClientMessage(pID, ROT, string);Du hast einen Integer als String ausgegeben.. -> Deswegen stand dort nichts.
Außerdem musst du den Waffennamen auslesen!
danke funktioniert -
breadfish.de
Hat das Thema geschlossen.