Skip to content

Conversation

@Feacur
Copy link
Contributor

@Feacur Feacur commented Nov 13, 2024

additonally:

  • renamed func_8002F368 as Player_GetExchangeItemId
    • umm, it's oneline, but has bloated the file count
    • might be better to cancel these changes (?)
  • marked En_Go as unused (which is also stated in the web too)
  • this PR will conflict a bit with Document Actor "Fidget Tables" #2287
  • restructured EnGo2_StopRolling with a switch
  • restructured EnGo2_RollingSlow with a switch
  • restructured EnGo2_UpdateTalking with separate ifs (couldn't do any better)
    • but it was fun to mess with the tools for a while

- `callback1_80A3ED24` is `NpcGetTextIdFunc`
- `callback2_80A3ED24` is `NpcUpdateTalkStateFunc`
reason: `EnGo2_EyeMouthTexState` code analogy
returns are indeed required to match
partially they already were there
and `func_80A45360` as `EnGo2_UpdateShadowAlpha`
Copy link
Collaborator

@fig02 fig02 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I plan to review go2 on its own shortly. I would rather review the actor thats actually used, and then port over any similarities to go after the fact.

For now, here is one comment about the function named in z_actor. I would kinda prefer docs for this function happen in a separate PR, personally.


if (DECR(this->unk_590)) {
if (!arg3) {
// rumble on odds and evens
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what does this comment mean?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tried to describe that this block is used for animation and create slight shaking, as if a stone is rolling on an uneven surface. changed the comment to

// animate grounded shaking

void EnGo2_WakingUp(EnGo2* this) {
f32 xyzDist = PARAMS_GET_S(this->actor.params, 0, 5) == GORON_DMT_BIGGORON ? 800.0f : 200.0f;
void EnGo2_SetupUncurledFlags_NearTracking(EnGo2* this) {
// always false, he wakes up with `EnGo2_SetupUncurledFlags_Biggoron`
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

who is "he" ?
Why does the comment mention biggoron when this function is apparently used for fire-generic-gorons and Link-goron ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

because this line checks for GORON_DMT_BIGGORON. changed it for

// always false: this functions if for `GORON_FIRE_GENERIC` and `GORON_CITY_LINK`
// see `EnGo2_SetupUncurledFlags_Biggoron` for `GORON_DMT_BIGGORON`'s variant

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants