tageszeit auslesen

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


    mal ne frage,


    kann man iwie auslesen, das wenn es zB 18:00 uhr ist das dann die tageszeit ingame geändert iwrd? ich weiß jetzt zwar nicht ob und wo ich die tageszeiten herbekomme bzw ob das auch ids sind, aber wenn man das setzen dann würde ich mich freuen wenn mir jemand das erklären könnte^^




    LG


    Marco

    Mein Selfmade:

    1.Haussytem [99/100%]
    2.Handysystem [95/100%]
    3.Payday [95/100%]
    4.Autosystem [100/100%]
    5. kleinigkeiten, wo ich noch bugs habe^^ [75/100%]
    Wer mir helfen möchte und vorallem Lust oder Zeit hat, darf sich natürlich bei mir melden. :D


    >> ¡Einfach PN an mich! <<

    Marco

  • ah danke^^,


    wenn ich gettime auslesen möchte muss das wie aussehen?


    so vllt?


    gettime(hour,18)



    //edit: achso und muss das unter oplayerconnect oder unter ongamemodeinit?

    Mein Selfmade:

    1.Haussytem [99/100%]
    2.Handysystem [95/100%]
    3.Payday [95/100%]
    4.Autosystem [100/100%]
    5. kleinigkeiten, wo ich noch bugs habe^^ [75/100%]
    Wer mir helfen möchte und vorallem Lust oder Zeit hat, darf sich natürlich bei mir melden. :D


    >> ¡Einfach PN an mich! <<

    Marco

  • gettime(hora,minuto,segundo);
    new stunde = "18";
    //oder
    new stunde = 18;
    //weiß ich grade nicht genau
    if(hora == stunde)
    {
    //was passieren soll
    }


  • Es ist ein Integer, also letzteres.
    Ansonsten benutzt du aber auch den Befehl falsch und widersprichst jeglicher Logik.
    Auf 4 Zeilen Code machst du also 3 Fehler - nicht schlecht!


    Marco:
    Warum benutzt du meinen Link nicht einfach mal mal,
    und suchst dort nach den Befehlen ?

  • ok, da hätte ich wirklich selbst draufkommen könne xD


    das muss unter onplayerconnect oder?

    Mein Selfmade:

    1.Haussytem [99/100%]
    2.Handysystem [95/100%]
    3.Payday [95/100%]
    4.Autosystem [100/100%]
    5. kleinigkeiten, wo ich noch bugs habe^^ [75/100%]
    Wer mir helfen möchte und vorallem Lust oder Zeit hat, darf sich natürlich bei mir melden. :D


    >> ¡Einfach PN an mich! <<

    Marco

  • das muss genau da hin wo dus haben willst. Wenn du bein serverstart die zeit auslesen willst muss es unter OnGameModeInit, wenn du die zeit auslesen willst wenn jemand auf den server geht muss es unter OnPlayerConnect.

    The fact is, I am right. And if you think I'm wrong, you are wrong.


  • Ich habe grade nicht viel Lust gehabt genau drüber nachzudenken... :sleeping:
    Aber für dich änder ich meine Signatur... Damit es auch die Blödesten verstehen...



    und was soll daran so Falsch sein ??



    gettime(hora,minuto,segundo);
    new stunde = 18;//Habe ich für die Übersichtlichkeit gemacht.
    //weiß ich grade nicht genau
    if(hora == stunde)//Fragt ab ob auf dem Server Stunde ist und wenn ja soll er was machen.
    {
    //was passieren soll
    }

  • Du kannst die Uhrzeit abfragen wann und wo du lustig bist.
    Da man die WorldTime aber nur einmal setzen muss,
    und eine Wiederholung des Vorganges Ressourcenverschwendung,
    muss es unter OnGameModeInit.


    Das setzt aber Vorraus, dass du die Uhrzeit nur einmal anpassen willst.
    Wenn sie immer aktuell bleiben soll und mit der echten Uhrzeit synchron,
    brauchst du wohl oder übel einen Timer.


    Hiermit übergebe ich an irgendeinen anderen Skripter, um dir das alles zu erklären.

  • Ich hab die Frage falsch verstanden :s



    public time(playerid){
    gettime(hora,minuto,segundo);
    new string2[256];
    if (minuto <= 9){format(string2,256,"%d:0%d",hora,minuto);}
    else {format(string2,256,"%d:%d",hora,minuto);}
    TextDrawSetString(Clock[playerid], string2);
    SetTimer("time",30000,0);
    if (hora == 0){SetWorldTime(0);}
    if (hora == 1){SetWorldTime(1);}
    if (hora == 2){SetWorldTime(2);}
    if (hora == 3){SetWorldTime(3);}
    if (hora == 4){SetWorldTime(4);}
    if (hora == 5){SetWorldTime(5);}
    if (hora == 6){SetWorldTime(6);}
    if (hora == 7){SetWorldTime(7);}
    if (hora == 8){SetWorldTime(8);}
    if (hora == 9){SetWorldTime(9);}
    if (hora == 10){SetWorldTime(10);}
    if (hora == 11){SetWorldTime(11);}
    if (hora == 12){SetWorldTime(12);}
    if (hora == 13){SetWorldTime(13);}
    if (hora == 14){SetWorldTime(14);}
    if (hora == 15){SetWorldTime(15);}
    if (hora == 16){SetWorldTime(16);}
    if (hora == 17){SetWorldTime(17);}
    if (hora == 18){SetWorldTime(18);}
    if (hora == 19){SetWorldTime(19);}
    if (hora == 20){SetWorldTime(20);}
    if (hora == 21){SetWorldTime(21);}
    if (hora == 22){SetWorldTime(22);}
    if (hora == 23){SetWorldTime(23);}
    if (hora == 24){SetWorldTime(24);}
    return 1;
    }


    Pass es auf dein Script an.

  • also erstmal muss ich sagen: ich hab mal wieder zu erst meine hände statt mein gehirn benutzt ;P


    ich habs hinbekommen^^ es klappt ja auch einwandfrei unter onplayerconnect, auch nach einem serverrestart xD




    Danke an alle und ans wiki^^




    LG


    Marco



    //EDIT:


    ähm, ich wollte mal kurz fragen ohne ein neues thema zu eröffnen, gibt es die funktion setplayerdate um das datum auszulesen bzw zu setzten? ich hab die im wiki nicht gefunden..

    Mein Selfmade:

    1.Haussytem [99/100%]
    2.Handysystem [95/100%]
    3.Payday [95/100%]
    4.Autosystem [100/100%]
    5. kleinigkeiten, wo ich noch bugs habe^^ [75/100%]
    Wer mir helfen möchte und vorallem Lust oder Zeit hat, darf sich natürlich bei mir melden. :D


    >> ¡Einfach PN an mich! <<

    Marco

  • also nicht... es ging diesmal trooper ging es mir ums datum auslesen^^


    aber meine textdraw wird gar nicht angezeigt ich hab das mit dem datum so gemacht:


    oben defieniert:


    new day, month, year;
    new Text:txtDateDisp;
    new datestr[32];
    forward UpdateDate();


    bei on playerconnect (weiß aber nicht ob das etwas bringt^^):


    getdate(day, month,year);


    bei ongamemodeinit:


    txtDateDisp = TextDrawCreate(55.0, 326.7, "00.00.0000");
    TextDrawFont(txtDateDisp, 3);
    TextDrawSetShadow(txtDateDisp, 0);
    TextDrawSetOutline(txtDateDisp, 2);
    TextDrawBackgroundColor(txtDateDisp, 0x000000FF);
    TextDrawColor(txtDateDisp, 0x0091FFFF);
    TextDrawAlignment(txtDateDisp,3);
    TextDrawSetProportional(txtDateDisp, 1);
    TextDrawLetterSize(txtDateDisp, 0.539999, 1.900000);
    UpdateDate();


    und beim public UpdateDate



    public UpdateDate()
    {
    getdate(day, month, year);
    format(datestr,32,"%02d/%02d/%d",day,minute,year);
    TextDrawSetString(txtDateDisp,datestr);
    }



    ingame wird aber nichts angezeigt

    Mein Selfmade:

    1.Haussytem [99/100%]
    2.Handysystem [95/100%]
    3.Payday [95/100%]
    4.Autosystem [100/100%]
    5. kleinigkeiten, wo ich noch bugs habe^^ [75/100%]
    Wer mir helfen möchte und vorallem Lust oder Zeit hat, darf sich natürlich bei mir melden. :D


    >> ¡Einfach PN an mich! <<

    Marco

  • Zitat

    gibt es die funktion setplayerdate um das datum auszulesen bzw zu setzten?


    Wie gesagt - doch, dafür gibt es eine Funktion.
    Um die Uhrzeit des Clienten auszulesen gibt es keine Funktion,
    das ist aber auch verdammt unnötig - schließlich kann man die Uhrzeit nach Belieben ändern.


    Eventuell wird ja nichts angezeigt, weil du es nie anzeigen lässt...
    http://wiki.sa-mp.com/wiki/TextDrawShowForPlayer