[SAMMELTHREAD] Kleine Scripting Fragen

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
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
  • Beitrag von reaL. ()

    Dieser Beitrag wurde vom Autor aus folgendem Grund gelöscht: Fail ().
  • Hi, wieso funktioniert mein Achievement System nicht? Alles funktioniert außer der Double und Tripplekill.
    Man muss innerhalb 4 oder 8 Sekunden 2 oder 3 Kills machen um das Achievement zu erledigen.




    DoubleKill[killerid] = gettime() + 4;
    TripleKill[killerid] = gettime() + 8;



    // Double and Triple Kill :
    if(Spree[killerid] >= 2 && DoubleKill[killerid] < gettime() && pData[killerid][A_Double_Kill] == 0) {
    pData[killerid][A_Double_Kill] = 1;
    SendClientMessage(killerid, COLOR_GREEN, ">> You have completed a new Achievement{FF0000} Double Kill {33DD11}congrats <<");
    }
    else if(Spree[killerid] >= 3 && TripleKill[killerid] < gettime() && pData[killerid][A_Tripe_Kill] == 0) {
    pData[killerid][A_Tripe_Kill] = 1;
    SendClientMessage(killerid, COLOR_GREEN, ">> You have completed a new Achievement{FF0000} Tripple Kill {33DD11}congrats <<");
    }


    Mit freundlichen Grüßen
    JustMe.77 8)

  • Lasse es dir zuvor mal ausgeben:
    if(Spree[killerid] >= 2 && DoubleKill[killerid] < gettime() && pData[killerid][A_Double_Kill] == 0) {
    zu:
    printf("killerid: %d", killerid);
    printf("Spree: %d / DoubleKill: %d gettime: %d / Double_Kill: %d", Spree[killerid], DoubleKill[killerid], gettime(), pData[killerid][A_Double_Kill]);
    if(Spree[killerid] >= 2 && DoubleKill[killerid] < gettime() && pData[killerid][A_Double_Kill] == 0) {
    Was wird dann geprintet?

  • @Jeffry


    Bittesehr


    [17:30:46] [chat] [[LnD]Luisa.77]: Jetzt?
    [17:30:52] [chat] [[LnD]JustMe.77]: Ja
    [17:31:06] killerid: 0
    [17:31:06] Spree: 1 / DoubleKill: 1454344366 gettime: 1454344266 / Double_Kill: 0
    [17:31:16] killerid: 0
    [17:31:16] Spree: 2 / DoubleKill: 1454344376 gettime: 1454344276 / Double_Kill: 0


    Mit freundlichen Grüßen
    JustMe.77 8)

  • Hmm, scheint nicht zu helfen.


    killerid: 0
    Spree: 1 / DoubleKill: 1454345160 gettime: 1454345060 / Double_Kill: 0
    killerid: 0
    Spree: 2 / DoubleKill: 1454345168 gettime: 1454345068 / Double_Kill: 0


    Habe sogar die Zeit auf 100 erhöht um sicherzugehen.



    Mit freundlichen Grüßen
    JustMe.77 8)

  • Weil dini_IntSet eine 1 zurück gibt, wenn es erfolgreich eingetragen wurde. Nimm dini_Int, wenn du es auslesen möchtest.
    Ansonsten müsstest du mal genauer erklären, was du vor hast.

  • Dann einfach so:


    C
    dini_IntSet(Spieler,"Team",50000);

    So wird in der Spieler.ini bei "Team" eine 50000 gesetzt. :)

  • Ich lasse mir einen varchar aus der Datenbank ausgeben, möchten diesen behalten und mit einer neuen Eingabe zusammen fügen. Wie war das nochmal ?


    Beispiel:
    In der Datenbank steht : Lala, nana, nunu
    Jetzt gibt einer bsw ein: lulu
    Ergebnis soll dann so aussehen : Lala, nana, nunu, lulu


    Beste Grüße