Mittelkonsole DialogList

In 10 Minuten startet der nächtliche Backupvorgang! Es kann währenddessen (ca. 10 Minuten) zu Einschränkungen bei der Nutzung des Forums kommen
Weitere Infos findet ihr im Thema Backup des Forums
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 möchte eine kleine Mittelkonsole scripten jedoch hänge ich momentan ein wenig fest.


    Codeschnipsel


    Code
    new string[528],Waffen[13][2];
    	for (new i = 0; i < 13; i++)
    	{
    	    GetPlayerWeaponData(playerid, i, Waffen[i][0], Waffen[i][1]);
    	    if(Waffen[i][0]!=0)
    	    {
    			format(string,sizeof(string),"%s{ffffff}Waffe: %s | Muniton: %i\n",string,GetGunName(Waffen[i][0]),Waffen[i][1]);
    	    }
    	}
    	ShowPlayerDialog(playerid,DIALOG_MITTELKONSOLEINT2,DIALOG_STYLE_LIST,"{f86132}Mittelkonsole",string,"{FFFFFF}Bestätigen","{FFFFFF}Abbruch");

    Hier werden schon einmal nur die Waffen angezeigt die der Spieler auch bei sich trägt wenn er jetzt auf eine klickt soll diese in die Mittelkonsole gepackt werden.
    Wie eine Waffe dort verstaut wird etc. weis ich jedoch komme ich grad nicht auf die Abfrage auf welches Listitem er klickt und welche Waffe es ist... hoffe es ist verständlich.


    Grüße
    PrideGame

    - heftig abhängig von Karli Kugelblitz Choco Drinks

  • Versuch es mal so.
    Das kommt halt in dem Dialog rein. ;)

  • Vermutlich liegt es an den 30° in meinem Kabuff aber ich bin leicht verwirrt.


    So würde das ganze System ungefähr aussehen (hab es von meinem Kofferraum System kopiert) nur funktioniert das ganze nicht weil man im Auto ja nicht die Waffen wechseln kann, deswegen wollte ich den einfachen Dialog List wählen.
    Bedeutet also wenn er auf eine Waffe klickt mit deiner Abfrage dazu also: cInfo[i][mWaffe1]=Waffe[i][0]`?

    - heftig abhängig von Karli Kugelblitz Choco Drinks

  • Ja, wenn du meine Abfrage oben nutzt.


    - EDIT: Wie du bereits angesprochen hast, kann man im Auto die Waffen nicht wechseln. Deswegen muss man ja mit der Schleife durch alle Waffen des Spielers gehen. ;)

  • Kannst es auch einfach machen, du gibst nämlich einfach den Slot mit:


    PS: Bei DIALOG_STYLE_LIST musst du das nicht extra weiß machen, das geht automatisch :)

    ast2ufdyxkb1.png


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

    Einmal editiert, zuletzt von Kaliber ()

  • Ich hab sowieso überlegt ob ich mir ne neue Funktion schreibe welche mir die Dialog immer weiß färbt und die Überschrift Orange aber dann schlug die Faulheit wieder zu.


    Ich teste mal rum und melde mich nochmal wenn es Probleme gibt, danke an alle erstmal. :)

    - heftig abhängig von Karli Kugelblitz Choco Drinks

  • Ich hab sowieso überlegt ob ich mir ne neue Funktion schreibe welche mir die Dialog immer weiß färbt und die Überschrift Orange aber dann schlug die Faulheit wieder zu.

    Um kurz etwas dazu zu sagen ^^


    Wenn es um Texte geht ohne Variablen, dann ist das eine sehr gute Idee. Dann solltest du das über ein Makro machen:

    C
    #define SPD(%0,%1,%2,%3,%4,%5,%6) ShowPlayerDialog(%0,%1,%2,!"{FF8000}"#%3,!"{FFFFFF}"#%4,!%5,!%6)


    Dadurch würdest du sogar direkt die Strings packen können und somit jeweils deine .amx schön klein halten :)


    Allerdings gibt es da ein Problem, wenn du jetzt eine Variable nutzt z.B.:



    C
    SPD(playerid,0,DIALOG_STYLE_MSGBOX,"Hallo",string,"Ok", "");

    Dann geht das mit dem Makro nämlich nicht!


    Hier müsste man eine Funktion schreiben, die dann über strins den Farbcode an den Anfang stellt.


    Das ist aber keine wirklich schöne Lösung, da das sehr langsam ist, zudem müsste man die strings kopieren.


    Also bei Variablen einfach den Farbcode mit rein schreiben, aber ansonsten kann man das erste Makro nutzen für Texte :)

    ast2ufdyxkb1.png


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