Compare commits
4 Commits
bca900a356
...
eab2a64dbd
Author | SHA1 | Date | |
---|---|---|---|
eab2a64dbd | |||
bf92cb9abc | |||
fb97078ce5 | |||
eb34dda08b |
BIN
Skyrim.esm
BIN
Skyrim.esm
Binary file not shown.
BIN
meshes/actors/werewolfbeastlarge/character assets/skeleton.nif
(Stored with Git LFS)
BIN
meshes/actors/werewolfbeastlarge/character assets/skeleton.nif
(Stored with Git LFS)
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -43,17 +43,11 @@ Function StartIntroductionScene()
|
|||||||
EndFunction
|
EndFunction
|
||||||
|
|
||||||
function PlayerAIWalkStop()
|
function PlayerAIWalkStop()
|
||||||
|
|
||||||
PlayerREF.PlayIdle(IdleWalkingCameraEnd)
|
PlayerREF.PlayIdle(IdleWalkingCameraEnd)
|
||||||
Game.EnablePlayerControls(abMovement = false, abFighting = false, abCamSwitch = false, abLooking = true, abSneaking = false, abmenu = false, abactivate = false, abjournaltabs = false)
|
Game.EnablePlayerControls(abMovement = false, abFighting = false, abCamSwitch = false, abLooking = true, abSneaking = false, abmenu = false, abactivate = false, abjournaltabs = false)
|
||||||
Game.SetPlayerAIDriven(False)
|
Game.SetPlayerAIDriven(False)
|
||||||
endFunction
|
endFunction
|
||||||
|
|
||||||
function PlayerAIWalkStart()
|
|
||||||
Game.DisablePlayerControls(abLooking = True)
|
|
||||||
PlayerREF.PlayIdle(IdleWalkingCameraStart)
|
|
||||||
endFunction
|
|
||||||
|
|
||||||
Function StartVision()
|
Function StartVision()
|
||||||
|
|
||||||
_00E_PlayerFunctions.GetVisionControl().VisionEffectTimestop()
|
_00E_PlayerFunctions.GetVisionControl().VisionEffectTimestop()
|
||||||
|
@ -25,6 +25,13 @@ state Smoking
|
|||||||
endevent
|
endevent
|
||||||
|
|
||||||
Event OnUpdate()
|
Event OnUpdate()
|
||||||
|
if bIsFinished
|
||||||
|
UnregisterForUpdate()
|
||||||
|
UnregisterForSleep()
|
||||||
|
GotoState("")
|
||||||
|
return
|
||||||
|
endif
|
||||||
|
|
||||||
_LockAnimationUpdates()
|
_LockAnimationUpdates()
|
||||||
|
|
||||||
If AnimationStage == 0 && Target.GetSitState() != 3
|
If AnimationStage == 0 && Target.GetSitState() != 3
|
||||||
@ -53,6 +60,13 @@ state Smoking
|
|||||||
Event OnSleepStart(float afSleepStartTime, float afDesiredSleepEndTime)
|
Event OnSleepStart(float afSleepStartTime, float afDesiredSleepEndTime)
|
||||||
; Debug.Trace(self + ": OnSleepStart, " + Target)
|
; Debug.Trace(self + ": OnSleepStart, " + Target)
|
||||||
|
|
||||||
|
if bIsFinished
|
||||||
|
UnregisterForSleep()
|
||||||
|
UnregisterForUpdate()
|
||||||
|
GotoState("")
|
||||||
|
return
|
||||||
|
endif
|
||||||
|
|
||||||
; Force reset of the animations to make the NPC re-enter the furniture (if it wishes).
|
; Force reset of the animations to make the NPC re-enter the furniture (if it wishes).
|
||||||
; Fixes NPCs creeping away from the furniture while the player is sleeping in the same location.
|
; Fixes NPCs creeping away from the furniture while the player is sleeping in the same location.
|
||||||
_LockAnimationUpdates()
|
_LockAnimationUpdates()
|
||||||
@ -70,12 +84,6 @@ state Smoking
|
|||||||
GotoState("")
|
GotoState("")
|
||||||
endEvent
|
endEvent
|
||||||
|
|
||||||
event OnEndState()
|
|
||||||
; Debug.Trace(self + ": Unregistering for updates, " + Target)
|
|
||||||
UnregisterForUpdate()
|
|
||||||
UnregisterForSleep()
|
|
||||||
endevent
|
|
||||||
|
|
||||||
endstate
|
endstate
|
||||||
|
|
||||||
Event OnCellAttach()
|
Event OnCellAttach()
|
||||||
@ -100,6 +108,8 @@ Event OnEffectFinish(Actor akTarget, Actor akCaster)
|
|||||||
_LockAnimationUpdates()
|
_LockAnimationUpdates()
|
||||||
StopAnimations(False)
|
StopAnimations(False)
|
||||||
_UnlockAnimationUpdates()
|
_UnlockAnimationUpdates()
|
||||||
|
|
||||||
|
Target = None
|
||||||
EndEvent
|
EndEvent
|
||||||
|
|
||||||
Function StopAnimations(Bool bQuickStop)
|
Function StopAnimations(Bool bQuickStop)
|
||||||
|
@ -20,12 +20,18 @@ Event OnEffectStart(Actor akTarget, Actor akCaster)
|
|||||||
EndEvent
|
EndEvent
|
||||||
|
|
||||||
Event OnUpdate()
|
Event OnUpdate()
|
||||||
|
if bIsFinished
|
||||||
|
UnregisterForUpdate()
|
||||||
|
UnregisterForSleep()
|
||||||
|
return
|
||||||
|
endif
|
||||||
|
|
||||||
_LockAnimationUpdates()
|
_LockAnimationUpdates()
|
||||||
|
|
||||||
If AnimationStage == 0 && Target.GetSitState() != 3
|
If AnimationStage == 0 && Target.GetSitState() != 3
|
||||||
; Debug.Trace(self + ": OnUpdate, " + Target + ", stage " + AnimationStage + ", waiting...")
|
; Debug.Trace(self + ": OnUpdate, " + Target + ", stage " + AnimationStage + ", waiting...")
|
||||||
RegisterForSingleUpdate(1.0)
|
RegisterForSingleUpdate(1.0)
|
||||||
ElseIf bIsFinished == False
|
Else
|
||||||
AnimationStage += 1
|
AnimationStage += 1
|
||||||
|
|
||||||
; Debug.Trace(self + ": OnUpdate, " + Target + ", stage " + AnimationStage)
|
; Debug.Trace(self + ": OnUpdate, " + Target + ", stage " + AnimationStage)
|
||||||
@ -57,27 +63,21 @@ EndEvent
|
|||||||
Event OnSleepStart(float afSleepStartTime, float afDesiredSleepEndTime)
|
Event OnSleepStart(float afSleepStartTime, float afDesiredSleepEndTime)
|
||||||
; Debug.Trace(self + ": OnSleepStart, " + Target)
|
; Debug.Trace(self + ": OnSleepStart, " + Target)
|
||||||
|
|
||||||
|
if bIsFinished
|
||||||
|
UnregisterForSleep()
|
||||||
|
UnregisterForUpdate()
|
||||||
|
return
|
||||||
|
endif
|
||||||
|
|
||||||
; Force reset of the animations to make the NPC re-enter the furniture (if it wishes).
|
; Force reset of the animations to make the NPC re-enter the furniture (if it wishes).
|
||||||
; Fixes NPCs creeping away from the furniture while the player is sleeping in the same location.
|
; Fixes NPCs creeping away from the furniture while the player is sleeping in the same location.
|
||||||
_LockAnimationUpdates()
|
_LockAnimationUpdates()
|
||||||
|
UnregisterForUpdate()
|
||||||
If bIsFinished == False
|
StopAnimations(True)
|
||||||
UnregisterForUpdate()
|
Target.RemoveSpell(_00E_Smoking_WallMarkerSP)
|
||||||
StopAnimations(True)
|
|
||||||
Target.RemoveSpell(_00E_Smoking_WallMarkerSP)
|
|
||||||
EndIf
|
|
||||||
|
|
||||||
_UnlockAnimationUpdates()
|
_UnlockAnimationUpdates()
|
||||||
EndEvent
|
EndEvent
|
||||||
|
|
||||||
Event OnCellDetach()
|
|
||||||
UnregisterForSleep()
|
|
||||||
endEvent
|
|
||||||
|
|
||||||
Event OnCellAttach()
|
|
||||||
RegisterForSleep()
|
|
||||||
endEvent
|
|
||||||
|
|
||||||
Event OnEffectFinish(Actor akTarget, Actor akCaster)
|
Event OnEffectFinish(Actor akTarget, Actor akCaster)
|
||||||
; Debug.Trace(self + ": OnEffectFinish, " + Target)
|
; Debug.Trace(self + ": OnEffectFinish, " + Target)
|
||||||
|
|
||||||
@ -85,24 +85,23 @@ Event OnEffectFinish(Actor akTarget, Actor akCaster)
|
|||||||
Target.RemoveSpell(_00E_Smoking_WallMarkerSP)
|
Target.RemoveSpell(_00E_Smoking_WallMarkerSP)
|
||||||
|
|
||||||
_LockAnimationUpdates()
|
_LockAnimationUpdates()
|
||||||
StopAnimations(False)
|
StopAnimations(Target.GetParentCell() != (Game.GetForm(0x14) as Actor).GetParentCell())
|
||||||
_UnlockAnimationUpdates()
|
_UnlockAnimationUpdates()
|
||||||
|
Target = None
|
||||||
|
|
||||||
EndEvent
|
EndEvent
|
||||||
|
|
||||||
Function StopAnimations(Bool bQuickStop)
|
Function StopAnimations(Bool bQuickStop)
|
||||||
If AnimationStage > 0
|
If AnimationStage > 0
|
||||||
If bQuickStop
|
|
||||||
Debug.SendAnimationEvent(Target, "IdleForceDefaultState")
|
|
||||||
Else
|
|
||||||
Debug.SendAnimationEvent(Target, "WallPipeSmokingExit")
|
|
||||||
EndIf
|
|
||||||
|
|
||||||
If AnimationStage > 1
|
If AnimationStage > 1
|
||||||
_00E_Smoking_PipeSmokingSmokeExhaleEffect.Stop(Target)
|
_00E_Smoking_PipeSmokingSmokeExhaleEffect.Stop(Target)
|
||||||
EndIf
|
EndIf
|
||||||
Target.SetHeadtracking(True)
|
Target.SetHeadtracking(True)
|
||||||
|
|
||||||
If bQuickStop == False
|
If bQuickStop
|
||||||
|
Debug.SendAnimationEvent(Target, "IdleForceDefaultState")
|
||||||
|
Else
|
||||||
|
Debug.SendAnimationEvent(Target, "WallPipeSmokingExit")
|
||||||
Utility.Wait(1.75)
|
Utility.Wait(1.75)
|
||||||
Debug.SendAnimationEvent(Target, "IdleForceDefaultState")
|
Debug.SendAnimationEvent(Target, "IdleForceDefaultState")
|
||||||
EndIf
|
EndIf
|
||||||
|
@ -251,7 +251,7 @@ EVENT OnCellAttach()
|
|||||||
;~ Trace(self + "OnCellAttach() isDeleted", 2)
|
;~ Trace(self + "OnCellAttach() isDeleted", 2)
|
||||||
elseIf isDisabled()
|
elseIf isDisabled()
|
||||||
;~ Trace(self + "OnCellAttach() isDisabled", 2)
|
;~ Trace(self + "OnCellAttach() isDisabled", 2)
|
||||||
else
|
elseif GetParentCell()
|
||||||
; possibly trigger shorter OnUpdate time in Critter OnCritterGoalFailed()
|
; possibly trigger shorter OnUpdate time in Critter OnCritterGoalFailed()
|
||||||
StopTranslation()
|
StopTranslation()
|
||||||
endIf
|
endIf
|
||||||
|
Loading…
Reference in New Issue
Block a user