Guten Tag,
Mein Name lautet MrPawn.
Und zwar denke ich bin ich zu müde um noch gescheit zu denken.
Und zwar geht es um mein Alters System:
if(dialogid == DIALOG_ALTER)
{
if(!response) {
ShowPlayerMenu(playerid, "Register");
mysql_real_escape_string(PlayerInfo[playerid][pName], PlayerInfo[playerid][pName]);
new query[154];
format(query, sizeof(query), "DELETE FROM `Benutzerkonten` WHERE `Benutzername` = '%s'", PlayerInfo[playerid][pName]);
mysql_query(query);
}
if(response) {
new J,M,T;
getdate(J,M,T);
new DatumInfo[3][20], string[128];
split(inputtext,DatumInfo,'.');
if(!strlen(inputtext))
{
SendClientMessage(playerid, ROT, "Falsches Format (TAG.MONAT.JAHR)");
ShowPlayerMenu(playerid, "Alter");
}
if(strlen(inputtext) > 10)
{
SendClientMessage(playerid, ROT, "Falsches Format (TAG.MONAT.JAHR)");
ShowPlayerMenu(playerid, "Alter");
return 1;
}
if(!IsValidDate(strval(DatumInfo[0]),strval(DatumInfo[1]),strval(DatumInfo[2])))
{
SendClientMessage(playerid, ROT, "Falsches Format (TAG.MONAT.JAHR)");
ShowPlayerMenu(playerid, "Alter");
return 1;
}
if(J - strval(DatumInfo[2]) > 100 || strval(DatumInfo[2]) < 1 || strval(DatumInfo[2]) >= J)
{
SendClientMessage(playerid, ROT, "Falsches Format (TAG.MONAT.JAHR)");
ShowPlayerMenu(playerid, "Alter");
return 1;
}
new check = J - strval(DatumInfo[2]);
if(check == J)
{
SendClientMessage(playerid, ROT, "Falsches Format (TAG.MONAT.JAHR)");
ShowPlayerMenu(playerid, "Alter");
return 1;
}
if(strval(DatumInfo[1]) > M)
{
check -= 1;
}
else if(strval(DatumInfo[1]) == M && strval(DatumInfo[0]) > T)
{
check -= 1;
}
if(check < 0 || check > 65)
{
SendClientMessage(playerid, ROT, "Falsches Format (TAG.MONAT.JAHR)");
ShowPlayerMenu(playerid, "Alter");
return 1;
}
format(string, sizeof(string), "Ok, du bist also %i Jahre Jung/Alt.", check);
SendClientMessage(playerid, GRAU, string);
ShowPlayerMenu(playerid, "Geschlecht");
}
}
Dieser Quelltext wird garnicht erst aufgerufen (noch nicht geprintet)
Also #ERROS werden schon angezeigt, aber ingame passiert da dann nichts!
Wenn ich split garnicht im Script habe, dann zeig er mir aber keinen Error an. Sobald ich Split einfüge kommt der Fehler:
error 025: function heading differs from prototype
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
1 Error.
stock split(const strsrc[], strdest[][], delimiter)
{
new i, li;
new aNum;
new len;
while(i <= strlen(strsrc))
{
if(strsrc[i] == delimiter || i == strlen(strsrc))
{
len = strmid(strdest[aNum], strsrc, li, i, 128);
strdest[aNum][len] = 0;
li = i+1;
aNum++;
}
i++;
}
return 1;
}
EDIT: Es lag an dem MySQL Include
Da war auch ein Split drinne, leider kein nützliches für mich