Added fallback for SheatheWeapon()

This commit is contained in:
Eddoursul 2024-02-13 10:02:30 +01:00
parent c04bfd830d
commit 1b092ceb78
32 changed files with 50 additions and 68 deletions

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.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -6,10 +6,7 @@ Function TeleportPlayer(ObjectReference TeleportTarget)
Game.DisablePlayerControls(abCamSwitch = true) Game.DisablePlayerControls(abCamSwitch = true)
Wait(3) Wait(3)
If PlayerREF.IsWeaponDrawn() _00E_EquipControl.SheatheWeapon(PlayerREF)
PlayerREF.SheatheWeapon()
EndIf
Wait(2)
TeleportIn() TeleportIn()
PlayerREF.MoveTo(TeleportTarget) PlayerREF.MoveTo(TeleportTarget)
TeleportOut() TeleportOut()

View File

@ -59,17 +59,10 @@ Function EnterClassMenu()
bool bDisableFighting = (SKSE.GetVersion() > 0) bool bDisableFighting = (SKSE.GetVersion() > 0)
DisablePlayerControls(false, bDisableFighting, true, false, true, false, false, true) DisablePlayerControls(false, bDisableFighting, true, false, true, false, false, true)
Player.ForceRefTo(PlayerREF) Player.ForceRefTo(PlayerREF)
Bool isFirstPerson = False
isFirstPerson = PlayerREF.GetAnimationVariableBool("IsFirstPerson")
If isFirstPerson == true
_00E_Meditate_FirstPerson.SetValueInt(1)
Else
_00E_Meditate_FirstPerson.SetValueInt(0)
EndIf
if PlayerREF.IsWeaponDrawn() _00E_Meditate_FirstPerson.SetValue(PlayerREF.GetAnimationVariableBool("isFirstPerson") as float)
PlayerREF.SheatheWeapon()
EndIf _00E_EquipControl.SheatheWeapon(PlayerREF)
Form[] equippedTorches = New Form[2] Form[] equippedTorches = New Form[2]
_00E_TorchControl.UnequipTorches(equippedTorches) _00E_TorchControl.UnequipTorches(equippedTorches)

View File

@ -66,9 +66,7 @@ Function PlayKissAnimation()
Game.SetPlayerAIDriven(True) Game.SetPlayerAIDriven(True)
Game.DisablePlayerControls(true, true, true, false, true, true, true, true) Game.DisablePlayerControls(true, true, true, false, true, true, true, true)
If PlayerREF.IsWeaponDrawn() _00E_EquipControl.SheatheWeapon(PlayerREF)
PlayerREF.SheatheWeapon()
EndIf
Utility.Wait(0.5) Utility.Wait(0.5)
@ -146,9 +144,7 @@ EndFunction
Function GetIntoPosition() Function GetIntoPosition()
If PlayerREF.IsWeaponDrawn() _00E_EquipControl.SheatheWeapon(PlayerREF)
PlayerREF.SheatheWeapon()
EndIf
EndFunction EndFunction

View File

