Naja ansich super aber man hätte noch mehr dazu machen können finde ich zb eine waschstraße
Beiträge von Twojeks
-
-
ihr habt doch ein taddl ? oder was ist der grund der suche ?
-
ja das auch, muss wohl am vielen YouTube Money liegen
-
Nach Bose schiken, wenn du noch garantie drauf hast, kann man sa bestimmt was regeln.
-
Externer Inhalt youtu.beInhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.
Kommt mir das nur so for oder wird unge immer dicker
-
Mit sscanf versuche es mal so
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];
}
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
end = stringPos - 1,
ch;
while ((ch = string[++end]) && ch != delim) {}
string[end] = '\0';
setarg(paramPos,0,_:floatstr(string[stringPos]));
string[end] = ch;
stringPos = end;
}
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;
} -
aber wie frage ich dann ab welche neon id das auto hat ?
//
ich habe 6 Farben diese werden mit neon 1 - 6 beim auto gespiechert 0 ist kein neon also wie soll es dann ohne abfrage gehen
-
Ich bin auch drauf gekommen grade xD war aber net zu 100% sicher aber ging jetzt
// oder auch net -.-
so habe ich es jetzt
LoadVehicles()
{
new neons[] = {18647, 18648, 18649, 18650, 18651, 18652};
new string[2000];
new File:handle, count;
new filename[2000], line[2000], s, key[64];
for(new i=1; i < MAX_DVEHICLES; i++)
{
format(filename, sizeof(filename), VEHICLE_FILE_PATH "v%d.ini", i);
if(!fexist(filename)) continue;
handle = fopen(filename, io_read);
while(fread(handle, line))
{
stripNewLine(line);
s = strfind(line, "=");
if(!line[0] || s < 1) continue;
strmid(key, line, 0, s++);
if(strcmp(key, "Created") == 0) VehicleCreated[i] = strval(line[s]);
else if(strcmp(key, "Model") == 0) VehicleModel[i] = strval(line[s]);
else if(strcmp(key, "Pos") == 0) sscanf(line[s], "p,ffff", VehiclePos[i][0], VehiclePos[i][1],
VehiclePos[i][2], VehiclePos[i][3]);
else if(strcmp(key, "Colors") == 0) sscanf(line[s], "p,dd", VehicleColor[i][0], VehicleColor[i][1]);
else if(strcmp(key, "Interior") == 0) VehicleInterior[i] = strval(line[s]);
else if(strcmp(key, "VirtualWorld") == 0) VehicleWorld[i] = strval(line[s]);
else if(strcmp(key, "Owner") == 0) strmid(VehicleOwner[i], line, s, sizeof(line));
else if(strcmp(key, "NumberPlate") == 0) strmid(VehicleNumberPlate[i], line, s, sizeof(line));
else if(strcmp(key, "Value") == 0) VehicleValue[i] = strval(line[s]);
else if(strcmp(key, "Lock") == 0) VehicleLock[i] = strval(line[s]);
else if(strcmp(key, "Alarm") == 0) VehicleAlarm[i] = strval(line[s]);
else if(strcmp(key, "Paintjob") == 0) VehiclePaintjob[i] = strval(line[s]);
else if(strcmp(key, "Neon") == 0) Neon[i] = strval(line[s]);
else
{
for(new t=0; t < sizeof(VehicleTrunk[]); t++)
{
format(string, sizeof(string), "Trunk%d", t+1);
if(strcmp(key, string) == 0) sscanf(line[s], "p,dd", VehicleTrunk[i][t][0], VehicleTrunk[i][t][1]);
}
for(new m=0; m < sizeof(VehicleMods[]); m++)
{
format(string, sizeof(string), "Mod%d", m);
if(strcmp(key, string) == 0) VehicleMods[i][m] = strval(line[s]);
}
}
switch(Neon[i])//wie mache ich das an besten mit den abfragen ?
{
case 1:
{
neon1[i] = CreateObject(neons[Neon[i]-1], 0, 0, 0, 0, 0, 0);
neon2[i] = CreateObject(neons[Neon[i]-1], 0, 0, 0, 0, 0, 0);
AttachObjectToVehicle(neon1[i], 0.94, 0, -0.48, 0, 0, 0);
AttachObjectToVehicle(neon2[i], -0.94, 0, -0.48, 0, 0, 0);
}
case 2:
{
neon1[i] = CreateObject(neons[Neon[i]-1], 0, 0, 0, 0, 0, 0);
neon2[i] = CreateObject(neons[Neon[i]-1], 0, 0, 0, 0, 0, 0);
AttachObjectToVehicle(neon1[i], 0.94, 0, -0.48, 0, 0, 0);
AttachObjectToVehicle(neon2[i], -0.94, 0, -0.48, 0, 0, 0);
}
case 3:
{
neon1[i] = CreateObject(neons[Neon[i]-1], 0, 0, 0, 0, 0, 0);
neon2[i] = CreateObject(neons[Neon[i]-1], 0, 0, 0, 0, 0, 0);
AttachObjectToVehicle(neon1[i], 0.94, 0, -0.48, 0, 0, 0);
AttachObjectToVehicle(neon2[i], -0.94, 0, -0.48, 0, 0, 0);
}
case 4:
{
neon1[i] = CreateObject(neons[Neon[i]-1], 0, 0, 0, 0, 0, 0);
neon2[i] = CreateObject(neons[Neon[i]-1], 0, 0, 0, 0, 0, 0);
AttachObjectToVehicle(neon1[i], 0.94, 0, -0.48, 0, 0, 0);
AttachObjectToVehicle(neon2[i], -0.94, 0, -0.48, 0, 0, 0);
}
case 5:
{
neon1[i] = CreateObject(neons[Neon[i]-1], 0, 0, 0, 0, 0, 0);
neon2[i] = CreateObject(neons[Neon[i]-1], 0, 0, 0, 0, 0, 0);
AttachObjectToVehicle(neon1[i], 0.94, 0, -0.48, 0, 0, 0);
AttachObjectToVehicle(neon2[i], -0.94, 0, -0.48, 0, 0, 0);
}
case 6:
{
neon1[i] = CreateObject(neons[Neon[i]-1], 0, 0, 0, 0, 0, 0);
neon2[i] = CreateObject(neons[Neon[i]-1], 0, 0, 0, 0, 0, 0);
AttachObjectToVehicle(neon1[i], 0.94, 0, -0.48, 0, 0, 0);
AttachObjectToVehicle(neon2[i], -0.94, 0, -0.48, 0, 0, 0);
}
}
}
fclose(handle);
if(VehicleCreated[i]) count++;
}
printf("Loaded %d vehicles", count);
}24 warnings
-
H
Brauchst mich nicht wiederholen.
Die Leute werden älter die Szene ist noch nicht tot jedoch sind mir zu wenig Spieler bzw zu wenige Server da.
Mir macht's kein Bock ich gehe ja auch inaktiv wieder.Hat nix mit älter werden zutun..
Jeder will ein Server machen und kann nicht mal richtig Scripten daran liegt es ganz einfach! -
Alles kla, Danke dir.
-
Guten Abend..
Ich wollte gerne die Neons die sich die Spieler anbringen speichern.
Dieses habe ich mit Nummern gemacht 1 = rot, 2 = gelb usw,
aber wie lasse ich diese jetzt an besten anbringen, beim laden der Fahrzeugen ?hier mal was ich bis jetzt habe
LoadVehicles()
{
new string[2000];
new File:handle, count;
new filename[2000], line[2000], s, key[64];
for(new i=1; i < MAX_DVEHICLES; i++)
{
format(filename, sizeof(filename), VEHICLE_FILE_PATH "v%d.ini", i);
if(!fexist(filename)) continue;
handle = fopen(filename, io_read);
while(fread(handle, line))
{
stripNewLine(line);
s = strfind(line, "=");
if(!line[0] || s < 1) continue;
strmid(key, line, 0, s++);
if(strcmp(key, "Created") == 0) VehicleCreated[i] = strval(line[s]);
else if(strcmp(key, "Model") == 0) VehicleModel[i] = strval(line[s]);
else if(strcmp(key, "Pos") == 0) sscanf(line[s], "p,ffff", VehiclePos[i][0], VehiclePos[i][1],
VehiclePos[i][2], VehiclePos[i][3]);
else if(strcmp(key, "Colors") == 0) sscanf(line[s], "p,dd", VehicleColor[i][0], VehicleColor[i][1]);
else if(strcmp(key, "Interior") == 0) VehicleInterior[i] = strval(line[s]);
else if(strcmp(key, "VirtualWorld") == 0) VehicleWorld[i] = strval(line[s]);
else if(strcmp(key, "Owner") == 0) strmid(VehicleOwner[i], line, s, sizeof(line));
else if(strcmp(key, "NumberPlate") == 0) strmid(VehicleNumberPlate[i], line, s, sizeof(line));
else if(strcmp(key, "Value") == 0) VehicleValue[i] = strval(line[s]);
else if(strcmp(key, "Lock") == 0) VehicleLock[i] = strval(line[s]);
else if(strcmp(key, "Alarm") == 0) VehicleAlarm[i] = strval(line[s]);
else if(strcmp(key, "Paintjob") == 0) VehiclePaintjob[i] = strval(line[s]);
else if(strcmp(key, "Neon") == 0) Neon[i] = strval(line[s]);
else
{
for(new t=0; t < sizeof(VehicleTrunk[]); t++)
{
format(string, sizeof(string), "Trunk%d", t+1);
if(strcmp(key, string) == 0) sscanf(line[s], "p,dd", VehicleTrunk[i][t][0], VehicleTrunk[i][t][1]);
}
for(new m=0; m < sizeof(VehicleMods[]); m++)
{
format(string, sizeof(string), "Mod%d", m);
if(strcmp(key, string) == 0) VehicleMods[i][m] = strval(line[s]);
}
}
switch(Neon[i])//wie mache ich das an besten mit den abfragen ?
{
case 1:
{
neon1[i] = CreateObject(18647, 0, 0, 0, 0, 0, 0);
neon2[i] = CreateObject(18647, 0, 0, 0, 0, 0, 0);
AttachObjectToVehicle(neon1[i), 0.94, 0, -0.48, 0, 0, 0);
AttachObjectToVehicle(neon2[i), -0.94, 0, -0.48, 0, 0, 0);
}
}
}
fclose(handle);
if(VehicleCreated[i]) count++;
}
printf("Loaded %d vehicles", count);
} -
Ach da sieht man das danke
-
Mal so ne off topic frage was bringt ein jetzt YouTube premium habe es mir mal grade gegönnt aber was nun ?
-
Was heißt es hat nicht genau funktioniert ?
error im Script ? lässt du es auch der Playerid beim Connecten anzeigen mit TextDrawShowForPlayer -
Hmm kommisch den die 1050ti hat eig auch einen externen strom anschluss, Ich selber habe die gleiche.
Es wird wohl am Arbeitsspeicher liegen, Ich hatte auch ständige ruckler dann habe ich meinen von 8gb auf 16 erhöht. -
Brauchst ja nicht gleich mit Kind kommen, bist wohl auch noch eins, wenn du gleich so abgehst!
"Im strom gesteckt" Meint er wohl, ob deine Grafikkarte externen Strom bekommt... -
Bie mir geht dieser kommische player da nicht
-
Nice kann immer gut gebrauchen weiter so!
-
Wie du am auspacken bist ey
häftig weiter so -
Ein System, was ein User als Verifizierter Verkäufer anzeigt, wer doch ehr was für so ein fall.