[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
  • Am letzten Standort oder da wo die Kamera ist?

    Am letzten Standort, aber du kannst den Spieler ja freezen und mit SetPlayerPos(playerid, x,y,-30); z.B. unter die Map setzen, damit alles geladen wird und er nicht plötzlich iwo im Bild ist :D

    ast2ufdyxkb1.png


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

  • Hallo,


    ich habe hier nen kleines Prroblem. Aus irgendeinem Grund bekomme ich hier einen 6 steliigen Centbetrag raus zb 414,456789. Woran kann das liegen?


    Danke im Voraus.


    MfG


    Allrounder18


    Edit: Bei allen anderen Funktionen mit GetPlayerEuro bekomme ich wie gewollt einen Centbetrag mit nur 2 Stellen.

  • 1. Weil Rundungsfehler auftreten.


    2. Hast du dich da verrechnet oder ist das Absicht? So wie ich deine Formel sehe, sollte das doch eigentlich 3.56+2.2*x sein?


    Also ich würde es so machen:


    ast2ufdyxkb1.png


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

  • Danke, du ahst es vereinfacht und es kommt trotzdem bei jedem Erz nen anderer Preis raus? Es kommen zwar nur mehr 2 Centstellen, aber irgendwie ist die Berechnung falsch. Script sagt 428,91 + 16,55 = 445,67, oder stimmen die 16,55 nicht? Die 16, 55 wären in dem Fall diese Berechnung.

  • Danke, du ahst es vereinfacht und es kommt trotzdem bei jedem Erz nen anderer Preis raus?

    Jaaa...



    irgendwie ist die Berechnung falsch

    Nun, falsch ist ein harter Begriff, der hier nicht ganz zutrifft. Da es sich hier um Gleitkommafehler handelt.


    Aber hier eine Variante, die glaube ich präziser wäre:

    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 () aus folgendem Grund: Na klar, sind ja beides nu integer...sry^^

  • Danke, bis auf einen kleine Fehler hats geklappt.

    format(string,sizeof(string),"{FFFFFF}Du hast erfolgreich %d %s für %d,%d Euro an Robert verkauft",m,GetResourceName(listitem),euro,cent);, so gehts.

  • Code
    [22:36:11] [debug] Run time error 4: "Array index out of bounds"
    [22:36:11] [debug]  Attempted to read/write array element at index 21 in array of size 20
    [22:36:11] [debug] AMX backtrace:
    [22:36:11] [debug] #0 003d6a34 in public ocmd_createlager (playerid=0, params[]=@06ab00d4 "21 99") at C:\Users\PC\Desktop\SERVER\gamemodes\server.pwn:8137
    [22:36:11] [debug] #1 native CallLocalFunction () in samp7004_6922
    [22:36:11] [debug] #2 00000ce8 in public OnPlayerCommandText (playerid=0, cmdtext[]=@06ab0088 "/createlager 21 99") at C:\Users\PC\Desktop\SERVER\pawno\include\ocmd.inc:77




    MAX_FRACS ist auf 23 definiert!

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Code
    C:\Users\PC\Desktop\SERVER\gamemodes\script.pwn(58640) : warning 224: indeterminate array size in "sizeof" expression (symbol "")


    Code
                for(new Slot=0;Slot<MaxVehicles(playerid);Slot++)
                {
                    format(query, sizeof(query), "SELECT * FROM `server_vehicles` WHERE `owner`='%s' AND `vehSlot` = '%d'", GetName(playerid), Slot); //58640
                    mysql_function_query(gSQL, query, true, "LoadPlayerVehicles", "ii", playerid, Slot);
                }
  • Guten Abend,


    ich hab folgendes Problem.


    Code
    [debug] Run time error 4: "Array index out of bounds"
    [debug]  Attempted to read/write array element at index 83 in array of size 7
    [debug] AMX backtrace:
    [debug] #0 000a2374 in public LadeFraktionFahrzeugDaten () at C:\SAMP\ARP2.0\pawno\include\../include/systeme/frakautos.inc:63

    https://hastebin.com/ozosoruzaz.m

    Hier ist der Code dazu zu finden.

    Ich weiß einfach nicht wo der Fehler liegt.


    Danke im Voraus.


    MfG


    Allrounder18


    Edit: MAX_FRAKTIONEN = 7

  • Ich kam bei meinem Problem siehe 2 Posts über mir etwas weiter.

    Jedoch kommt da nen Error.


    Ich habe:

    veh_car_counter[MAX_FRAKTION][MAX_FRAKTAGS], 
    #define MAX_FRAKTAGS = 7

            c = veh_car_counter[FraktionDaten[FrakFahrzeugInfo[id][frakfahrzeug_Fraktion]]][fraktion_Tag];

    Error:

    error 033: array must be indexed(variable "FraktionDaten")


    Was muss ich hier machen?

  • Könntest du den FraktionDaten Array zeigen, damit man den Fehler finden kann.

  • Code
    C:\Users\PC\Desktop\SERVER\gamemodes\script.pwn(58640) : warning 224: indeterminate array size in "sizeof" expression (symbol "")


    Code
                for(new Slot=0;Slot<MaxVehicles(playerid);Slot++)
                {
                    format(query, sizeof(query), "SELECT * FROM `server_vehicles` WHERE `owner`='%s' AND `vehSlot` = '%d'", GetName(playerid), Slot); //58640
                    mysql_function_query(gSQL, query, true, "LoadPlayerVehicles", "ii", playerid, Slot);
                }

    Das ganze würde ich sowieso etwas überdenken. Wieso musst du denn jedes einzelne Fahrzeug von einem Spieler selektieren? Reicht es nicht, alle zu selektieren und das in LoadPlayerVehicles() zu verarbeiten? Ohne jetzt weiteren Code zu sehen würde ich einfach behaupten, dass das auch ginge. Und da sparst du dir dann die "MaxVehicles(playerid)"-Anzahl an Queries.


    Ansonsten, wie wird query deklariert?

  • Douq


    Sorry für die späte Antwort.

    Es sollen maximal die Fahezeuge geladen werden die er auch derzeit nutzt.


    So wird Sie definiert.

    Code
    query[128];



    Guten Tag,


    Spieler[pID][pLawyerPoints] kann man jemand punkte für sein Skill geben und das geht nach punkten.


    Wie kann ich sagen wen ich jetzt sage ich setze den Skill auf 1 das er die Punkte erhält um einige zeilen zu sparen?

  • guten morgen,ich hatte die videos angeschaut die ich velinke.


    das problem ist ich registriere aberkommt nach regitrieren nix,im video bei Mogly1 schon.


    Script code


    Server-log



    Externer Inhalt
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.
    [\media],
    Externer Inhalt
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.
    [\media]


    edit by Douq: Passwort aus server log entfernt