@ -61,9 +61,7 @@ EndFunction
Function StartMemory1() Function StartMemory1()
_00E_FS_NQ03_SpiritActorREF.Enable() _00E_FS_NQ03_SpiritActorREF.Enable()
If PlayerREF.IsWeaponDrawn() _00E_EquipControl.SheatheWeapon(PlayerREF)
PlayerREF.SheatheWeapon()
EndIf
OBJEyeofMagnusVanishM.Play(PlayerREF) OBJEyeofMagnusVanishM.Play(PlayerREF)
_00E_MQ07a_WordOfTheDeadTransformSpiritM.Play(PlayerREF) _00E_MQ07a_WordOfTheDeadTransformSpiritM.Play(PlayerREF)
_00E_FS_NQ03_ShockApply.Apply() _00E_FS_NQ03_ShockApply.Apply()
@ -224,14 +222,18 @@ EndFunction
Function PlayCommentLetter() Function PlayCommentLetter()
PlayerRef.SheatheWeapon() _00E_EquipControl.SheatheWeapon(PlayerREF)
wait(0.1)
;_00E_FS_NQ03_ReadNoteMarker.Enable() ;_00E_FS_NQ03_ReadNoteMarker.Enable()
SetObjectiveCompleted(60) SetObjectiveCompleted(60)
Game.ForceThirdPerson() Game.ForceThirdPerson()
Game.SetPlayerAIDriven(True) Game.SetPlayerAIDriven(True)
Game.DisablePlayerControls() Game.DisablePlayerControls()
PlayerREF.UnequipItem(PlayerREF.GetEquippedObject(0))
if PlayerREF.GetEquippedWeapon(true)
PlayerREF.UnequipItem(PlayerREF.GetEquippedWeapon(true))
endif
wait(0.5) wait(0.5)
PlayerREF.PlayIdle(IdleNoteRead) PlayerREF.PlayIdle(IdleNoteRead)
FS_NQ03_SC17_CommentLetter.ForceStart() FS_NQ03_SC17_CommentLetter.ForceStart()
@ -298,7 +300,8 @@ Function PlayerSheatheWeapon()
SetObjectiveCompleted(70) SetObjectiveCompleted(70)
endif endif
PlayerRef.SheatheWeapon() _00E_EquipControl.SheatheWeapon(PlayerREF)
Game.EnablePlayerControls() Game.EnablePlayerControls()
Game.SetPlayerAIDriven(False) Game.SetPlayerAIDriven(False)
SetObjectiveDisplayed(95) SetObjectiveDisplayed(95)

View File

@ -7,7 +7,7 @@ Event OnTriggerEnter(ObjectReference akActionRef)
PlayerREF.AddItem(GasTrapDummy, 1, 1) PlayerREF.AddItem(GasTrapDummy, 1, 1)
PlayerREF.EquipItem(GasTrapDummy, 0, 1) PlayerREF.EquipItem(GasTrapDummy, 0, 1)
Utility.Wait(1) Utility.Wait(1)
PlayerREF.SheatheWeapon() _00E_EquipControl.SheatheWeapon(PlayerREF)
PlayerREF.RemoveItem(GasTrapDummy, 1, 1) PlayerREF.RemoveItem(GasTrapDummy, 1, 1)
Self.Disable() Self.Disable()
EndIf EndIf

View File

@ -81,7 +81,7 @@ Function CastSpecialAttack()
FS_NQR05_TharaelREF.Say(FS_NQR05_D99_TharaelLaunch_BossfightTopic) FS_NQR05_TharaelREF.Say(FS_NQR05_D99_TharaelLaunch_BossfightTopic)
FS_NQR05_FatherREF.SetGhost(True) FS_NQR05_FatherREF.SetGhost(True)
_00E_FS_NQR05_TharaelSpecialAttackOngoing.SetValueInt(1) _00E_FS_NQR05_TharaelSpecialAttackOngoing.SetValueInt(1)
FS_NQR05_FatherREF.SheatheWeapon() _00E_EquipControl.SheatheWeapon(FS_NQR05_FatherREF)
FS_NQR05_FatherREF.StopCombat() FS_NQR05_FatherREF.StopCombat()
FS_NQR05_FatherREF.StopCombatAlarm() FS_NQR05_FatherREF.StopCombatAlarm()
FS_NQR05_FatherREF.EvaluatePackage() FS_NQR05_FatherREF.EvaluatePackage()

View File

@ -48,10 +48,7 @@ EndFunction
function EndHeadache() function EndHeadache()
If PlayerREF.IsWeaponDrawn() _00E_EquipControl.SheatheWeapon(PlayerREF)
PlayerREF.SheatheWeapon()
Utility.Wait(3)
EndIf
PlayerREF.RestoreActorValue("Health", PlayerREF.GetActorValue("Health")) PlayerREF.RestoreActorValue("Health", PlayerREF.GetActorValue("Health"))
_00E_NPCUncorkPotionAndDrinkM.Play(PlayerREF) _00E_NPCUncorkPotionAndDrinkM.Play(PlayerREF)

