[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
  • Ah ok. Funktioniert.. Jetzt habe ich das mit dem 3 Zeilen LIST Dialog versucht, also wenn man beispiel auf ID 2 klickt im Menü, dass man dann Informationen zur ID 2 im 3 Zeilen LIST Dialog bekommt. Jedoch fehlanzeige.. Tipps?



    Geprintet wird mir nichts..



    Die heutigen Noobs, sind die Profis von morgen! :thumbup:


    Danke an Jeffry für seine ständige Hilfsbereitschaft und freundliche Art. 8)

  • Hey,


    ich habe mein Interiorsystem überarbeitet, um nicht für jedes Int eine Abfrage zu starten.
    Nun folgende Situation:
    Ich komme mit F/Enter in das Gebäude, alles gut.
    Allerdings passiert nichts wenn ich F/Enter zum verlassen drücke.
    Wenn ich das verlassen mit ocmd mache, dann funktioniert es.


    Wahrscheinlich überschneiden sich die beiden Keys, daher habe ich beim verlassen vorher eine if geschrieben, ob der Spieler NICHT in World 0 ist(also in keinem Int), dennoch bringt dies keine Besserung.
    Kann mir jemand sagen, was ich ändern muss? Vielen Dank!


  • Fass es doch zusammen:


    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

    • Offizieller Beitrag

    Wie erstellt man so eine Liste nur mit Autos?

    Falls du das ganze nicht von Grund auf machen möchtest, lade doch einfach mal das Filterscript "vspawner". Jenes ist im Standart Filterscripts Ordner, wenn du dir einen Server downloadest.
    Das ganze sieht den so aus (Kann man natürlich alles anpassen)


    sa-mp-230.png


    Also einfach das Filterscript 'vspawner' laden, danach Ingame /vspawner eingeben


  • [debug] #0 0004cc5c in public CheckTacho () from newrl.amx
    [debug] Run time error 4: "Array index out of bounds"
    [debug] Accessing element at negative index -400


    Kam aufeinmal in meiner Konsole :o?




    Die heutigen Noobs, sind die Profis von morgen! :thumbup:


    Danke an Jeffry für seine ständige Hilfsbereitschaft und freundliche Art. 8)

  • Moin, ich hab da mal wieder eine kleine Frage, ich lasse jetzt ein Teil meiner Datenbank vom Script aus Erstellen, leider weiß ich nicht wie es mache das "ID" auch den wert "Auto Increment" erhält ohne das ich ihn in der Datenbank festlegen muss.



    stock CreatePlayerTable()
    {
    new query[512];
    format(query, sizeof(query), "CREATE TABLE IF NOT EXISTS `Spieler` (");
    format(query, sizeof(query), "%s`ID` int(11) NOT NULL PRIMARY KEY,", query);
    format(query, sizeof(query), "%s `Spielername` varchar(24) NOT NULL DEFAULT '0',", query);
    format(query, sizeof(query), "%s `Passwort` varchar(256) NOT NULL DEFAULT '0',", query);
    format(query, sizeof(query), "%s `Geschlecht` int(1) NOT NULL DEFAULT '0',", query);
    format(query, sizeof(query), "%s `Bargeld` int(11) NOT NULL DEFAULT '0',", query);
    format(query, sizeof(query), "%s `Level` int(11) NOT NULL DEFAULT '0',", query);
    format(query, sizeof(query), "%s `Skin` int(11) NOT NULL DEFAULT '0'", query);
    format(query, sizeof(query), "%s) ENGINE=InnoDB DEFAULT CHARSET=latin1;", query);
    mysql_query(Handle, query);
    return 1;
    }


    Mit freundlichen Grüßen,

    Die Missglückte Persönlichkeit, Ciao!



  • Ich denk so sollte es gehen.

    stock CreatePlayerTable()
    {
    new query[512];
    format(query, sizeof(query), "CREATE TABLE IF NOT EXISTS `Spieler` (");
    format(query, sizeof(query), "%s`ID` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,", query);
    format(query, sizeof(query), "%s `Spielername` varchar(24) NOT NULL DEFAULT '0',", query);
    format(query, sizeof(query), "%s `Passwort` varchar(256) NOT NULL DEFAULT '0',", query);
    format(query, sizeof(query), "%s `Geschlecht` int(1) NOT NULL DEFAULT '0',", query);
    format(query, sizeof(query), "%s `Bargeld` int(11) NOT NULL DEFAULT '0',", query);
    format(query, sizeof(query), "%s `Level` int(11) NOT NULL DEFAULT '0',", query);
    format(query, sizeof(query), "%s `Skin` int(11) NOT NULL DEFAULT '0'", query);
    format(query, sizeof(query), "%s) ENGINE=InnoDB DEFAULT CHARSET=latin1;", query);
    mysql_query(Handle, query);
    return 1;
    }

  • Ja, hast Recht gehabt. :)


    Hab da noch mal eine Frage,
    ich mache derzeit eine Skin Auswahl wo man sich mit der Leertaste durch die Skins durch Schalten kann, wie kann ich am besten die Skins Defineiren?
    zB, Skin 1 - 10 hat man zur Auswahl, das man dann mit mit dem Drücken der Leertaste von Skin 7 zu Skin 8 Gewechselt.


    MfG.

    Die Missglückte Persönlichkeit, Ciao!

  • Kam aufeinmal in meiner Konsole :o?

    Musst auch prüfen, dass die modelid nicht 0 ist.
    Also, dass er sich auch wirklich in einem Fahrzeug befindet.


    zB, Skin 1 - 10 hat man zur Auswahl, das man dann mit mit dem Drücken der Leertaste von Skin 7 zu Skin 8 Gewechselt.

    Das kommt darauf an...


    Wenn du sie in aufsteigener Reihenfolge hast, dann kannst du einfach einen Counter nutzen.


    Unter [wiki]OnPlayerKeyStateChange[/wiki] kannst du prüfen welche Taste er drückt und dann einfach eine globale Spielervariable hochzählen lassen und setzen lassen.
    Oder du hast den Counter + ein Skin Array:


    C
    //Global deklarieren
    stock const auswahl_skins[] = {5,10,19,237,311};
    new auswahl_counter[MAX_PLAYERS];
    
    
    //Und dann so, wenn er die Leertaste drückt:
    if(auswahl_counter[playerid] == sizeof(auswahl_skins)) auswahl_counter[playerid] = 0; //Wieder von vorne Anfangen
    SetPlayerSkin(playerid, auswahl_skins[auswahl_counter[playerid]++]); //Musst es nicht in eine Zeile quetschen xD Nur zur Verdeutlichung

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Hab ich doch :o

    Hier, deinen Code mal ein wenig optimiert:



    Dann steht da auch ein ü und kein ue, bei Türen ^^

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Ist es möglich einen Balken "schrumpfen" zulassen? Habe ein Bedürfnissystem und möchte keine - - - - mehr haben sondern ein kompletter textdraw box als balken also bsp __________


    Momentan sieht es so aus:
    switch(GetPVarInt(i, "statusHunger")) { case 0: PlayerTextDrawSetString(i,Hungerverlust[i], "~r~i"); case 1: PlayerTextDrawSetString(i,Hungerverlust[i], "~r~i"); case 2: PlayerTextDrawSetString(i,Hungerverlust[i], "~r~i i"); case 3: PlayerTextDrawSetString(i,Hungerverlust[i], "~r~i i i"); case 4: PlayerTextDrawSetString(i,Hungerverlust[i], "~y~i i i i"); case 5: PlayerTextDrawSetString(i,Hungerverlust[i], "~y~i i i i i"); case 6: PlayerTextDrawSetString(i,Hungerverlust[i], "~y~i i i i i i"); case 7: PlayerTextDrawSetString(i,Hungerverlust[i], "~y~i i i i i i i"); case 8: PlayerTextDrawSetString(i,Hungerverlust[i], "i i i i i i i i"); case 9: PlayerTextDrawSetString(i,Hungerverlust[i], "i i i i i i i i i"); case 10: PlayerTextDrawSetString(i,Hungerverlust[i], "i i i i i i i i i i"); default: PlayerTextDrawSetString(i,Hungerverlust[i], "i i i i i i i i i i"); }


    als bild:
    hier.png



    Die heutigen Noobs, sind die Profis von morgen! :thumbup:


    Danke an Jeffry für seine ständige Hilfsbereitschaft und freundliche Art. 8)

  • Ha, irgendwie funkt das nicht ^^
    Funktion:
    CreatePlayerProgressBar(playerid, Float:x, Float:y, Float:width = 55.5, Float:height = 3.2, color = 0xFF1C1CFF, Float:max = 100.0, direction = BAR_DIRECTION_RIGHT, bgcolor = 0x000000FF);


    Mein versuchscode, aber nichts wird erstellt.
    ocmd:progress(playerid) {
    CreatePlayerProgressBar(playerid, 272.117401, 439.583251 ,55.5,3.2,0xFF1C1CFF,100.0,BAR_DIRECTION_RIGHT,0x33AA33AA);
    SendClientMessage(playerid, info, "done");
    return 1; }



    Die heutigen Noobs, sind die Profis von morgen! :thumbup:


    Danke an Jeffry für seine ständige Hilfsbereitschaft und freundliche Art. 8)

  • Wie und Wo definiere ich die BarID?





    new progi;
    progi = CreatePlayerProgressBar(playerid, 272.117401, 439.583251 ,55.5,3.2,0xFF1C1CFF,100.0,BAR_DIRECTION_RIGHT,0x33AA33AA);
    ShowPlayerProgressBar(playerid, progi);

    So gibt es 2x warning 213: tag mismatch



    Die heutigen Noobs, sind die Profis von morgen! :thumbup:


    Danke an Jeffry für seine ständige Hilfsbereitschaft und freundliche Art. 8)

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen