139 lines
5.2 KiB
Plaintext
139 lines
5.2 KiB
Plaintext
Scriptname _00E_FS_NQ05_PlayerAlias extends ReferenceAlias
|
|
|
|
Event OnInit()
|
|
AddInventoryEventFilter(_00E_EmptyFormlist)
|
|
|
|
If FS_NQ05.GetCurrentStageID() == 35 ; version update
|
|
AddInventoryEventFilter(SkeeverTail)
|
|
AddInventoryEventFilter(Garlic)
|
|
AddInventoryEventFilter(MothWingMonarch)
|
|
AddInventoryEventFilter(Vynroot)
|
|
endif
|
|
|
|
_00E_FS_NQ05_GarlicCountGlobal.Value = PlayerREF.GetItemCount(Garlic)
|
|
_00E_FS_NQ05_MothWingMonarchCountGlobal.Value = PlayerREF.GetItemCount(MothWingMonarch)
|
|
_00E_FS_NQ05_SkeeverTailCountGlobal.Value = PlayerREF.GetItemCount(SkeeverTail)
|
|
_00E_FS_NQ05_VynrootCountGlobal.Value = PlayerREF.GetItemCount(Vynroot)
|
|
|
|
FS_NQ05.UpdateCurrentInstanceGlobal(_00E_FS_NQ05_GarlicCountGlobal)
|
|
FS_NQ05.UpdateCurrentInstanceGlobal(_00E_FS_NQ05_MothWingMonarchCountGlobal)
|
|
FS_NQ05.UpdateCurrentInstanceGlobal(_00E_FS_NQ05_SkeeverTailCountGlobal)
|
|
FS_NQ05.UpdateCurrentInstanceGlobal(_00E_FS_NQ05_VynrootCountGlobal)
|
|
EndEvent
|
|
|
|
Event OnItemAdded(Form akBaseItem, int aiItemCount, ObjectReference akItemReference, ObjectReference akSourceContainer)
|
|
|
|
If FS_NQ05.GetCurrentStageID() != 35
|
|
AddInventoryEventFilter(_00E_EmptyFormlist) ; in case clearing fails
|
|
RemoveInventoryEventFilter(Garlic)
|
|
RemoveInventoryEventFilter(MothWingMonarch)
|
|
RemoveInventoryEventFilter(Vynroot)
|
|
RemoveInventoryEventFilter(SkeeverTail)
|
|
Self.Clear()
|
|
return
|
|
endif
|
|
|
|
if akBaseItem == Garlic
|
|
FS_NQ05.ModObjectiveGlobal(aiItemCount, _00E_FS_NQ05_GarlicCountGlobal, 37, 1, true, true, true)
|
|
return
|
|
endif
|
|
|
|
if akBaseItem == MothWingMonarch
|
|
FS_NQ05.ModObjectiveGlobal(aiItemCount, _00E_FS_NQ05_MothWingMonarchCountGlobal, 38, 1, true, true, true)
|
|
return
|
|
endif
|
|
|
|
if akBaseItem == SkeeverTail
|
|
FS_NQ05.ModObjectiveGlobal(aiItemCount, _00E_FS_NQ05_SkeeverTailCountGlobal, 36, 1, true, true, true)
|
|
return
|
|
endif
|
|
|
|
if akBaseItem == Vynroot
|
|
FS_NQ05.ModObjectiveGlobal(aiItemCount, _00E_FS_NQ05_VynrootCountGlobal, 39, 1, true, true, true)
|
|
return
|
|
endif
|
|
|
|
EndEvent
|
|
|
|
Event OnItemRemoved(Form akBaseItem, int aiItemCount, ObjectReference akItemReference, ObjectReference akDestContainer)
|
|
|
|
If FS_NQ05.GetStage() != 35
|
|
AddInventoryEventFilter(_00E_EmptyFormlist) ; in case clearing fails
|
|
RemoveInventoryEventFilter(Garlic)
|
|
RemoveInventoryEventFilter(MothWingMonarch)
|
|
RemoveInventoryEventFilter(Vynroot)
|
|
RemoveInventoryEventFilter(SkeeverTail)
|
|
Self.Clear()
|
|
return
|
|
endif
|
|
|
|
if akBaseItem == Garlic
|
|
bool bNotify = (_00E_FS_NQ05_GarlicCountGlobal.Value > 0)
|
|
_00E_FS_NQ05_GarlicCountGlobal.Value = PlayerREF.GetItemCount(Garlic)
|
|
FS_NQ05.UpdateCurrentInstanceGlobal(_00E_FS_NQ05_GarlicCountGlobal)
|
|
if bNotify && (_00E_FS_NQ05_GarlicCountGlobal.Value == 0) && FS_NQ05.IsObjectiveCompleted(37)
|
|
FS_NQ05.SetObjectiveCompleted(37, false)
|
|
FS_NQ05.SetObjectiveDisplayed(37, true, true)
|
|
elseif (_00E_FS_NQ05_GarlicCountGlobal.Value > 0) && ! FS_NQ05.IsObjectiveCompleted(37)
|
|
FS_NQ05.SetObjectiveCompleted(37, true)
|
|
endif
|
|
return
|
|
endif
|
|
|
|
if akBaseItem == MothWingMonarch
|
|
bool bNotify = (_00E_FS_NQ05_MothWingMonarchCountGlobal.Value > 0)
|
|
_00E_FS_NQ05_MothWingMonarchCountGlobal.Value = PlayerREF.GetItemCount(MothWingMonarch)
|
|
FS_NQ05.UpdateCurrentInstanceGlobal(_00E_FS_NQ05_MothWingMonarchCountGlobal)
|
|
if bNotify && (_00E_FS_NQ05_MothWingMonarchCountGlobal.Value == 0) && FS_NQ05.IsObjectiveCompleted(38)
|
|
FS_NQ05.SetObjectiveCompleted(38, false)
|
|
FS_NQ05.SetObjectiveDisplayed(38, true, true)
|
|
elseif (_00E_FS_NQ05_MothWingMonarchCountGlobal.Value > 0) && ! FS_NQ05.IsObjectiveCompleted(38)
|
|
FS_NQ05.SetObjectiveCompleted(38, true)
|
|
endif
|
|
return
|
|
endif
|
|
|
|
if akBaseItem == SkeeverTail
|
|
bool bNotify = (_00E_FS_NQ05_SkeeverTailCountGlobal.Value > 0)
|
|
_00E_FS_NQ05_SkeeverTailCountGlobal.Value = PlayerREF.GetItemCount(SkeeverTail)
|
|
FS_NQ05.UpdateCurrentInstanceGlobal(_00E_FS_NQ05_SkeeverTailCountGlobal)
|
|
if bNotify && (_00E_FS_NQ05_SkeeverTailCountGlobal.Value == 0) && FS_NQ05.IsObjectiveCompleted(36)
|
|
FS_NQ05.SetObjectiveCompleted(36, false)
|
|
FS_NQ05.SetObjectiveDisplayed(36, true, true)
|
|
elseif (_00E_FS_NQ05_SkeeverTailCountGlobal.Value > 0) && ! FS_NQ05.IsObjectiveCompleted(36)
|
|
FS_NQ05.SetObjectiveCompleted(36, true)
|
|
endif
|
|
return
|
|
endif
|
|
|
|
if akBaseItem == Vynroot
|
|
bool bNotify = (_00E_FS_NQ05_VynrootCountGlobal.Value > 0)
|
|
_00E_FS_NQ05_VynrootCountGlobal.Value = PlayerREF.GetItemCount(Vynroot)
|
|
FS_NQ05.UpdateCurrentInstanceGlobal(_00E_FS_NQ05_VynrootCountGlobal)
|
|
if bNotify && (_00E_FS_NQ05_VynrootCountGlobal.Value == 0) && FS_NQ05.IsObjectiveCompleted(39)
|
|
FS_NQ05.SetObjectiveCompleted(39, false)
|
|
FS_NQ05.SetObjectiveDisplayed(39, true, true)
|
|
elseif (_00E_FS_NQ05_VynrootCountGlobal.Value > 0) && ! FS_NQ05.IsObjectiveCompleted(39)
|
|
FS_NQ05.SetObjectiveCompleted(39, true)
|
|
endif
|
|
return
|
|
endif
|
|
|
|
endEvent
|
|
|
|
Quest Property FS_NQ05 Auto
|
|
|
|
Ingredient Property Garlic Auto
|
|
Ingredient Property MothWingMonarch Auto
|
|
Ingredient Property Vynroot Auto
|
|
Ingredient Property SkeeverTail Auto
|
|
|
|
GlobalVariable Property _00E_FS_NQ05_GarlicCountGlobal Auto
|
|
GlobalVariable Property _00E_FS_NQ05_MothWingMonarchCountGlobal Auto
|
|
GlobalVariable Property _00E_FS_NQ05_SkeeverTailCountGlobal Auto
|
|
GlobalVariable Property _00E_FS_NQ05_VynrootCountGlobal Auto
|
|
|
|
Actor Property PlayerREF Auto
|
|
|
|
FormList Property _00E_EmptyFormlist Auto
|