Hallo
Ich habe mich nach Langer Zeit wieder an Pawno Gesetzt.
Nun bin ich mal an einem kleinen Event FS dran, und Hänge bei dem Ersten Befehl schon fest...
Also ich habe einen Befehl gemacht, der beim BSN 20 Cars Erstellen soll.
Der Befehl ist so Aufgebaut:
ocmd:eventbsn(playerid,params[])
{
new id;
new co;
new ct;
if(sscanf(params,"i,co,ct",id,co,ct))return SendClientMessage(playerid,ROT,"Fehler: /eventbsn [VEHICLE ID][COLOR 1][COLOR 2]");
eventcars[1]=CreateVehicle(id,1145.9736,-942.0306,42.5024,272.7842,co,ct); //
eventcars[2]=CreateVehicle(id,1146.1125,-946.5784,42.4445,274.4365,co,ct); //
eventcars[3]=CreateVehicle(id,1146.3723,-951.1208,42.4010,271.6572,co,ct); //
eventcars[4]=CreateVehicle(id,1146.9584,-956.7719,42.3249,274.4398,co,ct); //
eventcars[5]=CreateVehicle(id,1138.7883,-957.8126,42.2379,273.4653,co,ct); //
eventcars[6]=CreateVehicle(id,1138.7454,-951.7279,42.3066,273.6048,co,ct); //
eventcars[7]=CreateVehicle(id,1138.6655,-947.5541,42.3499,273.9111,co,ct); //
eventcars[8]=CreateVehicle(id,1138.2589,-942.5594,42.4079,272.7651,co,ct); //
eventcars[9]=CreateVehicle(id,1130.3890,-942.9890,42.4072,270.6689,co,ct); //
eventcars[10]=CreateVehicle(id,1130.8212,-947.9210,42.3262,271.6807,co,ct); //
eventcars[11]=CreateVehicle(id,1131.1960,-952.3186,42.3017,271.7219,co,ct); //
eventcars[12]=CreateVehicle(id,1131.4958,-957.8608,42.2448,271.8199,co,ct); //
eventcars[13]=CreateVehicle(id,1122.9700,-957.9522,42.2695,271.3593,co,ct); //
eventcars[14]=CreateVehicle(id,1122.7120,-952.6318,42.3152,273.8594,co,ct); //
eventcars[15]=CreateVehicle(id,1122.1904,-948.0050,42.3503,275.3033,co,ct); //
eventcars[16]=CreateVehicle(id,1122.3707,-943.3616,42.4165,272.1662,co,ct); //
eventcars[17]=CreateVehicle(id,1113.3339,-943.5350,42.4176,273.7333,co,ct); //
eventcars[18]=CreateVehicle(id,1113.8436,-948.0708,42.3782,270.9218,co,ct); //
eventcars[19]=CreateVehicle(id,1114.4818,-953.1588,42.3009,273.8290,co,ct); //
eventcars[20]=CreateVehicle(id,1115.0529,-958.2851,42.2981,271.3428,co,ct); //
return 1;
}
Info: co und ct sollen die Farben sein der Cars, also
co = color one
ct = color two
Hier der SSCANF Code:
//-------------sscanf------------//
INFO: Der Fehler beim Code ist in Zeile 174.
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;
id = end - stringPos;
foreach (Player, playerid)
{
GetPlayerName(playerid, name1, sizeof (name1)); //Hier ist die Error Zeile mit dem Name1, also Zeile 499
if (!strcmp(name1, 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;
}
Das sind die Errors
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(51) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(52) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(53) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(54) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(55) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(56) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(57) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(58) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(59) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(60) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(61) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(62) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(63) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(64) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(65) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(66) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(67) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(68) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(69) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(70) : warning 202: number of arguments does not match definition
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(449) : error 017: undefined symbol "name1"
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(449) : error 017: undefined symbol "name1"
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(449) : error 029: invalid expression, assumed zero
C:\Dokumente und Einstellungen\Test\Eigene Dateien\Datein\gamerforces selfmade\filterscripts\eventz.pwn(449) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
Die Warnings sind in Jeder Zeile wo ein Car Erstellt wird, ein Warning.
Ich danke für die Hilfe im Vorraus
MFG Raphael
//E Hinzugefügt.