[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
  • Könnte mir jemand ein Textdraw Ticket System machen für die Supporter ? Also Rechts wie bei D.S.Z oder Breadfish Roleplay da ich das nicht hinkrieg, ich kenne mich nicht mit Textdraws aus da ich mit normalen Commands und weiteres arbeite, und wann Payday ist ganz oben wie bei LyD 0/60 und ja ich kenn mich mit Textdraws aus

    Versuch dich doch mal selbst daran? :)


    Ist nicht so schwer dank schönen Editoren ^^
    Hier den, den ich ganz praktisch finde: http://forum.sa-mp.com/showthread.php?t=117851


    Dann hätten wir noch eine Deluxe Version: http://forum.sa-mp.com/showthread.php?t=543002


    Und noch einen...den ich noch nie probiert hab: http://forum.sa-mp.com/showthread.php?t=376758


    Gibt aber noch mehr...aber kannst ja mal einfach ein wenig schauen und probieren :)


    PS: Denn ich bezweifle..dass dir jemand das alles designen + skripten wird für nada ^^

    ast2ufdyxkb1.png


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

  • mein server taucht nicht in der Internet list auf obwohl announce auf 1 ist ....


    Aktuell ist die Internet List zugleich auch die Hosted List, d.h. du müsstest einen Betrag von ungefähr 18-21 $ monatlich (gibt's verschiedene Anbieter mit unterschiedlichen Preisen) zahlen um auf die Internet bzw. Hosted Liste eingetragen zu werden.


    Mit freundlichen Grüßen
    JustMe.77 8)

  • Beitrag von TimeLine ()

    Dieser Beitrag wurde von Developer aus folgendem Grund gelöscht: spam ().
  • Bräuchte mal eben eine kleine Hilfe wie ich mehrere Leute in einen String packe die z.B Online sind und einer Fraktion angehören.


    Bspw. 4 Leute pro Reihe:
    "Peter - ID: 4, Olaf - ID: 6, Ralf - ID: 39, Dieter - ID: 2"
    "Jeff - ID 3, Walter - ID 9" <- Ab hier hört es auf, weil kein weiterer dieser Fraktion o.Ä angehört


    Wäre dankbar, wenn mir dabei jemand helfen kann, da ich noch nie mit sowas gearbeitet habe. :D

  • 1. ...wie meinst du das in einen String packen..für einen Dialog?


    2. Wie prüfst du in welcher Fraktion jemand ist...


    3. Oder meinst du einfach als SendClientMessage..dafür brauchst du die nicht in einen String packen :)

    ast2ufdyxkb1.png


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

  • Vielleicht meint er ja sowas in der Art:




    CMD:member(playerid,params[])
    {
    new s_text[1000];
    new temp[95];
    new count;



    for(new i=0,j=GetPlayerPoolSize(); i<=j;i++)
    {
    if(!IsPlayerConnected(i) || !InFraktion[i]) //deine Variable
    continue;



    format(temp, sizeof(temp), "{FF0000}%s", GetName(i));
    strcat(s_text, temp, sizeof s_text);
    count++;
    }




    if(count != 0)
    {
    ShowPlayerDialog(playerid, D_Mitglieder, DIALOG_STYLE_MSGBOX, "Mitglieder", s_text, "Ok", "");
    }
    else
    {
    SendClientMessage(playerid, -1, "Es sind keine Fraktionsmitglieder online.");
    }
    return 1;

    }


    Kann's nicht compilen, sag mir bescheid wenn du Probleme hast :)


    Mit freundlichen Grüßen
    JustMe.77 8)

  • 1. ...wie meinst du das in einen String packen..für einen Dialog?


    2. Wie prüfst du in welcher Fraktion jemand ist...


    3. Oder meinst du einfach als SendClientMessage..dafür brauchst du die nicht in einen String packen :)

    1) Für eine Text-Message.
    2) Spieler[playerid][pFraktion]
    3) Ja, ich habs zB momentan so:



    Das Problem ist jetzt aber, sagen wir mal es sind 20 Mitglieder on, dann wird der Chat schön zugespammt .. ^^


    Ich will das dann in einer Reihe zB maximal 4 Leute stehen und dann in die nächste Text-Nachricht gewechselt wird. ^^

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Habe mich auf den Befehl den ich dir geschickt habe bezogen :). Dort wird jeder Name untereinander gelistet.
    Kannst das ja ganz easy zu einer Nachricht formatieren, einfach ShowPlayerDialog mit SendClientMessage ersetzen.


    Mit freundlichen Grüßen
    JustMe.77 8)

  • Gut, habe mal deinen Befehl bisschen aufgepeppt ^^




    Probiers mal aus, war zu faul es zu testen ^^


    //Edit:
    @256:


    Hier gerade mal aus dem Kopf geschrieben:


    Nutzung:



    new veh;
    SetVehicleNumberPlate(veh,"Hallo test");
    printf("Nummernschild: %s",GetVehicleNumberPlate(veh)); //Gibt "Hallo test" aus :)

    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 ()

  • Hier gerade mal aus dem Kopf geschrieben:

    DestroyVehicle sollte ebenfalls gehookt werden.
    Erstellt man beispielsweise Fahrzeug ID 1, setzt dessen Nummernschild zu "Hallo", löscht das Fahrzeug und erstellt ein neues Fahrzeug (wieder ID 1), ohne dessen Nummernschild zu setzen (Standard Nummernschild), dann wird dennoch "Hallo" zurück gegeben.


    Allgemein werden die Standardnummernschilder gar nicht erkannt. CreateVehicle (etc) zu hooken und dort direkt ein eigenes Random-Nummernschild zu setzen wäre am besten.

  • DestroyVehicle sollte ebenfalls gehookt werden.

    Stimmt, das hab ich vergessen...


    Ne, das mit dem Standard setzen find ich bescheuert..weil ist ja eh immer XYZ1234 oder sowas..und man kann ja einfach prüfen ob die Funktion was leeres wiedergibt, dann setzt man halt das Standard Ding..ansonsten das Nummernschild, das wesentlich effizienter :)

    ast2ufdyxkb1.png


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

  • Ne, das mit dem Standard setzen find ich bescheuert..weil ist ja eh immer XYZ1234 oder sowas..und man kann ja einfach prüfen ob die Funktion was leeres wiedergibt, dann setzt man halt das Standard Ding..ansonsten das Nummernschild, das wesentlich effizienter

    Das macht aber nicht immer Sinn.
    Angenommen in einem Dialog möchte ich alle Fahrzeuge mit deren Nummernschild anzeigen, habe aber nie SetVehicleNumberPlate genutzt. Dann gibt der Dialog nichts aus, oder, wenn man dort dann das Nummernschild setzt, ändert es sich weg vom Standard (wäre reiner Zufall das gleiche Schild zu bekommen).


    CreateVehicle (etc) zu hooken und dort ein random Kennzeichen zu genererieren macht den Code nicht wirklich uneffizienter. Ob man das jetzt selbst im eigenen Code macht, oder es in der Include steht, spielt keine Rolle, nur dass letzteres weniger Aufwand für den User ist und ersterem gegenüber effizienter ist, da ein Funktionsaufruf weniger notwendig wird.


    Um immer richtige Ergebnisse zu bekommen gehört das meiner Meinung nach dazu.

  • Das macht aber nicht immer Sinn.
    Angenommen in einem Dialog möchte ich alle Fahrzeuge mit deren Nummernschild anzeigen, habe aber nie SetVehicleNumberPlate genutzt. Dann gibt der Dialog nichts aus, oder, wenn man dort dann das Nummernschild setzt, ändert es sich weg vom Standard (wäre reiner Zufall das gleiche Schild zu bekommen).

    C
    new string[512],plate[32];
    for(new i=GetVehiclePoolSize(); i!=0; i--)
    {
        format(plate,32,GetVehicleNumberPlate(i));
        format(string,sizeof(string),"%sID: %d | Plate: %s",string,i,((plate[0]==EOS)?("XYZ1234"):(plate)));
    }
    ShowPlayerDialog(..., string, ...);

    So meinte ich das...
    und da dieses Nummernschild anfangs immer das selbe ist..brauchste nichts hooken..

    ast2ufdyxkb1.png


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