Textdraw Probleme

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 JustMe.77 ()

    Dieser Beitrag wurde vom Autor gelöscht ().
  • if(inGame[playerid] != true)return SendClientMessage(playerid,0x00FF00FF, "{FF1717}ERROR: Close the Textdraws first.");
    Zu
    if(inGame[playerid] == true)return SendClientMessage(playerid,0x00FF00FF, "{FF1717}ERROR: Close the Textdraws first.");
    inGame[playerid] = true;
    Füge das über die ShowPlayerDialog Zeile im Befehl ein.



    Und es dann dort auf false setzen, wo du den Befehl wieder erlauben willst.

  • Beitrag von JustMe.77 ()

    Dieser Beitrag wurde vom Autor gelöscht ().
  • Beitrag von JustMe.77 ()

    Dieser Beitrag wurde vom Autor gelöscht ().
  • Beitrag von JustMe.77 ()

    Dieser Beitrag wurde vom Autor gelöscht ().
  • Beitrag von JustMe.77 ()

    Dieser Beitrag wurde vom Autor gelöscht ().
  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Beitrag von JustMe.77 ()

    Dieser Beitrag wurde vom Autor gelöscht ().
  • Beitrag von JustMe.77 ()

    Dieser Beitrag wurde vom Autor gelöscht ().
  • Ich frag mich warum du dich als Ersteller so dumm anstellst, auf mich wirkt das wie fröhliges Rätselraten bis du jemand gefunden hast der das für dich macht.


    Wenn du bei deinem Befehl buyticket abfrägst ob der Spieler gerade im Spiel ist
    und du direkt beim aufrufen des Dialoges DIALOG_GAME, inGame[playerid] wieder auf 0 zurück setzst kannst du logischer weiße den
    Befehl direkt wieder ausführen egal , was danach aufgerufen und ausgeführt wird, sofern das nicht wieder auf true gesetzt wird.


    Da du möchtest das der Spieler den Befehl erst ausführen kann, wenn er das Textdraw angeklickt hat solltest du es auch logischerweise
    auch dort wieder auf den Ausgangswert false zurücksetzen.



    Zusätzlich hast du bei deinem Befehl eine Klammer vergessen " { " nach der Abfrage ob sich der Spieler an den jeweiligen Orten befindet

  • Beitrag von JustMe.77 ()

    Dieser Beitrag wurde vom Autor gelöscht ().
  • Mag sein das du am Anfang bist, aber da du dich schon seit Februar mit Problemen quälst was bis jetzt 9 Monate sind kann ich doch wenigsten mal vorraussetzen, dass du wenigstens etwas an Verständis
    von Pawn erlernt hast und wenigstens bissle weisst was du machst.


    Ebenso setzte ich nur ein bissle logisches Denken vorraus, was den Ablauf vom Code angeht schließlich werden die Anweisungen linear abgearbeitet sprich "step by step" daher sollte man schon wissen
    wenn man auf den Code schaut den man selbst geschrieben hat, wann was ausgeführt wird. Schließlich popelst du auch nicht in der Nase, wenn es dich am Arm juckt, sondern kratzst dich am Arm um eine kleine Metapher auf den Sachverhalt den ich anpranger zu beziehen.


    Ich glaube ein Großteil deiner Fehler würdest du selbst finden, wenn du dir etwas zeitlässt und deinen Code durchschaust und das ganze step by step durchgehst.
    Bezogen noch auf meine Beiträge ich hab damals im August 2011 angefangen mich mit dem skripten wirklich auseinander zu setzen und wenn du meine ganzen Probleme von damals anschaust wirst du sehen
    das mir lediglich Erklärungen gereicht haben oder kleine Hilfestellungen.



    Um den Beitrag noch aufs Thema zu beziehen , ich hab dir oben in den Post darüber von mir exakt beschrieben wo Fehler bestehen und einen Lösungsansatz.

  • Button "Cancel" klickt.

    Ach das meinst du!


    Dann so, bei OnDialogResponse:
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid == DIALOG_GAME)
    {
    if(response)
    {
    if(strval(inputtext) < 2500 || strval(inputtext) > 10000)
    {
    ShowPlayerDialog(playerid,DIALOG_GAME, DIALOG_STYLE_INPUT, "Set a bet", "Type in for how much money you want to buy a ticket.", "Buy", "Cancel");
    return SendClientMessage(playerid,0x00FF00FF, "{FF1717}ERROR:{FFFFFF} You must set a bet from 2.500$ to 10.000$ at least.");
    }
    new str[145];
    format(str, sizeof(str), "You have bought a ticket for %i $!", strval(inputtext));
    SendClientMessage(playerid,0x00FF00FF, str);
    new zahl = random(300001) + 100000;
    format(str, sizeof(str), "Ticketnumber: %d", zahl);
    if(random(2) == 0)
    {
    Showing[playerid] = 1;
    PlayerPlaySound(playerid,4201, 0.0, 0.0, 0.0);
    TextDrawShowForPlayer(playerid, Textdraw0);
    TextDrawShowForPlayer(playerid, Textdraw1);
    TextDrawShowForPlayer(playerid, Textdraw2);
    TextDrawShowForPlayer(playerid, Textdraw3);
    TextDrawShowForPlayer(playerid, Textdraw4); //Win Textdraw
    TextDrawShowForPlayer(playerid, Textdraw6);
    TextDrawSetString(Textdraw2, str);
    SelectTextDraw(playerid, 0xFFFF0000);
    }
    else
    {
    Showing[playerid] = 1;
    PlayerPlaySound(playerid,1147, 0.0, 0.0, 0.0);
    TextDrawShowForPlayer(playerid, Textdraw0);
    TextDrawShowForPlayer(playerid, Textdraw1);
    TextDrawShowForPlayer(playerid, Textdraw2);
    TextDrawShowForPlayer(playerid, Textdraw3);
    TextDrawShowForPlayer(playerid, Textdraw5); //Loss Textdraw
    TextDrawShowForPlayer(playerid, Textdraw6);
    TextDrawSetString(Textdraw2, str);
    SelectTextDraw(playerid, 0xFFFF0000);
    }
    }
    else
    {
    //Cancel gedrückt
    inGame[playerid] = false;
    }
    return 1;
    }
    return 0;
    }






    Ich frag mich warum du dich als Ersteller so dumm anstellst, auf mich wirkt das wie fröhliges Rätselraten bis du jemand gefunden hast der das für dich macht.

    Ich glaube es geht los.
    Es ist völlig egal wie "dumm" sich jemand anstellt, wenn er nach Hilfe fragt, dann kann ihm auch geholfen werden, ohne dass er so dumm angemacht wird. Es wird schließlich keiner dazu gezwungen zu helfen, wenn du also nicht helfen willst, weil die Fragen deiner Meinung nach dumm sind, dann lasse es einfach, anstatt ihn zu kritisieren, dass er fragt, sowas ist respektlos. Hier trifft man mit "Es gibt keine dummen Fragen, sondern nur dumme Antworten." genau ins Schwarze.



    Dieses Forum ist ja schließlich dafür da um Fragen zu stellen. Einer lernt schneller, der andere langsamer. Deswegen sind seine Fragen noch lange nicht dumm. Für einige mögen die Fragen trivial sein, für andere eben nicht. Wenn ich eines überhaupt nicht leiden kann, dann Kritik an jemandem, der eine Frage stellt, und das gehört in dieses Forum absolut nicht. Wer nach Hilfe fragt, der bekommt sie auch anstandslos.