Alter ermitteln Problem

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
  • Hallo,


    ich habe ein Problem mit dem ermitteln des Alters eines Spielers. Es wir immer auf 2011 gesetzt..


    Code:


    if(dialogid == DIALOG_REGSTEP_2)
    {
    new year, month,day;
    getdate(year, month, day);
    new DateInfo[3][20];
    split(inputtext, DateInfo, '.');
    if(response == 1)
    if (strlen(inputtext) > 10) { // nicht länger als 10 zeichen (xx/xx/xxxx)
    ShowPlayerDialog(playerid,DIALOG_REGSTEP_2,DIALOG_STYLE_INPUT,"Alter","Angabefehler: Wann bist du geboren?\nAngabe bitte in TT.MM.JJJJ","Weiter","Abbrechen");
    return 0;
    }
    if (!IsValidDate(strval(DateInfo[0]),strval(DateInfo[1]),strval(DateInfo[2]))) {
    ShowPlayerDialog(playerid,DIALOG_REGSTEP_2,DIALOG_STYLE_INPUT,"Alter","Angabefehler: Wann bist du geboren?\nAngabe bitte in TT.MM.JJJJ","Weiter","Abbrechen");
    return 0;
    }
    if(year - strval(DateInfo[2]) > 100 || strval(DateInfo[2]) < 1 || strval(DateInfo[2]) >= year)
    {
    ShowPlayerDialog(playerid,DIALOG_REGSTEP_2,DIALOG_STYLE_INPUT,"Alter","Angabefehler: Wann bist du geboren?\nAngabe bitte in TT.MM.JJJJ","Weiter","Abbrechen");
    return 0;
    }
    new check = year - strval(DateInfo[2]);
    if(check == year)
    {
    ShowPlayerDialog(playerid,DIALOG_REGSTEP_2,DIALOG_STYLE_INPUT,"Alter","Angabefehler: Wann bist du geboren?\nAngabe bitte in TT.MM.JJJJ","Weiter","Abbrechen");
    return 0;
    }
    if(strval(DateInfo[1]) > month)
    {
    check -= 1;
    }
    else if(strval(DateInfo[1]) == month && strval(DateInfo[0]) > day)
    {
    check -= 1;
    }
    PlayerInfo[playerid][pAge] = check;
    OnPlayerSave(playerid);
    format(string, sizeof(string), "Ok, du bist also %d Jahre alt.",PlayerInfo[playerid][pAge]);
    SendClientMessage(playerid, COLOR_WHITE, string);
    RegistrationStep[playerid] = 3;
    ShowPlayerDialog(playerid,DIALOG_REGSTEP_3,DIALOG_STYLE_LIST,"Woher kommst du?","Deutschland\nÖsterreich\nSchweiz","Weiter","Abbrechen");
    if(response == 0){
    ShowPlayerDialog(playerid,DIALOG_REGSTEP_2,DIALOG_STYLE_INPUT,"Alter","ANGABEFEHLER:Wann bist du geboren?\nAngabe bitte in TT.MM.JJJJ","Weiter","Abbrechen");
    }
    }


    Ich hoffe mir kann jemand helfen ;)