View File

@ -302,10 +302,8 @@ EndFunction
Function StartMemory() Function StartMemory()
If PlayerREF.IsWeaponDrawn() _00E_EquipControl.SheatheWeapon(PlayerREF)
PlayerREF.SheatheWeapon()
EndIf
OBJEyeofMagnusVanishM.Play(PlayerREF) OBJEyeofMagnusVanishM.Play(PlayerREF)
_00E_MQ07a_WordOfTheDeadTransformSpiritM.Play(PlayerREF) _00E_MQ07a_WordOfTheDeadTransformSpiritM.Play(PlayerREF)
_00E_MQ07a_WordOfTheDeadTransformIMOD.Apply() _00E_MQ07a_WordOfTheDeadTransformIMOD.Apply()
@ -630,7 +628,7 @@ Function EndDream()
MQ07a_ZuraREF.Kill(MQ07a_ZuraREF) MQ07a_ZuraREF.Kill(MQ07a_ZuraREF)
PlayerREF.DispelSpell(_00E_MQ07a_MageIceSpike) PlayerREF.DispelSpell(_00E_MQ07a_MageIceSpike)
PlayerREF.DispelSpell(_00E_MQ07a_MageIceSTorm) PlayerREF.DispelSpell(_00E_MQ07a_MageIceSTorm)
PlayerREF.SheatheWeapon() ; Needed for the player to lay down in the bed in SC11 _00E_EquipControl.SheatheWeapon(PlayerREF) ; Needed for the player to lay down in the bed in SC11
weap = PlayerREF.GetEquippedWeapon(0) weap = PlayerREF.GetEquippedWeapon(0)
If weap If weap
PlayerREF.UnEquipItem(weap, abSilent = True) PlayerREF.UnEquipItem(weap, abSilent = True)

View File

@ -7,7 +7,7 @@ Event OnTriggerEnter(ObjectReference akActionRef)
PlayerREF.AddItem(GasTrapDummy, 1, 1) PlayerREF.AddItem(GasTrapDummy, 1, 1)
PlayerREF.EquipItem(GasTrapDummy, 0, 1) PlayerREF.EquipItem(GasTrapDummy, 0, 1)
Utility.Wait(1) Utility.Wait(1)
PlayerREF.SheatheWeapon() _00E_EquipControl.SheatheWeapon(PlayerREF)
PlayerREF.RemoveItem(GasTrapDummy, 1, 1) PlayerREF.RemoveItem(GasTrapDummy, 1, 1)
Self.Disable() Self.Disable()
EndIf EndIf

View File

@ -234,7 +234,8 @@ Function StartSC04()
MQ13c_SC03_SteelbirdREF.StopCombat() MQ13c_SC03_SteelbirdREF.StopCombat()
akCompanionRomance.StopCombat() akCompanionRomance.StopCombat()
akCompanionRomance.StopCombatAlarm() akCompanionRomance.StopCombatAlarm()
akCompanionRomance.SheatheWeapon()
_00E_EquipControl.SheatheWeapon(akCompanionRomance)
if akCompanionRomance.GetDistance(PlayerREF) >= 200 if akCompanionRomance.GetDistance(PlayerREF) >= 200
akCompanionRomance.MoveTo(MQ13c_SC04_CompMarker) akCompanionRomance.MoveTo(MQ13c_SC04_CompMarker)

View File

@ -263,7 +263,7 @@ EndFunction
Function TealorSheatheWeapon() Function TealorSheatheWeapon()
akTealor.SheatheWeapon() _00E_EquipControl.SheatheWeapon(akTealor)
EndFunction EndFunction

View File

