[SAMMELTHREAD] Kleine Scripting Fragen

In 10 Minuten startet der nächtliche Backupvorgang! Es kann währenddessen (ca. 10 Minuten) zu Einschränkungen bei der Nutzung des Forums kommen
Weitere Infos findet ihr im Thema Backup des Forums
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
  • _Flex_

    Muss es unbedingt eine vorgefertigte NPC RECORD Aufnahme sein oder willst einfach einen Bot dort stehen haben?

    Wenn ja, schau dir mal die Actor Funktionen an! :)

    Ja Actors habe ich auch

    allerdings hat der NPC nur die funktion die ID0 zu belegen

    Wieso returnst du hier 0?

    Ups keine Ahnung habe ich wohl mal ausversehen geändert aber bringt das irgendeinen unterschied?

  • Ja Actors habe ich auch

    allerdings hat der NPC nur die funktion die ID0 zu belegen

    Tu das nicht um diese "ID0 bugs" zu verhindern, behebe lieber die Logikfehler die im Skript auftreten.

    Es kann in seltenen fällen passieren das der NPC timeoutet oder mal nicht connected oder später als andere Spieler (z.B. Neustarts) abgesehen davon machst du jedem neuen Skripter kein gefallen wenn sich da Bugs rumschleichen.


    Abgesehen davon sollte das mit dem Skin funktionieren wenn du https://team.sa-mp.com/wiki/SetSpawnInfo.html unter OnPlayerRequestClass für den NPC anwendest.

  • Moin leude,

    eine frage ich habe einen wert von 532 wie kann ich es nun machen das er mir nur die vollen 100er stellen anzeigt also 5?

    Da gäbe es sehr viele Möglichkeiten, ich demonstriere dir mal zwei:


    1. Einfach durch 100 teilen

    C
    new x = 532;
    new front = floatround(x/100, floatround_floor); //<< = 5

    2. Einfach in einen String konvertieren

    C
    new x = 532;
    new string[11];
    valstr(string, x);
    new front = string[0]-48; //Die -48 für die ASCII 0

    ast2ufdyxkb1.png


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

  • Guten Abend. ich hatte das mal gefragt aber ich frage nochmal.


    ich wolte im filderscript mal testen das kleinen runte auto der aleine eine runte färrt und 3 pasanten der über den straße geht das der auto anhählt.


    wie kann ich das am besten erstellen?


    es soll ja über filderscript laufen.

  • Kevin kannst du dir bitte 5 Minuten Zeit nehmen und es genauer erklären, man versteht es wirklich nicht.

    Ich wolte testen eher schauen.


    ein auto soll seine um stadthalle. lspd rumfahren im kreis.


    wenn Npcs und spieler über den straße geht soll der auto anhalen und nicht weiter fahren. wenn der straße wieder frei ist darf er weiter fahren.


    dazu soll der auto nicht anderen autos rammen.

  • https://github.com/CAHenson/Ul…npcmodes/taxi_ls_test.pwn

    Dieser NPC Mode macht bereits was du möchtest, also brauchst du nicht vieles neu erfinden kannst den einfach benutzen.

    Dazu noch ein InGame Recording mit der Hilfe von dem npc_record Filterskript erstellen, Record Name ändern und fertig (den NPC natürlich auch mit https://team.sa-mp.com/wiki/ConnectNPC.html verbinden lassen).

  • Mein Leude,


    ich habe diesmal ein kleines Problem mit meinen Actors sie werden erstellt alles gut aber sie führen die Anumationen nicht aus woran könnte es liegen?

    Code
        ActorUWE = CreateActor(213,-202.3141,2676.2710,63.3277,250.4066);
        SetActorInvulnerable(ActorUWE,true);
        ApplyActorAnimation(ActorUWE,"CRACK","crckidle4",4.1,1,0,0,0,0);
    
        ActorNUDELNOOB =  CreateActor(209,-219.5454,2650.8962,62.8684,37.0695);
        SetActorInvulnerable(ActorNUDELNOOB,true);
        ApplyActorAnimation(ActorNUDELNOOB,"CRACK","crckidle4",4.1,1,0,0,0,0);

    Besten Dank

    ;)

  • ApplyActorAnimation(ActorUWE,"CRACK","crckidle4",4.1,1,0,0,0,0);

    Versuch mal während du bei dem Actor stehst diese Zeile ein paar mal auszuführen.

    Falls sich beim 2ten/3ten mal etwas bewegt dann ist die Animation nicht vorgeladen.


    Vorladen kannst du diese folgendermaßen:

    ApplyAnimation(playerid, "CRACK", "null", 0.0, 0, 0, 0, 0, 0); unter z.B. OnPlayerConnect.

  • Versuch mal während du bei dem Actor stehst diese Zeile ein paar mal auszuführen.

    Falls sich beim 2ten/3ten mal etwas bewegt dann ist die Animation nicht vorgeladen.


    Vorladen kannst du diese folgendermaßen:

    ApplyAnimation(playerid, "CRACK", "null", 0.0, 0, 0, 0, 0, 0); unter z.B. OnPlayerConnect.

    Also egal wie oft ich im script einfüge das er die Animation ausführen soll passiert nix aber sobald ich es mit einem Comment mache zack führt er sie beim ersten mal aus die Animationen werden alles Gepreloaded.

  • Also egal wie oft ich im script einfüge das er die Animation ausführen soll passiert nix aber sobald ich es mit einem Comment mache zack führt er sie beim ersten mal aus die Animationen werden alles Gepreloaded.

    mach das mal mit in dein script rein


    Einmal editiert, zuletzt von seegras () aus folgendem Grund: Code-Fenster hübsch auf PAWN eingestellt :)

  • Falls er in einem Interior ist, solltest du diesen reloaden, sobald man das Interior betritt.


    Wenn er draußen ist, solltest du ihn reloaden, sobald die Person in einen Radius von ihm kommt.


    Das Problem ist nämlich, dass sie clientseitig animiert werden und wenn er zu weit weg ist, schlägt das fehl und es passiert nix.

    ast2ufdyxkb1.png


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

  • Falls er in einem Interior ist, solltest du diesen reloaden, sobald man das Interior betritt.


    Wenn er draußen ist, solltest du ihn reloaden, sobald die Person in einen Radius von ihm kommt.


    Das Problem ist nämlich, dass sie clientseitig animiert werden und wenn er zu weit weg ist, schlägt das fehl und es passiert nix.

    Wie reloade ich ihn am besten wie sollte die funktion am schlausten aussehen?

  • Also egal wie oft ich im script einfüge das er die Animation ausführen soll passiert nix aber sobald ich es mit einem Comment mache zack führt er sie beim ersten mal aus die Animationen werden alles Gepreloaded.


    Wie Kaliber sagte und habe noch übersehen / nicht daran gedacht das du die die Animation unter https://team.sa-mp.com/wiki/OnActorStreamIn.html für den Spieler abspielen kannst. Preloaden natürlich nicht vergessen.

  • Wie reloade ich ihn am besten wie sollte die funktion am schlausten aussehen?

    Schwierig, kann man pauschal nicht so sagen.


    Ist er denn in einem Interior?


    Wenn ja, wie gesagt, kannst ja einfach eine ReloadActor Funktion schreiben, die ihn reloaded, also die Animation setzt. Bei mir hat aber auch das manchmal nicht geholfen, da musste man ihn komplett löschen und neu erstellen...ist zwar doof, weil er dann für 0.5sek halt mal net da ist, aaaber joa, so ist das halt mit denen :D


    //Edit: Kannst es auch mit dem Callback von MyU versuchen. Dieser wurde bei mir allerdings oft nicht aufgerufen...

    ast2ufdyxkb1.png


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

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