Problem Woran mag es liegen wenn --Event OnDeath(~)-- nicht ausgelöst wird

Daimonicon

Neuankömmling
Hallo,

ich würde gern von meinem Script den Tod eines Actors feststellen lassen - leider wird -Event OnDeath(~)- nie ausgelöst. Grobes Scriptschema wäre:

Event OnUpdate
--> WennNichtGradeAktiv
----> Tageszeit ermitteln
----> Distanz Spieler zu Marker vor Ort ok ?
------> Dann ReferenceAlias (Actor) platzieren
~~
EndEvent

Event OnDeath(Actor killer)
--> if (killer == Game.GetPlayer())
----->Zufällig Wartezeit bevor wieder etwas passiert.
----->Aufräumen bzw. zurück auf Anfang
--> endif
EndEvent

Momentan prüfe ich das dadurch das ich mit -RegisterForSingleUpdate(1.0)- ein erneutes Update auslöse,
welches ein -if SEMActorRef1.GetActorRef().IsDead()- dann auffängt. Aber das erklärt natürlich nicht warum das "OnDeath" nicht ausgelöst wird ?

gruß Patrick
 
Läuft das Script auch auf dem Actor der stirbt?

Meine Asky ist Essential. Um festzustellen wenn sie Niedergemacht wurde, benutze ich "Event OnEnterBleedout()". Das geht aber nur wenn das Script auf dem Actor Asky läuft.

Ich denke, das ist bei "Event OnDeath()" auch so. Es muss auf dem Actor, dessen Tod du feststellen willst laufen.
 
Zuletzt bearbeitet:
  • Like
Reaktionen: 1 Person
Hi,

nein das ganze lief über ein Questscript :?

Aber so wie du das jetzt beschreibst würde es wohl auch eher Sinn machen. In Fall das es so hinhaut wäre ich allerdings etwas Ratlos wie ich wichtige Daten dann zurück an das Questscript gebe. Da müsste ich wohl nen ScriptEvent auf den Weg schicken welches wiederum dann Variable u.ä per OnScriptEvent auffängt ? Hab darüber nur kurz was gelesen.
 
Fals dein Actor in einem Alias deiner Quest ist und der "Event OnDeath()" würde als Alias Script funktionieren, wüsste ich eine Möglichkeit

Ich habe in meinem Quest(xgfTheDogQStartUp) Script eine Function "Update()".

In einem Alias Script dieser Quest habe ich ein Property wie folgt:
>xgfTheDogQStartUp Property UpdateQuestScript Auto
QuestAliasProperty.JPG

Nun kann ich jederzeit aus dem Alias Script heraus die Update Prozedur des Quest Script starten mit:
>UpdateQuestScript.Update()

Oder du setzt eine Gobal Variable von 0 auf 1 wenn der Type stirbt, und mit einem anderen Script kannst die Variable abfragen (wenn 1 dann ist er tot...mach)
 
  • Like
Reaktionen: Daimonicon