hallo,
ich habe eine Frage:
Kann wer den Code posten wo ich mit nem befehl nen Auto wie aus dem noxs bekomme?
mfg coolerboy1
hallo,
ich habe eine Frage:
Kann wer den Code posten wo ich mit nem befehl nen Auto wie aus dem noxs bekomme?
mfg coolerboy1
Was meinst du mit "noxs" ?
Warscheinlich n Server oder so..
Er braucht einfach nen /veh [ID] [farbe 1] [farbe 2] code
ich meine nixs sry
ja brauche /veh code
Erst OCMD herunterladen und in Ordner /pawno/includes/ legen.
ocmd: http://uploaded.to/file/y8yffe
GameMode öffnen (mit Pawno).
Ganz oben im Script diese Code einfügen:
#include <ocmd>
und ganz unten fügst du sscanf code ein:
stock sscanf(string[], format[], {Float,_}:...) { #if defined isnull if (isnull(string)) #else if (string[0] == 0 || (string[0] == 1 && string[1] == 0)) #endif { return format[0]; } #pragma tabsize 4 new formatPos = 0, stringPos = 0, paramPos = 2, paramCount = numargs(), delim = ' '; while (string[stringPos] && string[stringPos] <= ' ') { stringPos++; } while (paramPos < paramCount && string[stringPos]) { switch (format[formatPos++]) { case '\0': { return 0; } case 'i', 'd': { new neg = 1, num = 0, ch = string[stringPos]; if (ch == '-') { neg = -1; ch = string[++stringPos]; } do { stringPos++; if ('0' <= ch <= '9') { num = (num * 10) + (ch - '0'); } else { return -1; } } while ((ch = string[stringPos]) > ' ' && ch != delim); setarg(paramPos, 0, num * neg); } case 'h', 'x': { new num = 0, ch = string[stringPos]; do { stringPos++; switch (ch) { case 'x', 'X': { num = 0; continue; } case '0' .. '9': { num = (num << 4) | (ch - '0'); } case 'a' .. 'f': { num = (num << 4) | (ch - ('a' - 10)); } case 'A' .. 'F': { num = (num << 4) | (ch - ('A' - 10)); } default: { return -1; } } } while ((ch = string[stringPos]) > ' ' && ch != delim); setarg(paramPos, 0, num); } case 'c': { setarg(paramPos, 0, string[stringPos++]); } case 'f': { new changestr[16], changepos = 0, strpos = stringPos; while(changepos < 16 && string[strpos] && string[strpos] != delim) { changestr[changepos++] = string[strpos++]; } changestr[changepos] = '\0'; setarg(paramPos,0,_:floatstr(changestr)); } case 'p': { delim = format[formatPos++]; continue; } case '\'': { new end = formatPos - 1, ch; while ((ch = format[++end]) && ch != '\'') {} if (!ch) { return -1; } format[end] = '\0'; if ((ch = strfind(string, format[formatPos], false, stringPos)) == -1) { if (format[end + 1]) { return -1; } return 0; } format[end] = '\''; stringPos = ch + (end - formatPos); formatPos = end + 1; } case 'u': { new end = stringPos - 1, id = 0, bool:num = true, ch; while ((ch = string[++end]) && ch != delim) { if (num) { if ('0' <= ch <= '9') { id = (id * 10) + (ch - '0'); } else { num = false; } } } if (num && IsPlayerConnected(id)) { setarg(paramPos, 0, id); } else { #if !defined foreach #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2)) #define __SSCANF_FOREACH__ #endif string[end] = '\0'; num = false; new name[MAX_PLAYER_NAME]; id = end - stringPos; foreach (Player, playerid) { GetPlayerName(playerid, name, sizeof (name)); if (!strcmp(name, string[stringPos], true, id)) { setarg(paramPos, 0, playerid); num = true; break; } } if (!num) { setarg(paramPos, 0, INVALID_PLAYER_ID); } string[end] = ch; #if defined __SSCANF_FOREACH__ #undef foreach #undef __SSCANF_FOREACH__ #endif } stringPos = end; } case 's', 'z': { new i = 0, ch; if (format[formatPos]) { while ((ch = string[stringPos++]) && ch != delim) { setarg(paramPos, i++, ch); } if (!i) { return -1; } } else { while ((ch = string[stringPos++])) { setarg(paramPos, i++, ch); } } stringPos--; setarg(paramPos, i, '\0'); } default: { continue; } } while (string[stringPos] && string[stringPos] != delim && string[stringPos] > ' ') { stringPos++; } while (string[stringPos] && (string[stringPos] == delim || string[stringPos] <= ' ')) { stringPos++; } paramPos++; } do { if ((delim = format[formatPos++]) > ' ') { if (delim == '\'') { while ((delim = format[formatPos++]) && delim != '\'') {} } else if (delim != 'z') { return delim; } } } while (delim > ' '); return 0; }
und als nächstet zwichen OnPlayerCommandText und OnPlayerText fügst du diese Code ein:
ocmd:veh(playerid,params[])
{
new vehid, color1, color2;
if(sscanf(params,"ddd",vehid,color1,color2)) return SendClientMessage(playerid,0xFF0000FF,"Verwendung: /veh [VehicleID] [Color] [Color2]");
{
if(vehid > 611 || vehid < 400 || color1 > 252 || color1 < 0 || color2 > 252 || color2 < 0)
{
SendClientMessage(playerid,0xFF0000FF,"Vehicle ID (400-611) | Color ID (0-252)");
}
else {
new Float:x, Float:y, Float:z, Float:a;
GetPlayerPos(playerid,x,y,z);
GetPlayerFacingAngle(playerid,a);
CreateVehicle(vehid,x+1,y+1,z,a,color1,color2,50000000000);
}
}
return 1;
}
Oder er lernt es gleich richtig und verwendet strcmp und CreateVehicle ...
Meiner Meinung nach sind die ganzen acmd, bcmd, blablabla für die faulen oder die, die es nicht verstehen oder lernen können.
Soo schwer ist strcmp auch nicht.
kann mir wer das mit dem stock einrücken??