@ -4,10 +4,9 @@ Event OnActivate(ObjectReference akActionRef)
if MQ17.GetCurrentStageID() == 55 if MQ17.GetCurrentStageID() == 55
if Game.GetPlayer().IsWeaponDrawn() if _00E_EquipControl.SheatheWeapon(Game.GetPlayer())
Game.GetPlayer().SheatheWeapon() Utility.Wait(2.5)
Utility.Wait(4) endif
EndIf
QSTOculoryRingM.Play(Self) QSTOculoryRingM.Play(Self)
MQ17.SetCurrentStageID(60) MQ17.SetCurrentStageID(60)

View File

@ -234,10 +234,7 @@ EndFunction
Function TrapPlayer() Function TrapPlayer()
If PlayerREF.IsWeaponDrawn() _00E_EquipControl.SheatheWeapon(PlayerREF)
PlayerREF.SheatheWeapon()
EndIf
_00E_Func_AIWalk.PlayerAIWalk(False) _00E_Func_AIWalk.PlayerAIWalk(False)
Game.ForceThirdPerson() Game.ForceThirdPerson()
Game.DisablePlayerControls(True, True, True, True, True, True, True) Game.DisablePlayerControls(True, True, True, True, True, True, True)
@ -353,7 +350,7 @@ Function StartFight()
Game.SetHudCartMode(False) Game.SetHudCartMode(False)
MQ17_Generator_Left_REF003.SetMotionType(4) MQ17_Generator_Left_REF003.SetMotionType(4)
MQ17_Generator_Right_REF003.SetMotionType(4) MQ17_Generator_Right_REF003.SetMotionType(4)
akCompanion.SheatheWeapon() _00E_EquipControl.SheatheWeapon(akCompanion)
akCompanion.UnequipItem(_02E_11Eichenbogen) akCompanion.UnequipItem(_02E_11Eichenbogen)
akCompanion.RemoveItem(_02E_11Eichenbogen) akCompanion.RemoveItem(_02E_11Eichenbogen)
akCompanion.RemoveItem(_00E_MQ11a_SC12_FireArrows) akCompanion.RemoveItem(_00E_MQ11a_SC12_FireArrows)
@ -492,9 +489,7 @@ EndFunction
Function PlayKiss() Function PlayKiss()
If PlayerREF.IsWeaponDrawn() _00E_EquipControl.SheatheWeapon(PlayerREF)
PlayerREF.SheatheWeapon()
EndIf
PlayerREF.UnequipItem(PlayerREF.GetEquippedShield()) PlayerREF.UnequipItem(PlayerREF.GetEquippedShield())

View File

@ -127,10 +127,10 @@ endfunction
Function CallFlightAnimation(Actor akMyrad) Function CallFlightAnimation(Actor akMyrad)
FadeToBlackAndBackQuick.Apply() FadeToBlackAndBackQuick.Apply()
If (PlayerREF as Actor).IsWeaponDrawn()
(PlayerREF as Actor).SheatheWeapon() _00E_EquipControl.SheatheWeapon(PlayerREF as Actor)
EndIf
Wait(0.75) Wait(0.75)
ObjectReference objTakeOffMarker = akMyrad.GetLinkedRef(_00E_FS_MyradTakeOffMarker) ObjectReference objTakeOffMarker = akMyrad.GetLinkedRef(_00E_FS_MyradTakeOffMarker)
akMyrad.MoveTo(objTakeOffMarker) akMyrad.MoveTo(objTakeOffMarker)
akMyrad.SetScale(1) akMyrad.SetScale(1)

View File

