Moin!
Ich versuche mich gerade daran, aus NPCs Statuen (mit Stein-Shader) zu machen, die angreifen wenn der Spieler näher kommt. Das gibt es auch schon im Originalspiel bei einer der Diebesgildenquests in der Ayleidenruine unter der IC.
Das funktioniert auch schon gut, es gibt allerdings noch ein paar Kleinigkeiten, die irgendwie verbesserungswürdig sind.
Hier erstmal das Script:
Code:
Short SetIdle
short doOnce
begin OnLoad
[COLOR="Red"]equipitem[/COLOR] [COLOR="Red"]WEAPON-ID[/COLOR]
setalert 1
setghost 1
pickidle
setunconscious 1
setdestroyed 1
pms effectstone
end
begin OnDeath
setdestroyed 1
end
begin gamemode
If GetDistance Player <= 1000
[COLOR="Red"]NPCNAMEREF[/COLOR].SetGhost 0
[COLOR="Red"]NPCNAMEREF[/COLOR].SetUnconscious 0
[COLOR="Red"]NPCNAMEREF[/COLOR].SetDestroyed 0
Set SetIdle to 0
ElseIf SetIdle == 0
PickIdle
Set SetIdle to 1
EndIf
End
Da ich davon relativ viele aufstellen möchte, habe ich dazu ein paar Fragen:
1.) Gibt es statt
equipitem WEAPON-ID nicht eine Möglichkeit, das ohne die Weapon ID zu lösen? Dann könnte ich jede Statue anders bewaffnen und müsste nicht jedes mal ein neues Script schreiben.
2.) Das selbe gilt für
NPCNAMEREF ... 1 Script das für alle Statuen funktioniert wäre perfekt.
3.) Wenn die einmal aktiviert wurden und ich sie dann mit einem Zauber beschieße, verschwindet der Shader für die Dauer des Zaubers. Kurz nach ihrem Tod verschwindet er ebenfalls kurz. Kann man das abstellen?
4.) Wenn sie tot sind, verlieren sie Waffe und Schild, die dann auch keinen Shader mehr haben. Vermutlich lässt sich das aber nur beheben, indem man auf beides Shader legt oder sie per Script "OnDeath" entfernt, was wieder 1 Script pro Statue erfordert - richtig? ...
5.) Leider bewegen sie sich ab und zu ein bischen bzw. schwanken so hin und her ... und ich kann sie durch die Gegend schieben indem ich dagegen laufe! Wäre super wenn man beides abstellen könnte.