mirror of
https://github.com/zeldaret/oot.git
synced 2025-08-21 06:21:16 +00:00
Match En actors D-G (#1889)
* Match entity actors D-G * Remove SET_EN_GOROIWA_SPEED * Actually match z_en_elf.c * GET_EN_GOROIWA_SPEED -> EN_GOROIWA_SPEED
This commit is contained in:
parent
c86bf5011b
commit
1da87b1e7f
24 changed files with 160 additions and 98 deletions
|
@ -274,7 +274,6 @@ s32 EnGeldB_ReactToPlayer(PlayState* play, EnGeldB* this, s16 arg2) {
|
|||
Actor* thisx = &this->actor;
|
||||
s16 angleToWall;
|
||||
s16 angleToLink;
|
||||
Actor* bomb;
|
||||
|
||||
angleToWall = thisx->wallYaw - thisx->shape.rot.y;
|
||||
angleToWall = ABS(angleToWall);
|
||||
|
@ -306,22 +305,29 @@ s32 EnGeldB_ReactToPlayer(PlayState* play, EnGeldB* this, s16 arg2) {
|
|||
EnGeldB_SetupRollBack(this);
|
||||
return true;
|
||||
}
|
||||
} else if ((bomb = Actor_FindNearby(play, thisx, -1, ACTORCAT_EXPLOSIVE, 80.0f)) != NULL) {
|
||||
thisx->shape.rot.y = thisx->world.rot.y = thisx->yawTowardsPlayer;
|
||||
if (((thisx->bgCheckFlags & BGCHECKFLAG_WALL) && (angleToWall < 0x2EE0)) || (bomb->id == ACTOR_EN_BOM_CHU)) {
|
||||
if ((bomb->id == ACTOR_EN_BOM_CHU) && (Actor_WorldDistXYZToActor(thisx, bomb) < 80.0f) &&
|
||||
((s16)(thisx->shape.rot.y - (bomb->world.rot.y - 0x8000)) < 0x3E80)) {
|
||||
EnGeldB_SetupJump(this);
|
||||
return true;
|
||||
} else {
|
||||
Actor* bomb = Actor_FindNearby(play, thisx, -1, ACTORCAT_EXPLOSIVE, 80.0f);
|
||||
|
||||
if (bomb != NULL) {
|
||||
thisx->shape.rot.y = thisx->world.rot.y = thisx->yawTowardsPlayer;
|
||||
if (((thisx->bgCheckFlags & BGCHECKFLAG_WALL) && (angleToWall < 0x2EE0)) ||
|
||||
(bomb->id == ACTOR_EN_BOM_CHU)) {
|
||||
if ((bomb->id == ACTOR_EN_BOM_CHU) && (Actor_WorldDistXYZToActor(thisx, bomb) < 80.0f) &&
|
||||
((s16)(thisx->shape.rot.y - (bomb->world.rot.y - 0x8000)) < 0x3E80)) {
|
||||
EnGeldB_SetupJump(this);
|
||||
return true;
|
||||
} else {
|
||||
EnGeldB_SetupSidestep(this, play);
|
||||
return true;
|
||||
}
|
||||
} else {
|
||||
EnGeldB_SetupSidestep(this, play);
|
||||
EnGeldB_SetupRollBack(this);
|
||||
return true;
|
||||
}
|
||||
} else {
|
||||
EnGeldB_SetupRollBack(this);
|
||||
return true;
|
||||
}
|
||||
} else if (arg2) {
|
||||
}
|
||||
|
||||
if (arg2) {
|
||||
if (angleToLink >= 0x1B58) {
|
||||
EnGeldB_SetupSidestep(this, play);
|
||||
return true;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue