Fraktionssperre

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
  • Guten Tag,
    ich wollte mal fragen wie ich hier 14 Tage als Fraktionssperre draufrechnen kann ?


    //edit
    Hat jemand eine Lösung ?

  • Fraktionssperre (14 Tage) geben:
    pInfo[playerid][pFSperre] = gettime()+(14*24*60*60); // 14 Tage


    Fraktionsperre abfragen:
    if(pInfo[playerid][pFSperre] > gettime())return SendClientMessage(playerid,-1,"Du hast eine Fraktionssperre");

  • Habe es jetze so


    Code
    [28/11/2016 19:14:28] [debug] Run time error 4: "Array index out of bounds"
    [28/11/2016 19:14:28] [debug]  Accessing element at index 12 past array upper bound 11
    [28/11/2016 19:14:28] [debug] AMX backtrace:
    [28/11/2016 19:14:28] [debug] #0 00006680 in ?? (868, 344588, 344584, 344580, 344576, 344572, 344568, 1, 0) from auftrag.amx
    [28/11/2016 19:14:28] [debug] #1 000086b4 in public OnDialogResponse (0, 1, 1, -1, 328252) from auftrag.amx
  • @Jeffry:

  • Das passt.
    Weiß du zufällig, welches Array mit[12] deklariert wurde?


    Falls nicht, setze in dem Code prints zwischen jede Zeile und schaue, welcher print als letztes ausgeführt wird.
    In der darunter liegenden Zeile liegt dann der Fehler. Poste diese dann nochmal.


  • Der Fehler liegt hier:
    TimestampToDate(pInfo[playerid][pFSperre],yea,mon,day,hou,minn,sec,1);


    Ich nehme an, TimestampToDate greift falsch auf das Monatsarray zu.


    Ändere dort:
    if(day > MonthTimes[month][IsLeapYear(year)])


    zu:


    if(day > MonthTimes[month-1][IsLeapYear(year)])

  • Beitrag von reaL. ()

    Dieser Beitrag wurde vom Autor aus folgendem Grund gelöscht: Funktioniert ().