Hilfe beim Öffnungszeiten

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
  • Bekomme ich nicht hin. Ich möchte es so machen damit



    if(pickupid==ammuenter)
    {
    new hour,min,sec;
    gettime(hour,min,sec);
    if(hour < 8 || hour > 22)
    SetPlayerPos(playerid,286.148986,-40.644397,1001.515625);
    SetPlayerInterior(playerid,1);
    GameTextForPlayer(playerid,"~g~Du hast den Ammunation betreten.",3000,3);
    }
    Doch bei mir kommen errors.


    Zeile (6289) : Variable "min" wurde mehrmals deklariert

  • Spricht doch schon für sich der Error.
    min ist irgendwo anders definiert. Benenne "min" einfach zu "amin" oder "bmin" oder meinetwegen auch "cmin" um :D
    Wenn ich mich nicht täusche, kannst du min und sec aber auch komplett weglassen, schließlich brauchst du ja nur die Stunde.
    Wäre dann:

    //...
    new hour;
    gettime(hour);
    //...

    Bin mir da aber nicht sicher, ansonsten halt umbenennen, wie oben beschrieben.


    MFG
    Ben

  • Ja, "min" wurde halt schonmal deklariert. Nenne "min" einfach um.
    Also, dein Ammunation soll nur zwischen 22 und 8 Uhr auf sein? Also in der Nacht.
    Dann mach es so:

    if(pickupid == ammuenter)
    {
    new stunde,minute,sekunde;
    gettime(stunde,minute,sekunde);
    if(hour < 8 || hour > 22)
    {
    SetPlayerPos(playerid,286.148986,-40.644397,1001.515625);
    SetPlayerInterior(playerid,1);
    GameTextForPlayer(playerid,"~g~Du hast den Ammunation betreten.",3000,3);
    return 1;
    }
    else
    {
    SendClientMessage(playerid, -1, "Geschlossen, Komme zwischen 22 Uhr und 8 Uhr wieder.");
    return 1;
    }
    }
    ;)

  • Wenn ich zum Ammunation gehe ist der Ammunatione zu obwohl ich 14-15 Uhr gemacht habe zum Testen


    if(pickupid == ammuenter)
    {
    new stunde,minute,sekunde;
    gettime(stunde,minute,sekunde);
    if(stunde < 14 || stunde > 15)
    {
    SetPlayerPos(playerid,286.148986,-40.644397,1001.515625);
    SetPlayerInterior(playerid,1);
    GameTextForPlayer(playerid,"~g~Du hast den Ammunation betreten.",3000,3);
    return 1;
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED1, "Geschlossen, Komme zwischen 14 Uhr und 15 Uhr wieder.");
    return 1;
    }
    }

  • Schaue dir deinen Code nochmal genau an.


    Du prüfst, ob stunde kleiner als 14 oder größer als 15 ist, wenn ja, lässt du den Spieler rein. Wenn du möchtest, das zwischen 14 Uhr und 15 Uhr geöffnet ist, ist die Uhrzeit nunmal 14 oder 15, und nicht kleiner als 14 oder größer als 15. Beide Fälle treffen nicht zu.

  • if(pickupid == ammuenter)
    {
    new stunde,minute,sekunde;
    gettime(stunde,minute,sekunde);
    if(stunde>=12 || stunde==0)
    {
    SetPlayerPos(playerid,286.148986,-40.644397,1001.515625);
    SetPlayerInterior(playerid,1);
    GameTextForPlayer(playerid,"~g~Du hast den Ammunation betreten.",3000,3);
    return 1;
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED1, "Geschlossen, Komme zwischen 12 Uhr und 24 Uhr wieder.");
    return 1;
    }
    }


    //edit Fehler behoben.

  • //EDIT


    Ist das jetz bis 1 Uhr auch offen oder wie?