Talk:GetIsInjured

From the CreationKit Wiki
Revision as of 16:57, 20 April 2018 by imported>DavidJCobb (just putting the talk page contents to rest)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Saw someone on reddit asking about this, so I took a look.

GetIsInjured calls subroutine TESV_006BB280 on the subject actor. If that subroutine returns true, GetIsInjured writes what appears to be a return value of 1.875. I don't understand the significance.

Subroutine TESV_006BB280 calls a virtual function on the actor's "animation graph holder." The function (which has not been identified) is passed: a pointer to a pointer to the string "Injured"; and a pointer to a bool that should be written to to indicate the result of the function call. That bool is then immediately returned to GetIsInjured.

I can't say I understand the significance of any of this except that "injured" status is related to the actor's animation graph. Perhaps it's a threshold at which an actor is meant to play "wounded" or "tired" animations? Kinda how like Link and Mario breathe heavily when they're low on health, in Wind Waker and SM64? DavidJCobb (talk) 2018-03-16T22:33:39 (EDT)

Update: It doesn't return 1.875. I mistook instructions that set a double for instructions that set a dword and a float; 0x3F800000 is 1.875F but 0x3F80000000000000 is 1.0. As for the animation functions, I compared those to existing Papyrus accessors; it's a bool getter. DavidJCobb (talk) 2018-04-20T17:57:07 (EDT)