[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
  • Code
    if(!strcmp(cmdtext, "/stin", true))
    {
        if(!IsPlayerInAnyVehicle(playerid))return 1;
        new cacheVID = GetPlayerVehicleID(playerid), cacheSeat = GetPlayerVehicleSeat(playerid), Float:nowX, Float:nowY, Float:nowZ;
        GetPlayerPos(playerid, nowX, nowY, nowZ),
        SetPlayerPos(playerid, nowX, nowY, nowZ+0.2),
        PutPlayerInVehicle(playerid, cacheVID, cacheSeat);
        return 1;
    }

    Eigentlich, muss das so gehen. Übernehme den Befehl mal so..

  • Moin,


    ich möchte gerne auf meine Frakcars ein Kennzeichen gebe welches in der DB gespeichert werden soll, jedoch klappts nicht.


    Funktionen:

    MYSQL Error:

    [13:14:35 - 09.02.2021] [ERROR] error #1054 while executing query "INSERT INTO cars (modelid,typ,owner,tank,batterie,kilometer, motorschaden, x,y,z,r,plate) VALUES (416,2,3,80.000000,100,0,0,-89.773300,-1621.156860,3.365408,78.901093,LF765WT)": Unknown column 'LF765WT' in 'field list'


    Was mache ich falsch?


    Vielen Dank im Voraus.


    MfG


    Allrounder18

    • Offizieller Beitrag

    Was mache ich falsch?

    Versuch am besten immer zu escapen, wenn du SQL verwendest - dies ist ein oft gemachter Fehler.

    Um dann zu prüfen, ob deine Abfrage korrekt ist, kannst du immer online-Tools verwenden, wie dieses hier: https://www.eversql.com/sql-syntax-check-validator/

  • Versuch am besten immer zu escapen, wenn du SQL verwendest - dies ist ein oft gemachter Fehler.

    Um dann zu prüfen, ob deine Abfrage korrekt ist, kannst du immer online-Tools verwenden, wie dieses hier: https://www.eversql.com/sql-syntax-check-validator/

    Danke, der Validator sagt es is richtig.


    Wenn ich es so schreibe wie du vorschlägst wirft das Script Errors.

    • Offizieller Beitrag

    Wenn ich es so schreibe wie du vorschlägst wirft das Script Errors.

    In Pawn musst du das in einer Zeile schreiben:

    INSERT INTO `cars` ( `modelid`, `typ`, `owner`, `tank`, `batterie`, `kilometer`, `motorschaden`, `x`, `y`, `z`, `r`, `plate` ) VALUES ( '%i', '%i', '%i', '%f', '%i', '%i', '%i', '%f', '%f', '%f', '%f', '%s' )

  • In Pawn musst du das in einer Zeile schreiben:

    INSERT INTO `cars` ( `modelid`, `typ`, `owner`, `tank`, `batterie`, `kilometer`, `motorschaden`, `x`, `y`, `z`, `r`, `plate` ) VALUES ( '%i', '%i', '%i', '%f', '%i', '%i', '%i', '%f', '%f', '%f', '%f', '%s' )

    Danke, klappt.


    Wie baue ich das jetzt noch in die Variable AllFahrzeugInfo[vID][fahrzeug_Kennzeichen] ein im Stock Addfraktioncar?


    Edit: Jetzt wird zwar das Fahrzeug mit Kennzeichen in der DB gespeichert aber das Kennzeichen wird ingame nicht gesetzt.

    • Offizieller Beitrag

    das Kennzeichen wird ingame nicht gesetzt.

    Das liegt daran, dass das Fahrzeug re-spawned oder re-streamt werden muss. (Quelle: https://sampwiki.blast.hk/wiki/SetVehicleNumberPlate)


    Wie baue ich das jetzt noch in die Variable AllFahrzeugInfo[vID][fahrzeug_Kennzeichen] ein im Stock Addfraktioncar?

    Ein String in eine Variable bekommst du mit format format(AllFahrzeugInfo[vID][fahrzeug_Kennzeichen], sizeof(kennzeichen), "%s", kennzeichen);

    Wobei kennzeichen die Variable wäre

  • Das liegt daran, dass das Fahrzeug re-spawned oder re-streamt werden muss. (Quelle: https://sampwiki.blast.hk/wiki/SetVehicleNumberPlate)


    Ein String in eine Variable bekommst du mit format format(AllFahrzeugInfo[vID][fahrzeug_Kennzeichen], sizeof(kennzeichen), "%s", kennzeichen);

    Wobei kennzeichen die Variable wäre

    Danke, das format nimmt samp leider nicht.


    Edit: Wo setze ich den das PutPlayerIntoVehicle am besten hin?

  • magst du mal den aktuellen Code dazu posten bzw. den Fehler

    error 035: argument type mismatch (argument 2) is genau die Zeile mit deinem Format

    • Offizieller Beitrag

    error 035: argument type mismatch (argument 2) is genau die Zeile mit deinem Format

    Das liegt daran, das der zweite Parameter fehlt, in meinem Beitrag hatte ich das direkt nachgebessert - im Zitat von dir ist es auch schon richtig.

    Also einfach den 2 Parameter, die Größe, ergänzen

    format(AllFahrzeugInfo[vID][fahrzeug_Kennzeichen], sizeof(kennzeichen), "%s", kennzeichen);

  • Das liegt daran, das der zweite Parameter fehlt, in meinem Beitrag hatte ich das direkt nachgebessert - im Zitat von dir ist es auch schon richtig.

    Also einfach den 2 Parameter, die Größe, ergänzen

    format(AllFahrzeugInfo[vID][fahrzeug_Kennzeichen], sizeof(kennzeichen), "%s", kennzeichen);

    Danke, klappt. jetzt wird das Kennzeiche beim Laden nicht gesetzt.


    Muss ich noch irgendwo etwas ändern?


    Wo setzte ich den bei Addfraktioncar das Putplayerintovehicle am besten hin?

    • Offizieller Beitrag

    Muss ich noch irgendwo etwas ändern?

    Ändern kann man immer alles, da wirst du wohl nie fertig werden - solang es für dich funktioniert und auch vom Codestyle passt, dann ist ja alles gut.


    Wo setzte ich den bei Addfraktioncar das Putplayerintovehicle am besten hin?

    Na im Bestfall irgendwann nach dem Respawnen das Fahrzeug, unter Umständen mit einem Timer - damit du sicher sein kannst, dass das Fahrzeug bereits respawnt ist

  • Ändern kann man immer alles, da wirst du wohl nie fertig werden - solang es für dich funktioniert und auch vom Codestyle passt, dann ist ja alles gut.

    Das war eher darauf bezogen, da irgendwas nicht stimmt

    Na im Bestfall irgendwann nach dem Respawnen das Fahrzeug, unter Umständen mit einem Timer - damit du sicher sein kannst, dass das Fahrzeug bereits respawnt ist

    Danke, werde ich versuchen.

  • Beitrag von Kisa ()

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