Scriptname DarkScalesScript
short GotScales
short Korrektur
Begin OnAdd Player
if GotScales == 0
player.ModActorValue strength 2
player.ModActorValue agility 2
player.ModActorValue intelligence 2
player.ModActorValue personality -2
player.addspell DarkScalesAbility
set GotScales to 1
set Korrektur to 1
endif
End
Begin OnDrop Player
if GotScales == 1
player.ModActorValue strength -2
player.ModActorValue agility -2
player.ModActorValue intelligence -2
player.ModActorValue personality 2
player.removespell DarkScalesAbility
set GotScales to 0
set Korrektur to 0
endif
End
Begin GameMode
; ##### Korrektur ist auf 1, die Waage wird aber nicht abgelegt, sondern einfach mit removeItem aus dem Inventar entfernt.
; ##### Damit verbleiben die Zauber und Boni beim Spieler. Hier greift die Korrektur.
if Korrektur == 1 && Player.GetItemCount DarkScales == 0 && GotScales == 1
player.ModActorValue strength -2
player.ModActorValue agility -2
player.ModActorValue intelligence -2
player.ModActorValue personality 2
player.removespell DarkScalesAbility
set Korrektur to 2
; ##### Die Korrektur ist nun auf 2, der Spieler bekommt die Waage nun mit AddItem zurück.
; ##### Da sich nicht via onAdd genommen wird, muss abermals korrigiert werden.
elseif Korrektur == 2 && Player.GetItemCount DarkScales == 1 && GotScales == 1
player.ModActorValue strength 2
player.ModActorValue agility 2
player.ModActorValue intelligence 2
player.ModActorValue personality -2
player.addspell DarkScalesAbility
set Korrektur to 1
endif
end