[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
  • Leider gibt es da doch Errors

    Sei doch mal spezifisch, was denn für Fehler? :D


    Warum geht es nicht?


    Beide Fahrzeugtypen haben die selbe Model-ID sind aber anders.

    Wat?


    Was genau möchtest du denn nun wissen? Ich werde aus deiner Fragestellung nicht schlau?


    Willst du wissen, ob das Fahrzeug diese modelid hat...oder möchtest du wissen in welchem Fahrzeug er ist und zu welcher der Variablen gehört?


    Bzw möchtest du wissen, ob es ein Fahrzeug von Typ A ist oder von Typ B?


    //Edit:


    Das mit dem Trash machst du einfach so:


    C
    new idx = random(sizeof(trash1));
    SetPlayerCheckpoint(playerid, trash1[idx][0],trash1[idx][1],trash1[idx][2]);

    ast2ufdyxkb1.png


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

  • @Madness Hoffe mal ich habe richtig verstanden was du meinst. Dein Code widerspricht etwas dem, was du erreichen möchtest. ?(

    public OnPlayerConnect(playerid) {
    new time[3];
    gettime(time[0], time[1], time[2]); // Stunde, Minute, Sekunde
    if(time[0] == 5 && time[1] >= 45) {
    ShowPlayerDialog(i,Dialog_Aufraeumen,DIALOG_STYLE_MSGBOX,""SERVER_NAME"","Der Server ist aufgrund Aufräumarbeiten unerreichbar.\nBitte versuche es in Kürze erneut.","Schließen","");
    Kick(playerid);
    }
    }

    Den Rest müsstest du einfach kicken.


    E-2: Formatierung..

  • @Kaliber
    Ja ich habe 2 Möglichkeiten.
    Einmal könnte ich die Vehicle-ID abfragen, aber dafür habe ich 2 Arrays.
    Oder ich frage die Model-ID ab.


    Die Vehicle-ID abfrage gefällt mir da lieber, da ich nicht weiß ob ich das Model noch wo anders nutzen möchte


    Code
    if(vehicleid == FahrzeugTypA[idx] || vehicleid == FahrzeugTypB[i])

    Das ist ja so blöd, da ich 2 Schleifen davor laufen lassen muss.

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

  • Das ist ja so blöd, da ich 2 Schleifen davor laufen lassen muss.

    Gibt hier 2 Möglichkeiten.


    ast2ufdyxkb1.png


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

  • Hab mich für die Schleifen entschieden.


    Code
    new vehicleid = GetPlayerVehicleID(playerid);
    if(IsInAorB(vehicleid))

    Was mache ich falsch?

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

  • Haha :D



    C
    new vehicleid = GetPlayerVehicleID(playerid);
    if(IsInAorB(vehicleid))
    {
    //...
    }
    else
    {
    //Nachricht das er nicht im Fahrzeug ist
    }

    Es ist egal, ob ich zu Fuß unterwegs bin oder im richtigen Fahrzeug er zeigt mir immer das nach der if Abfrage nie den else Teil.

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

  • if(IsInAorB(vehicleid))

    Achso, ja das wird nicht abgedeckt, schreibe die Funktion mal so:



    C
    stock IsInAorB(vehicleid)
    {
        if(!vehicleid) return 0;
        for(new i; i<sizeof(FahrzeugTypA); i++) if(vehicleid == FahrzeugTypA[i]) return 1;
        for(new i; i<sizeof(FahrzeugTypB); i++) if(vehicleid == FahrzeugTypB[i]) return 1;
        return 0;
    }

    Aber ist komisch, dass das geht...das bedeutet wohl, dass nicht alle Array-Felder Fahrzeugen zugewiesen wurden ;)

    ast2ufdyxkb1.png


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

  • Zitat von Kaliber

    das bedeutet wohl, dass nicht alle Array-Felder Fahrzeugen zugewiesen wurden

    Ja natürlich, die Einträge brauchen auch bisschen Platz.
    Nicht das die Einträge Klaustrophobie haben und mein ganzes System nicht mehr funktioniert. :whistling:

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

  • Das hier kommt raus


    Code
    SFR3.pwn(2500) : error 017: undefined symbol "string"
    SFR3.pwn(2500) : error 017: undefined symbol "string"
    SFR3.pwn(2500) : error 029: invalid expression, assumed zero
    SFR3.pwn(2500) : fatal error 107: too many error messages on one line


    Bei folgendem Code


    Code
    SendMessageEx(-1, -1, "{B0E66A}%s {CCCCCC} joined the server","%d ha entrado al servidor","{B0E66A}%s {CCCCCC}ha entrado no servidor", PI[playerid][P_NAME]);
  • Jaaa da steht doch der Fehler...


    Musst einfach drüber:


    new string [128];


    schreiben...


    Oder eben anpassen je nach Länge ;)

    ast2ufdyxkb1.png


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

  • Ich habe ein Fahrzeug, dass hat Objekte attached.
    Wenn es explodiert, sollen die Objekte verschwinden.


    Ich finde nix dazu :D
    Bzw. das Public nicht.. :(

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

  • Kann mir jemand helfen ein Blinker System mit Q (links) & E (rechts) in mein Script zu erstellen? Am besten sollte dann ein roter/orangenes Licht Objekt auftauchen.

    Gibts dafür nicht schon genug Systeme?


    https://breadfish.de/index.php?thread/71537-blinker-system/
    https://forum.sa-mp.com/showthread.php?t=72210
    https://forum.sa-mp.com/showthread.php?t=94122


    Einfach mal googeln? ^^

    ast2ufdyxkb1.png


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

  • Ich will nämlich herausfinden bzw. abfragen wem das Job-Fahrzeug gehört

    Das kannst du doch über die vehicleid herausfinden.


    Musst nur durch die Job-Fahrzeuge loopen und schauen, auf wen die Vehicleid zutrifft :)

    ast2ufdyxkb1.png


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

  • Ich speicher mir aber immer nur den Index, ich kann ja dann nicht abfragen ob "JobFahrzeug[playerid] == i" ist ?
    Da es ja noch andere Fahrzeuge mit dem Index gibt.


    Was passiert denn, wenn ich die VID speichere das Fahrzeug heißt Job1Fahrzeug[2], wenn ich das einer Variable gebe heißt die doch nicht auch Job1Fahrzeug[2] oder?

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

  • aber immer nur den Index

    Du kannst doch das rückwärts machen:



    Und dann bekommst du die playerid von dem Spieler, dem das Fahrzeug mit dem dazugehörigen index gehört :)

    ast2ufdyxkb1.png


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