@ -223,9 +223,7 @@ Function RemovePotion()
_00E_SC_Mael.StopCombatAlarm() _00E_SC_Mael.StopCombatAlarm()
_00E_SC_Mael.SetCrimeFaction(A_CrimeFaction) _00E_SC_Mael.SetCrimeFaction(A_CrimeFaction)
PlayerREF.RemoveItem(_00E_NQ_G_07_PetrifiedPotion, 1) PlayerREF.RemoveItem(_00E_NQ_G_07_PetrifiedPotion, 1)
If PlayerREF.IsWeaponDrawn() _00E_EquipControl.SheatheWeapon(PlayerREF)
PlayerREF.SheatheWeapon()
EndIf
EndFunction EndFunction
@ -1057,14 +1055,22 @@ Function RemoveFromFactions()
_00E_SC_DijaamOnelys.RemoveFromAllFactions() _00E_SC_DijaamOnelys.RemoveFromAllFactions()
_00E_SC_Mael.RemoveFromAllFactions() _00E_SC_Mael.RemoveFromAllFactions()
If _00E_SC_DijaamOnelys.GetEquippedObject(0) != NONE If _00E_SC_DijaamOnelys.GetEquippedWeapon(true)
_00E_SC_DijaamOnelys.UnequipItem(_00E_SC_DijaamOnelys.GetEquippedObject(0)) _00E_SC_DijaamOnelys.UnequipItem(_00E_SC_DijaamOnelys.GetEquippedWeapon(true))
EndIf EndIf
If _00E_SC_DijaamOnelys.GetEquippedObject(1) != NONE If _00E_SC_DijaamOnelys.GetEquippedWeapon(false)
_00E_SC_DijaamOnelys.UnequipItem(_00E_SC_DijaamOnelys.GetEquippedObject(1)) _00E_SC_DijaamOnelys.UnequipItem(_00E_SC_DijaamOnelys.GetEquippedWeapon(false))
EndIf EndIf
If _00E_SC_DijaamOnelys.GetEquippedSpell(0)
_00E_SC_DijaamOnelys.UnequipSpell(_00E_SC_DijaamOnelys.GetEquippedSpell(0), 0)
EndIf
If _00E_SC_DijaamOnelys.GetEquippedSpell(1)
_00E_SC_DijaamOnelys.UnequipSpell(_00E_SC_DijaamOnelys.GetEquippedSpell(1), 1)
EndIf
EndFunction EndFunction
Function CleanSounds() Function CleanSounds()
@ -1531,9 +1537,7 @@ Function SetupAndStartSC07D()
_00E_SC_DijaamOnelys.RemoveItem(_00e_Calia_Necklace, 1) _00E_SC_DijaamOnelys.RemoveItem(_00e_Calia_Necklace, 1)
_00E_SC_DijaamOnelys.MoveTo(_00E_NQ_G_07Dijaam_DijaamSitMarker) _00E_SC_DijaamOnelys.MoveTo(_00E_NQ_G_07Dijaam_DijaamSitMarker)
PlayerREF.MoveTo(_00E_NQ_G_07Dijaam_PlayerHideoutStandMarker) PlayerREF.MoveTo(_00E_NQ_G_07Dijaam_PlayerHideoutStandMarker)
If PlayerREF.IsWeaponDrawn() _00E_EquipControl.SheatheWeapon(PlayerREF)
PlayerREF.SheatheWeapon()
EndIf
_00E_NQ_G_07Dijaam_ScarabREF.SetMotionType(4) _00E_NQ_G_07Dijaam_ScarabREF.SetMotionType(4)
EndFunction EndFunction

View File

@ -165,8 +165,7 @@ Function _TryStartSmoking()
If PlayerRef.IsWeaponDrawn() If PlayerRef.IsWeaponDrawn()
_UnlockSmokingStage() _UnlockSmokingStage()
PlayerRef.SheatheWeapon() _00E_EquipControl.SheatheWeapon(PlayerREF)
Utility.Wait(2.0)
_LockSmokingStage() _LockSmokingStage()
If SmokingStage != SMOKING_STAGE_PREPARING ; The smoking was cancelled while we were waiting If SmokingStage != SMOKING_STAGE_PREPARING ; The smoking was cancelled while we were waiting
Return Return