[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
  • Versuchs mal so:new Text3D:MuellPickup[sizeof(MuellPickups)];



    Einfach: [wiki]DetachTrailerFromVehicle[/wiki]?


    Habe ich mal gemacht aber er compeliert es nicht..


  • Das könnte an 2 Möglichkeiten liegen.


    1. Das ä im Command namen, mach da mal ein ae draus.


    2. Falls es dann immer noch nicht compilt zeig mal wie du ERROR_FRAKTION definiert hast. Da können auch immer mal Fehler auftreten.


    PS: Nur als Anmerkung, du musst den Trailer nicht nochmal attachen, um ihn dann zu detachen, das macht wenig Sinn ^^


    //Edit:

    @Kaliber bringt leider nichts es kommen die selben Fehler aber statt 3 mal jetzt 7 Mal

    Hast du sicher die neuste Streamer Version?


    und zeig auch nochmal MuellPickups.

    ast2ufdyxkb1.png


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

  • Habe es jetzt hinbekommen :)


    Habe es einfach umbenannt:
    new Text3D:MuellText[sizeof(MuellPickups)];


    if(IsValidDynamic3DTextLabel(MuellText[MuellSackSpawn[y]])) DestroyDynamic3DTextLabel(MuellText[MuellSackSpawn[y]]);
    MuellText[MuellSackSpawn[y]] = CreateDynamic3DTextLabel("{FFFF6E}[Müllsack]{FFFFFF}\nBenutze LALT", FARBE_WEIS,MuellPickups[MuellSackSpawn[y]][0], MuellPickups[MuellSackSpawn[y]][1], MuellPickups[MuellSackSpawn[y]][2], 12.0);

  • Moin,


    2 Fragen :D


    Wie bekomme ich einen unix timestamp ? (Beispiel Timestamp in die Datenbank für UCP später und script)


    Und wie wandel ich einen unix timestamp in einen lesbaren Wert um ? (statt 12351403018 halt ein normales datum im Format DD/MM/YYYY)


    Mit freundlichen Grüßen
    XonarZ

  • Wie bekomme ich einen unix timestamp ? (Beispiel Timestamp in die Datenbank für UCP später und script)
    Und wie wandel ich einen unix timestamp in einen lesbaren Wert um ? (statt 12351403018 halt ein normales datum im Format DD/MM/YYYY)

    new timestamp = gettime();
    Dann ist die Variable timestamp, der Unix Timestamp von der Sekunde, in dem die Funktion aufgerufen wurde.


    Du kannst das eigentlich garnicht umwandeln.
    Du kannst stattdessen einfach [wiki]getdate[/wiki] verwenden, und auch in der Datenbank speichern.


    gibt es da Möglichkeiten?

    Nein, das ist nicht möglich. Ohne die PWN kannst du das Script nicht neu compilen, dass heißt die neue Include Version kann dort nicht eingebunden werden.

  • Du kannst das eigentlich garnicht umwandeln.

    Natürlich kann man das umwandeln, das sind doch schließlich nur Sekunden.


    Gibt da eine Funktion die heißt mktime kannste ja mal googeln die wirste bestimmt irgendwo finden.


    Oder wenn du schwere Geschütze auffahren magst: https://forum.sa-mp.com/showthread.php?t=294054

    ast2ufdyxkb1.png


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

  • Und wie wandel ich einen unix timestamp in einen lesbaren Wert um ? (statt 12351403018 halt ein normales datum im Format DD/MM/YYYY)

    Der einfachste Weg ist folgende kleine Include: https://forum.sa-mp.com/showthread.php?t=347605
    Bitte den Hinweis auf der letzten Seite (Seite 8) von mir beachten und einbauen.



    habe nur .amx Files aber die wurden anscheinend mit einer älteren Streamer Version compiliert aber möchte diese mit der neuen Streamer Version auf dem Server abspielen, gibt es da Möglichkeiten?

    Das geht nicht, der Code muss mit der zum Plugin passenden Include kompiliert werden, da sich die Funktionen zum Teil unterscheiden.

  • @Jeffry Alles klar Danke :)


    Andere frage, ich lese zum beispiel Positionen aus und an der Position wird ein Sphere erstellt, ist ein Spieler drin im Sphere kriegt er Nitro, Repair etc... Das Problem ist wenn 2 Spieler gleichzeit durch dieses Nitro fahren kriegt nur einer es.
    Kann man das anders erstellen ohne das da ein Pickup geladen wird oder ein Objekt? Und das er es nur kriegt wenn er genau auf dieser Position ist und nicht mit einem Sphere beispiel von nen umkreis 5 meter?

  • Kann man das anders erstellen ohne das da ein Pickup geladen wird oder ein Objekt?

    Kannst du grundsätzlich schon machen, zum Beispiel mit einem Timer oder unter OnPlayerUpdate.
    Wenn es nicht allzuviele Plätze sind, dann ist das kein Problem. Die Plätze speicherst du in einem globalen Array.



    Und das er es nur kriegt wenn er genau auf dieser Position ist und nicht mit einem Sphere beispiel von nen umkreis 5 meter?

    Einen kleinen Umkreis musst du allerdings machen, da man nie exakt eine Position trifft. IsPlayerInRangeOfPoint mit z.B. 1m Umkreis.



    Das Problem ist wenn 2 Spieler gleichzeit durch dieses Nitro fahren kriegt nur einer es.

    Das passiert bei Timer/OnPlayerUpdate nicht.

  • Das Problem ist das es teilweise auch über 100 "Pickups geben kann" und habe halt angst wenn ich das für jeden Spieler bei OnPlayerUpdate abfrage also ob der Spieler da in diesen "Pickup" bzw range ist das es dem Server schadet, mit laggs oder abstürze.

  • Dann versuche ich das einfach mal, danke dir :)


    Könnte man auch machen aber ich möchte halt das nur der 3DText zu sehen ist und kein Objekt, sowie das, dass "Pickup" nicht verschwindet wenn ein Spieler durch fährt etc... Habe halt kein Pickup type gefunden der diese Vorstellungen entspricht. Man kann es auch sicherlich ohne Objekt erstellen in dem man ein Unsichtbares benutzt aber ich weiß nicht...

  • kein Objekt

    Du könntest es mit Model ID 19300 versuchen.


    nicht verschwindet wenn ein Spieler durch fährt etc

    Wenn es im Fahrzeug pickup-bar sein soll wird es schwierig, das kann wohl nur der Typ 14, der verschwindet aber.
    Du könntest es natürlich direkt nach dem Pickup einmal destroyen und wieder erstellen.
    https://wiki.sa-mp.com/wiki/PickupTypes

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen