[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
  • Nutzt du eine MySQL Version ab 5.7 aufwärts? Wenn ja, schaue dir folgende Lösung mal an, ob das hilft:
    https://stackoverflow.com/ques…sword-y/42967789#42967789


    Wäre eventuell eine Erklärung, weil du alles neu aufgesetzt hast.


    Edit:
    Alternativ gegebenenfalls auch folgender Weg:
    sudo dpkg-reconfigure mysql-server-x.x
    Bei x.x deine MySQL Server Version.
    Dort dann das Passwort vergeben und danach
    mysql -u root -p
    Dann natürlich mit Passwort über SAMP anmelden, was du ja ohnehin machen solltest.

    3HZXdYd.png

    Einmal editiert, zuletzt von Jeffry ()

  • hi hat auch nicht geholfen.


    was ich nicht verstehe denn es ging auch vordem aufsetzen ja nicht also ganz am anfang schon dannach nicht mehr ohne das ich was geändert habe. Habe das root passwort geändert es hat sonder zeichen aber ich nutze das passwort ja nicht also verstehe ich das nicht

  • also.


    Es liegt am Server.


    Ich habe es auf meinem lokalen windows PC versucht dort klapp alles.
    benutzer root
    host 127.0.0.1
    db gdl_db
    pw keins


    Ich werde es noch weiter hin versuchen.


    Tzd danke ich euch Jeffry und Kaliber


    //edit


    Wenn ich eie lösung finde werde ich es mit euch teilen damit ihr es einfacher habt.

  • Das Passwort muss natürlich auch richtig sein. Am besten du setzt den MySQL Server nochmal komplett zurück und vergibst nochmal sauber ein klares root Passwort, mit dem du dann die Verbindung her stellst.

    HIHI das alte pw wieder benutzt.


    Danke es hat geklappt jeffry ist einfach king of samp.

  • Kurze Frage, sind schleifen innerhalb von schleifen schlimm?



    z.B: beim Sekundentimer, als Check wenn jemand eine unerreichbare Waffe hat > auto ban:



    for (new i=0; i < MAX_PLAYERS; i++)
    {


    for (new x=0; x < sizeof(BannedGuns); x++)
    {
    if(GetPlayerWeapon(i) == BannedGuns[x])
    {
    Ban(i); continue;
    }
    }


    }

    SA:MP in 2020?

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • In der Form wie du es hier skizziert hast, nicht. Das kannst du problemlos machen.

    Wie wäre es dann beispielsweise problematisch?


    Zusatzfrage: Hab ich vergessen, da ich lang inaktiv war in SAMP ^^, aber gibt es einen Weg alle Waffen eines Spielers einzusehen? Auch die, die er gerade nicht in der hand hat, oder muss ich dazu jetzt tausende Variablen machen? Mit Waffenslots und etc.

    SA:MP in 2020?

  • Moin ich habe ein paar Umständlichkeitsprobleme MySQL in mein Script einzubinden, hauptsächlich weil ich die meisten Funktionen nicht kenne, mit MySQL kenne ich mich super aus, aber nicht wie ich es vernünftig in PAWN einbinde. Bis jetzt ist das einzige was ich weiß, das Tutorial von Jeffry. Ich möchte weniger dinis verwenden und mehr MySQL.


    z.B. bei Fraktions-Rangnamen, aber wenn ich die Aufrufe, brauche ich z.B. nur die Fraktions-ID und die Rangnummer. Da jetzt eine ganze Schleife für zu machen wie in Jeffry's tutorial(ist ja auch ein Register/Login system) hat ja keinen sinn. Zur Zeit bin ich bei :


    format(mq, sizeof(mq), "SELECT `Name` FROM `rangnamen` WHERE frak_id = '%d' AND rang = '%d'", frak, rang);
    mysql_query(handle, mq,true);


    Jedoch ist jetzt meine Frage, wie rufe ich den rangnamen jetzt auf? Bzw. wie kann ich den abspeichern und verwenden.
    Ich möchte gerade eine stock Funktion machen die den Rang einer Fraktion im Namen umwandelt für Spielernachrichten zum Beispiel ^^, das ist ja einfach jedoch weiß ich halt nicht wie ich den Rangnamen aus der MySQL Query jetzt speichere.

    SA:MP in 2020?

  • Willst du die Namen wirklich bei jeder Nachricht aus der Datenbank laden?
    Zu empfehlen wäre, die Namen aller Fraktionen und Ränge beim Start des Servers zu laden und in Variablen zu speichern. Dann kannst du ohne Datenbankzugriff direkt auf die Namen zugreifen.

  • Willst du die Namen wirklich bei jeder Nachricht aus der Datenbank laden?
    Zu empfehlen wäre, die Namen aller Fraktionen und Ränge beim Start des Servers zu laden und in Variablen zu speichern. Dann kannst du ohne Datenbankzugriff direkt auf die Namen zugreifen.

    Stimmt, ist besser. Da ich dann wieder die Schleifen verwende, kriege ich das hin, denke ich. Danke

    SA:MP in 2020?

  • Alles klar.
    Das entsprechende Array dazu kann beispielsweise so aussehen:
    new rangName[MAX_FRAKS][MAX_RANGS][32];
    Die 32 steht dabei für die maximale Länge einer Bezeichnung.
    Dann kannst du auf einen beliebigen Rangname einer Fraktion so zugreifen:
    rangName[frk][rng]

  • Code
    label[i] = CreateDynamic3DTextLabel(MAIN_LABEL,-1,TrailerPos[i][0],TrailerPos[i][1],TrailerPos[i][2],20.0);
    	pickup[i] = CreateDynamicPickup(1239,23,TrailerPos[i][0],TrailerPos[i][1],TrailerPos[i][2]);

    Ich möchte gern, dass pickup[i] also mein DynamicPickup auf 20.0 Meter gestreamt wird


    CreateDynamicPickup(modelid, type, Float:x, Float:y, Float:z, worldid = -1, interiorid = -1, playerid = -1, Float:streamdistance = 100.0);
    Bevor ich etwas falsch mache frage ich lieber wie ich es richtig mache.

    wm2c6p1.png
    Ich weiß, dass ich weiß, dass ich nichts weiß.

  • Jo moin mal ne Frage habe eine /ad Befehl gemacht das Problem ist wenn der text zu lang ist bekomme ich einen scanf warning: String buffer overflow.





    woran kann das liegen das strlen(Text) > 64 nicht aufgerufen wird