Textdraws & 10 Minuten System

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
  • Ich hätte mal 2 fragen:

    Code
    Frage (1): 
    
    
    Ich wollte so machen das mann nach dem ernten eine speere von 10 minuten bekommt sozusagen mann kann nur alle 10 minuten ernten 
    also mann erntet dann eine 10 minuten speere und kann wieder ernten und so weiter nun soll er es aber in die ini speichern beim off gehen
    hat da jemand eine idee wie ich das am besten mache?


    Code
    Frage (2):
    
    
    Ich wollte wenn er am ernten ist ein textdraw erstellen Korn: Menge über der minimap unten links doch wie mache ich sowas das er das auch
    pro checkpoint updatet und ich es nicht 10000 textdraws erstellen muss für die neuen werte also sozusagen Updaten so das es immer aktuell 
    ist kann mir da jemand vlt weiter helfen?


    LG. Qini :)

  • 1. Such mal nach Timestamp bzw. Zeitstempel. Hier im Forum gibts ein Tutorial dazu
    2. OnPlayerEnterCheckpoint --> TextDrawSetString


    Nicht jeder, der sich für super hält, ist ein Superheld. :love:
    ------------------------------------------------------------------------------------------------

  • Mit Timestamp verstehe ich das nicht so wirklich kann mir das vlt jemand genauer erklären mit dem Speichern
    und die anzahl von 10 minuten usw?


    (E) Und hatte jemand vlt nen tool oder die koordienaten über der minimap für mich?

  • Timestamp ist die Anzahl der Sekunden, die seit dem 1. Januar 1970 um 0 Uhr vergangen sind.
    D.h. du holst dir den aktuellen Timestap ( gettime(...) returnt diesen)
    dann addierst du deine Zeit hinzu ( in Sekunden) --> + 10*60
    Dann einfach bei dem Befehl zum starten des Farmens anfragen ob der aktuelle Timestamp kleiner ist als der gespeicherte, wenn dies der Fall ist, ist die Zeit noch nicht vergangen.


    Um die Koordinaten rauszufinden empfehle ich Zamaroths Ingame TextDraw Editor aus dem Englischen Forum.


    Nicht jeder, der sich für super hält, ist ein Superheld. :love:
    ------------------------------------------------------------------------------------------------

  • So ich habe es nun so:


    if(IsAMehdrescher(vehicleid) && newstate != PLAYER_STATE_PASSENGER)
    {
    if(Now() < PlayerInfo[playerid][Ezeit])
    {
    SendClientMessage(playerid,Grün,"Ernte nun das Korn, Folge dazu den Checkpoints.");
    SetPlayerCheckpoint(playerid,9.6556,35.6109,3.1172,5.0);
    Arbeiten[playerid] = 1;
    return 1;
    }
    else
    {
    SendClientMessage(playerid,Rot,"Sie können nur alle 5 minuten das Korn ernten!");
    RemovePlayerFromVehicle(playerid);
    }
    return 1;
    }


    doch er zeigt mir immer an sie können nur alle 5 minuten das korn ernten wieso?


    Zum speichern bei erledigter arbeit habe ichs so:


    PlayerInfo[playerid][Ezeit]=Now() == 300;


    Und Hier das Toturial zum nach schauen:


    [ SCRIPTING ] Benutzung TimeStamp


    (E) ich benutze kein gf das ist mein selfmade nicht wundern wegen PlayerInfo habe nur die virabel genommen bzw den namen
    (E) Der ini wert ist 0 ?
    (E) Speicherung zugefügt
    (E) Toturial zugefügt

    4 Mal editiert, zuletzt von Quini ()

  • PlayerInfo[playerid][Ezeit]=Now() == 300;

    du musst die 300 zu Now() addieren


    PlayerInfo[playerid][Ezeit]=Now()+300;


    Es sollte allerdings auch so gehen :



    new t[3];
    PlayerInfo[playerid][Ezeit]=gettime(t[0], t[1], t[2])+300;


    Bei der letzten Methode bin ich mir nicht ganz sicher, sollte aber so gehen.
    Dann benötgist nämlich du die Funktion Now() nicht mehr.


    Nicht jeder, der sich für super hält, ist ein Superheld. :love:
    ------------------------------------------------------------------------------------------------

  • Probiers mal so, hab die Zeichen glaub ich vertauscht :
    if(Now() > PlayerInfo[playerid][Ezeit])


    Nicht jeder, der sich für super hält, ist ein Superheld. :love:
    ------------------------------------------------------------------------------------------------