Compare commits

...

3 Commits

14 changed files with 113 additions and 58 deletions

BIN
SetMountNames.esp Normal file

Binary file not shown.

BIN
SyncKillMove.esp Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,17 @@
Scriptname _00E_NQ06_DonkeyAlias extends ReferenceAlias Hidden
GlobalVariable Property _00E_MuleOwned Auto
Event OnPlayerLoadGame()
If (_00E_MuleOwned.GetValue() as Int) > 0
String sMuleName = (GetOwningQuest() as _00E_NQ06_Functions).sMuleName
if sMuleName != ""
(GetReference() as Actor).GetActorBase().SetName(sMuleName)
endif
EndIf
EndEvent

View File

@ -0,0 +1,17 @@
Scriptname _00E_NQ06_ShadowAlias extends ReferenceAlias Hidden
GlobalVariable Property _00E_FathersShadowOwned Auto
Event OnPlayerLoadGame()
If (_00E_FathersShadowOwned.GetValue() as Int) > 0
String sShadowName = (GetOwningQuest() as _00E_NQ06_Functions).sFathersShadowName
if sShadowName != ""
(GetReference() as Actor).GetActorBase().SetName(sShadowName)
endif
EndIf
EndEvent

View File

@ -0,0 +1,34 @@
Scriptname _00E_SyncKillMoveAlias extends ReferenceAlias
GlobalVariable Property KillMove Auto
Event OnInit()
; it seems like that this ini setting does not do stuff by itself (or it is bugged)
; therefore we need to read it from the file and change the global with which the killmoves are conditioned
if SKSE.GetVersion() == 0
return
endif
If Utility.GetINIBool("bVATSDisable:VATS")
KillMove.SetValue(0.0)
Else
KillMove.SetValue(1.0)
EndIf
EndEvent
Event OnPlayerLoadGame()
if SKSE.GetVersion() == 0
return
endif
If Utility.GetINIBool("bVATSDisable:VATS")
KillMove.SetValue(0.0)
Else
KillMove.SetValue(1.0)
EndIf
EndEvent

View File

@ -58,22 +58,6 @@ String Function SetMountName()
EndFunction
Function RefreshNamesOnSaveLoad()
{makes sure that the names are saved}
If _00E_HorseOwned.GetValueInt() == 1 && sHorseName != ""
PlayerHorse.GetActorReference().GetActorBase().SetName(sHorseName)
EndIf
If _00E_MuleOwned.GetValueInt() == 1 && sMuleName != ""
Bonni.GetActorReference().GetActorBase().SetName(sMuleName)
EndIf
If _00E_FathersShadowOwned.GetValueInt() == 1 && sFathersShadowName != ""
FS_NQR05_FatherShadow.GetActorReference().GetActorBase().SetName(sFathersShadowName)
EndIf
EndFunction
Function RenameMount(bool _bReturnToSelection)
int iRenameSelection = _00E_NQ06_RenameMountSelection.Show()

View File

@ -18,8 +18,6 @@ Event OnInit()
PlayerREF.SetActorValue("speedMult", 95)
PlayerREF.SetActorValue("Healrate", 0)
EnableDisableKillmove()
; starts all quests that are in the formlist
Int iIndex = QuestsToStart.GetSize()
While iIndex > 0
@ -41,19 +39,6 @@ EndEvent
; ALL UPDATES
;=====================================================================================
Function EnableDisableKillmove()
; it seems like that this ini setting does not do stuff by itself (or it is bugged)
; therefore we need to read it from the file and change the global with which the killmoves are conditioned
If Utility.GetINIBool("bVATSDisable:VATS") == false
KillMove.SetValueInt(1)
Else
KillMove.SetValueInt(0)
EndIf
EndFunction
Function SetAutoSaveInterval()
; updates the autosave interval
@ -62,23 +47,6 @@ Function SetAutoSaveInterval()
EndFunction
Function FailsafeMQ05PrologueAliases()
; failsafe for issue 1536, fills empty aliases
If MQ05PrologueFunctions == None
MQ05PrologueFunctions = Game.GetForm(0x00033A5B) as _00E_MQ05Prologue_Functions
EndIf
MQ05PrologueFunctions.FillEmptyAliasesFailsafe()
EndFunction
Function RefreshMountNamesOnLoad()
_00E_NQ06_Functions NQ06Functions = Game.GetForm(0x725BA) as _00E_NQ06_Functions
NQ06Functions.RefreshNamesOnSaveLoad()
EndFunction
;=====================================================================================
; MAINTENANCE
@ -100,13 +68,7 @@ Function Maintenance()
Message.ResetHelpMessage("Clear")
(Game.GetForm(0xAC80E) as Message).ShowAsHelpMessage("Clear", 0.1, 1, 1)
EnableDisableKillmove()
SetAutoSaveInterval()
FailsafeMQ05PrologueAliases()
RefreshMountNamesOnLoad()
SendModEvent("Enderal_GameLoaded")
@ -116,10 +78,6 @@ EndFunction
; PROPERTIES
;=====================================================================================
_00E_MQ05Prologue_Functions Property MQ05PrologueFunctions Auto
Actor Property PlayerREF Auto
FormList Property QuestsToStart Auto
GlobalVariable Property KillMove Auto

View File

@ -0,0 +1,45 @@
Scriptname PlayerHorseScript extends ReferenceAlias
Event OnDeath(Actor akKiller)
MySelf = GetActorReference()
_00E_HorseOwned.SetValue(0)
EndEvent
Event OnUnload()
If MySelf.IsDead()
; disable the dead horse if it is unloaded
MySelf.Disable()
MySelf.Delete()
(GetOwningQuest() as _00E_NQ06_Functions).sHorseName = ""
; added a new horse that can be bought at the stables
Myself = StablesPosition.PlaceActorAtMe(LvlHorseSaddled)
Alias_HorseRef.ForceRefTo(MySelf)
Alias_HorseRef.GetRef().SetFactionOwner(StablesFaction)
EndIf
EndEvent
Event OnPlayerLoadGame()
If (_00E_HorseOwned.GetValue() as Int) > 0
String sHorseName = (GetOwningQuest() as _00E_NQ06_Functions).sHorseName
if sHorseName != ""
(GetReference() as Actor).GetActorBase().SetName(sHorseName)
endif
EndIf
EndEvent
Actor Property MySelf Auto
ObjectReference Property StablesPosition Auto
ActorBase Property LvlHorseSaddled Auto
ReferenceAlias Property Alias_HorseRef Auto
Faction Property StablesFaction Auto
GlobalVariable Property _00E_HorseOwned Auto