1. Das ist durchaus möglich. Die Funktion dazu heißt GetDistance, allerdings solltest Du die Abfragen dazu etwas eingrenzen, damit nicht in jedem Frame abgefragt wird, wie nahe der Spieler ist. Das könnte sonst auf die Performance gehen.
...
Wie genau kann ich das eingrenzen? Sorry für die dumme Frage, aber diesbezüglich bin ich etwas überfragt .
Zitat
2. Bei einem ScriptEffect kannst Du ausnutzen, dass der Block ScriptEffectFinish am Ende des Zaubers liegt. Das heißt Du gibst einem Zauber die Wirkungsdauer 15 Sekunden, dann läuft der Block ScriptEffectFinish erst nach 15 Sekunden und auch nur einmal.
...
Das geht so leider nicht. Grund: Der Script Effect dauert 60 Sekunden - aber nach 15 Sekunden soll sich für den Spieler etwas ändern.
1. Hm, wie genau man das eingrenzt, kommt darauf an, was Du damit machen willst. Aber verkehrt sollte diese Zeile am Anfang Deines Scripts nicht sein: 2. Ich weiß nicht, wie GetSecondsPassed innerhalb eines ScriptEffects reagiert. Ich würde hier auf den ScriptEffectUpdate-Block zurückgreifen. Du müsstest allerdings testen, ob dieser Block wirklich jede Sekunde durchläuft.
Ich weiß nicht, wie GetSecondsPassed innerhalb eines ScriptEffects reagiert.
...
Soweit ich sagen kann, genauso wie in einem GameMode-Block. Es gibt auch noch dieses ScriptEffectElapsedSeconds, was ich aber noch nie benutzt habe, da Timer mit GetSecondsPassed in einem Skripteffekt ebenso gut zu realisieren sind.
Zitat
Du müsstest allerdings testen, ob dieser Block wirklich jede Sekunde durchläuft.
...
Der Update-Block wird in jedem Frame einmal ausgeführt. Das Skriptbeispiel würde demnach nach 15 Frames den Effekt auslösen, nicht nach 15 sek. Ich würde folgenden Code vorschlagen:
Danke Brausebart.
Wenn der Update-Block einmal jeden Frame durchläuft, funktioniert mein Script natürlich nicht. Und dass GetSecondsPassed in ScriptEffekten ebenso arbeitet, ist eine wertvolle Information.
Huzzah, und wieder ein neuer Zauberspruch für mein Magieplugin. Jetzt nur noch ein paar für Alteration und ein Meteoritenhagel (oder so) für Destruction und ich bin glücklich ^^.