Allgemein
News
News-Archiv
Partner
Netzwerk
Banner
Header
Media
Downloads
Impressum

The Elder Scrolls
Arena
Daggerfall
Spin-offs
Romane
Jubiläum
Reviews
Welt von TES
Lore-Bibliothek
Namens-
generator

FRPGs

Elder Scrolls Online
Allgemein
Fraktionen
Charakter
Kargstein
Technik
Tamriel-
Manuskript

Media

Skyrim
Allgemein
Lösungen
Tipps & Tricks
Steam-Kniffe
Review
Media
Plugins & Mods

Oblivion
Allgemein
Lösungen
Tipps & Tricks
Technik
Charakter
Media
Plugins & Mods
Kompendium

Morrowind
Allgemein
Lösungen
Tipps & Tricks
Media
Plugins & Mods

Foren
The Elder Scrolls Online
Hilfe & Diskussion

Skyrim
Hilfe & Diskussion
Plugins & Mods

Ältere TES-Spiele
TES-Diskussion
Oblivion-Plugins
Morrowind-Plugins

Community
Taverne zum Shalk
Adventures of Vvardenfell
Tales of Tamriel
Ergebnis 1 bis 5 von 5

Thema: script-kontrolle

  1. #1

    script-kontrolle

    tach,

    kann mir plz jemand sagen ob dieses script korrelt ist und funktioniert?

    scriptname MS45MonsterScript

    short done

    begin OnPackageChange HackdirtBrethrenGetPlayer
    set MS45.attackPC to 0
    end

    Begin OnDeath
    If GetStage 001questofthedeep == 40
    if done == 0
    SetStage 001questofthedeep 50
    set done to 1
    Return
    Endif
    EndIf
    End

    der untere teil is neu und soll bewirken, dass, wann man den NPC mit dem script killt, (wenn man auf stage 40 von 001questofthedeep is), die stage auf 50 gesetzt wird. das mit der variable soll bewirken dass das nur einmal geschiet.

  2. #2
    Ausprobieren, dann weißt du ob das funktioniert.


    Sollte eigentlich so funktionieren, auch wenn du dir das Done sparen kannst. GetStage gibt nämlich immer die höchste jemals erreichte Stage der Quest an. Sobald du die einmal auf 50 gesetzt hat wird das nie wieder 40 ausgeben.
    Außerdem kannst du dir das Return sparen, da danach sowieso nichts mehr kommt.

    Alles nur Kleinigkeiten, nichts dramatisches. Wollte ich trotzdem mal erwähnt haben.


    Das einzig wichtige was imho fehlt ist Player als Parameter beim OnDeath-Block, da so dass Script immer ausgelöst wird wenn der NPC stirbt, egal wer ihn getötet hat.
    Code:
    scriptname MS45MonsterScript
    
    begin OnPackageChange HackdirtBrethrenGetPlayer
    set MS45.attackPC to 0
    end
    
    Begin OnDeath Player
    If GetStage 001questofthedeep == 40
    SetStage 001questofthedeep 50
    EndIf
    End

    PS:
    In Zukunft für Scripte bitte den Code-Tag verwenden. Das sieht dann um einiges leserlicher aus.

  3. #3
    code tag mach ich normwe. aber dieses script is im TS auch net formatiert....

    ahja, und testen konnt ich aus zeitgründen net

    wenn man des done weglässt, kanns dann net passieren, dass wenn man den gegener killt, man auf stage 50 kommt (dann der dialog mitm text kommt), und wenn man den gegner ca. 5 min später nochmals killt dann der dialog wieder kommt?!

    ansonsten: thx für die hilfe

  4. #4
    warte mal, sollte dein gegner da, nicht ein Quest-Gegner sein? Dann sollte er aber nur einmal existieren, außerdem:
    Code:
    If GetStage 001questofthedeep == 40
    wird nur eine aktion ausgeführt, wenn der Quest schon auf stage 40 ist, solange diese bedingung nicht erfüllt wird, passiert rein garnix.

  5. #5
    wird nur eine aktion ausgeführt, wenn der Quest schon auf stage 40 ist, solange diese bedingung nicht erfüllt wird, passiert rein garnix.

    -.- mann bin ich doof^^

    stimmt, überlegungsfehler meinerseits, aufgrund dieses if brauch ich ja ger nix anderes mehr :P

    danke^^

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •