Fixed many hardcoded object flags to use defines

This commit is contained in:
Arceveti
2021-08-07 18:49:10 -07:00
parent fc4d6c2a0c
commit 0e8c3c9003
23 changed files with 105 additions and 117 deletions

View File

@@ -3507,7 +3507,7 @@ UNUSED static const u64 behavior_data_unused_0 = 0;
const BehaviorScript bhvMario[] = {
BEGIN(OBJ_LIST_PLAYER),
SET_INT(oIntangibleTimer, 0),
OR_INT(oFlags, OBJ_FLAG_0100),
OR_INT(oFlags, OBJ_FLAG_PLAYER),
OR_INT(oUnk94, 0x0001),
SET_HITBOX(/*Radius*/ 37, /*Height*/ 160),
BEGIN_LOOP(),
@@ -3631,7 +3631,7 @@ const BehaviorScript bhvMenuButton[] = {
const BehaviorScript bhvMenuButtonManager[] = {
BEGIN(OBJ_LIST_LEVEL),
OR_INT(oFlags, (OBJ_FLAG_SET_THROW_MATRIX_FROM_TRANSFORM | OBJ_FLAG_0020 | OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE)),
OR_INT(oFlags, (OBJ_FLAG_SET_THROW_MATRIX_FROM_TRANSFORM | OBJ_FLAG_UPDATE_TRANSFORM_FOR_THROW_MATRIX | OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE)),
CALL_NATIVE(bhv_menu_button_manager_init),
BEGIN_LOOP(),
SET_INT(oIntangibleTimer, 0),
@@ -4828,7 +4828,7 @@ const BehaviorScript bhvHidden1upInPoleSpawner[] = {
const BehaviorScript bhvControllablePlatform[] = {
BEGIN(OBJ_LIST_SURFACE),
OR_INT(oFlags, (OBJ_FLAG_SET_THROW_MATRIX_FROM_TRANSFORM | OBJ_FLAG_0020 | OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE)),
OR_INT(oFlags, (OBJ_FLAG_SET_THROW_MATRIX_FROM_TRANSFORM | OBJ_FLAG_UPDATE_TRANSFORM_FOR_THROW_MATRIX | OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE)),
LOAD_COLLISION_DATA(hmc_seg7_collision_controllable_platform),
SET_HOME(),
CALL_NATIVE(bhv_controllable_platform_init),

View File

@@ -28,23 +28,23 @@
#define RESPAWN_INFO_DONT_RESPAWN 0xFF
/* oFlags */
#define OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE (1 << 0) // 0x00000001
#define OBJ_FLAG_MOVE_XZ_USING_FVEL (1 << 1) // 0x00000002
#define OBJ_FLAG_MOVE_Y_WITH_TERMINAL_VEL (1 << 2) // 0x00000004
#define OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW (1 << 3) // 0x00000008
#define OBJ_FLAG_SET_FACE_ANGLE_TO_MOVE_ANGLE (1 << 4) // 0x00000010
#define OBJ_FLAG_0020 (1 << 5) // 0x00000020
#define OBJ_FLAG_COMPUTE_DIST_TO_MARIO (1 << 6) // 0x00000040
#define OBJ_FLAG_ACTIVE_FROM_AFAR (1 << 7) // 0x00000080
#define OBJ_FLAG_0100 (1 << 8) // 0x00000100
#define OBJ_FLAG_TRANSFORM_RELATIVE_TO_PARENT (1 << 9) // 0x00000200
#define OBJ_FLAG_HOLDABLE (1 << 10) // 0x00000400
#define OBJ_FLAG_SET_THROW_MATRIX_FROM_TRANSFORM (1 << 11) // 0x00000800
#define OBJ_FLAG_1000 (1 << 12) // 0x00001000
#define OBJ_FLAG_COMPUTE_ANGLE_TO_MARIO (1 << 13) // 0x00002000
#define OBJ_FLAG_PERSISTENT_RESPAWN (1 << 14) // 0x00004000
#define OBJ_FLAG_8000 (1 << 15) // 0x00008000
#define OBJ_FLAG_30 (1 << 30) // 0x40000000
#define OBJ_FLAG_UPDATE_GFX_POS_AND_ANGLE (1 << 0) // 0x00000001
#define OBJ_FLAG_MOVE_XZ_USING_FVEL (1 << 1) // 0x00000002
#define OBJ_FLAG_MOVE_Y_WITH_TERMINAL_VEL (1 << 2) // 0x00000004
#define OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW (1 << 3) // 0x00000008
#define OBJ_FLAG_SET_FACE_ANGLE_TO_MOVE_ANGLE (1 << 4) // 0x00000010
#define OBJ_FLAG_UPDATE_TRANSFORM_FOR_THROW_MATRIX (1 << 5) // 0x00000020
#define OBJ_FLAG_COMPUTE_DIST_TO_MARIO (1 << 6) // 0x00000040
#define OBJ_FLAG_ACTIVE_FROM_AFAR (1 << 7) // 0x00000080
#define OBJ_FLAG_PLAYER (1 << 8) // 0x00000100
#define OBJ_FLAG_TRANSFORM_RELATIVE_TO_PARENT (1 << 9) // 0x00000200
#define OBJ_FLAG_HOLDABLE (1 << 10) // 0x00000400
#define OBJ_FLAG_SET_THROW_MATRIX_FROM_TRANSFORM (1 << 11) // 0x00000800
#define OBJ_FLAG_1000 (1 << 12) // 0x00001000
#define OBJ_FLAG_COMPUTE_ANGLE_TO_MARIO (1 << 13) // 0x00002000
#define OBJ_FLAG_PERSISTENT_RESPAWN (1 << 14) // 0x00004000
#define OBJ_FLAG_8000 (1 << 15) // 0x00008000
#define OBJ_FLAG_HITBOX_WAS_SET (1 << 30) // 0x40000000
/* oHeldState */
#define HELD_FREE 0

View File

@@ -98,8 +98,7 @@ void bobomb_act_chase_mario(void) {
}
void bobomb_act_launched(void) {
s16 collisionFlags = 0;
collisionFlags = object_step();
s16 collisionFlags = object_step();
if ((collisionFlags & OBJ_COL_FLAG_GROUNDED) == OBJ_COL_FLAG_GROUNDED)
o->oAction = BOBOMB_ACT_EXPLODE; /* bit 0 */
}
@@ -203,7 +202,7 @@ void bobomb_thrown_loop(void) {
o->header.gfx.node.flags &= ~GRAPH_RENDER_INVISIBLE;
o->oHeldState = 0;
o->oFlags &= ~0x8; /* bit 3 */
o->oFlags &= ~OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW; /* bit 3 */
o->oForwardVel = 25.0;
o->oVelY = 20.0;
o->oAction = BOBOMB_ACT_LAUNCHED;

View File

@@ -11,10 +11,8 @@ void bhv_big_boulder_init(void) {
}
void boulder_act_1(void) {
s16 sp1E;
sp1E = object_step_without_floor_orient();
if ((sp1E & 0x09) == 0x01 && o->oVelY > 10.0f) {
s16 collisionFlags = object_step_without_floor_orient();
if ((collisionFlags & OBJ_COL_FLAGS_LANDED) == OBJ_COL_FLAG_GROUNDED && o->oVelY > 10.0f) {
cur_obj_play_sound_2(SOUND_GENERAL_GRINDEL_ROLL);
spawn_mist_particles();
}

View File

@@ -29,19 +29,19 @@ void small_breakable_box_spawn_dust(void) {
}
void small_breakable_box_act_move(void) {
s16 sp1E = object_step();
s16 collisionFlags = object_step();
obj_attack_collided_from_other_object(o);
if (sp1E == 1)
if (collisionFlags == OBJ_COL_FLAG_GROUNDED)
cur_obj_play_sound_2(SOUND_GENERAL_BOX_LANDING_2);
if (sp1E & 1) {
if (collisionFlags & OBJ_COL_FLAG_GROUNDED) {
if (o->oForwardVel > 20.0f) {
cur_obj_play_sound_2(SOUND_ENV_SLIDING);
small_breakable_box_spawn_dust();
}
}
if (sp1E & 2) {
if (collisionFlags & OBJ_COL_FLAG_HIT_WALL) {
spawn_mist_particles();
spawn_triangle_break_particles(20, MODEL_DIRT_ANIMATION, 0.7f, 3);
obj_spawn_yellow_coins(o, 3);
@@ -49,7 +49,7 @@ void small_breakable_box_act_move(void) {
o->activeFlags = ACTIVE_FLAG_DEACTIVATED;
}
obj_check_floor_death(sp1E, sObjFloor);
obj_check_floor_death(collisionFlags, sObjFloor);
}
void breakable_box_small_released_loop(void) {
@@ -106,7 +106,7 @@ void breakable_box_small_get_thrown(void) {
cur_obj_enable_rendering();
o->header.gfx.node.flags &= ~GRAPH_RENDER_INVISIBLE;
o->oHeldState = 0;
o->oFlags &= ~0x08;
o->oFlags &= ~OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW;
o->oForwardVel = 40.0f;
o->oVelY = 20.0f;
o->oBreakableBoxSmallReleased = 1;

View File

@@ -64,7 +64,7 @@ void bully_check_mario_collision(void) {
o->oInteractStatus &= ~INT_STATUS_INTERACTED;
o->oAction = BULLY_ACT_KNOCKBACK;
o->oFlags &= ~0x8; /* bit 3 */
o->oFlags &= ~OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW; /* bit 3 */
cur_obj_init_animation(3);
o->oBullyMarioCollisionAngle = o->oMoveAngleYaw;
}
@@ -98,7 +98,7 @@ void bully_act_knockback(void) {
if (o->oForwardVel < 10.0 && (s32) o->oVelY == 0) {
o->oForwardVel = 1.0;
o->oBullyKBTimerAndMinionKOCounter++;
o->oFlags |= 0x8; /* bit 3 */
o->oFlags |= OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW; /* bit 3 */
o->oMoveAngleYaw = o->oFaceAngleYaw;
obj_turn_toward_object(o, gMarioObject, 16, 1280);
} else
@@ -113,7 +113,7 @@ void bully_act_knockback(void) {
void bully_act_back_up(void) {
if (o->oTimer == 0) {
o->oFlags &= ~0x8; /* bit 3 */
o->oFlags &= ~OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW; /* bit 3 */
o->oMoveAngleYaw += 0x8000;
}
@@ -128,13 +128,13 @@ void bully_act_back_up(void) {
if (o->oTimer == 15) {
o->oMoveAngleYaw = o->oFaceAngleYaw;
o->oFlags |= 0x8; /* bit 3 */
o->oFlags |= OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW; /* bit 3 */
o->oAction = BULLY_ACT_PATROL;
}
}
void bully_backup_check(s16 collisionFlags) {
if (!(collisionFlags & 0x8) && o->oAction != BULLY_ACT_KNOCKBACK) /* bit 3 */
if (!(collisionFlags & OBJ_COL_FLAG_NO_Y_VEL) && o->oAction != BULLY_ACT_KNOCKBACK) /* bit 3 */
{
o->oPosX = o->oBullyPrevX;
o->oPosZ = o->oBullyPrevZ;
@@ -346,10 +346,10 @@ void bhv_big_bully_with_minions_loop(void) {
case BULLY_ACT_ACTIVATE_AND_FALL:
collisionFlags = object_step();
if ((collisionFlags & 0x9) == 0x9) /* bits 0 and 3 */
if ((collisionFlags & OBJ_COL_FLAGS_LANDED) == OBJ_COL_FLAGS_LANDED) /* bits 0 and 3 */
o->oAction = BULLY_ACT_PATROL;
if (collisionFlags == 1) {
if (collisionFlags == OBJ_COL_FLAG_GROUNDED) {
cur_obj_play_sound_2(SOUND_OBJ_THWOMP);
set_camera_shake_from_point(SHAKE_POS_SMALL, o->oPosX, o->oPosY, o->oPosZ);
spawn_mist_particles();

View File

@@ -118,11 +118,11 @@ void cap_scale_vertically(void) {
}
void wing_vanish_cap_act_0(void) {
s16 sp1E;
s16 collisionFlags;
o->oFaceAngleYaw += o->oForwardVel * 128.0f;
sp1E = object_step();
if (sp1E & 0x01) {
collisionFlags = object_step();
if (collisionFlags & OBJ_COL_FLAG_GROUNDED) {
cap_check_quicksand();
if (o->oVelY != 0.0f) {
o->oCapUnkF4 = 1;
@@ -161,11 +161,11 @@ void bhv_metal_cap_init(void) {
}
void metal_cap_act_0(void) {
s16 sp1E;
s16 collisionFlags;
o->oFaceAngleYaw += o->oForwardVel * 128.0f;
sp1E = object_step();
if (sp1E & 0x01)
collisionFlags = object_step();
if (collisionFlags & OBJ_COL_FLAG_GROUNDED)
cap_check_quicksand();
}
@@ -220,12 +220,12 @@ void normal_cap_set_save_flags(void) {
}
void normal_cap_act_0(void) {
s16 sp1E;
s16 collisionFlags;
o->oFaceAngleYaw += o->oForwardVel * 128.0f;
o->oFaceAnglePitch += o->oForwardVel * 80.0f;
sp1E = object_step();
if (sp1E & 0x01) {
collisionFlags = object_step();
if (collisionFlags & OBJ_COL_FLAG_GROUNDED) {
cap_check_quicksand();
if (o->oVelY != 0.0f) {

View File

@@ -6,7 +6,7 @@ struct DoorAction
s32 action;
};
static struct DoorAction sDoorActions[] = { { 0x40000, 3 }, { 0x80000, 4 }, { 0x10000, 1 }, { 0x20000, 2 }, { -1, 0 }, };
static struct DoorAction sDoorActions[] = { { INT_STATUS_WARP_DOOR_PULLED, 3 }, { INT_STATUS_WARP_DOOR_PUSHED, 4 }, { INT_STATUS_DOOR_PULLED, 1 }, { INT_STATUS_DOOR_PUSHED, 2 }, { -1, 0 }, };
static s32 sDoorOpenSounds[] = { SOUND_GENERAL_OPEN_WOOD_DOOR, SOUND_GENERAL_OPEN_IRON_DOOR };

View File

@@ -113,8 +113,8 @@ void exclamation_box_spawn_contents(struct Struct802C0DF0 *a0, u8 a1) {
sp1C->oForwardVel = 3.0f;
sp1C->oMoveAngleYaw = gMarioObject->oMoveAngleYaw;
o->oBehParams |= a0->unk2 << 24;
if (a0->model == 122)
o->oFlags |= 0x4000;
if (a0->model == MODEL_STAR)
o->oFlags |= OBJ_FLAG_PERSISTENT_RESPAWN;
break;
}
a0++;

View File

@@ -35,7 +35,7 @@ void bhv_fire_piranha_plant_init(void) {
obj_set_hitbox(o, &sFirePiranhaPlantHitbox);
if ((u16)(o->oBehParams >> 16) != 0) {
o->oFlags |= 0x00004000;
o->oFlags |= OBJ_FLAG_PERSISTENT_RESPAWN;
o->oHealth = 1;
if (o->oBehParams & 0x0000FF00) {

View File

@@ -180,7 +180,7 @@ static void klepto_act_wait_for_mario(void) {
klepto_target_mario();
if (o->oKleptoDistanceToTarget < 1000.0f) {
o->oAction = KLEPTO_ACT_TURN_TOWARD_MARIO;
o->oFlags &= ~0x00000008;
o->oFlags &= ~OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW;
}
}
@@ -195,7 +195,7 @@ static void klepto_act_turn_toward_mario(void) {
cur_obj_play_sound_2(SOUND_OBJ_KLEPTO1);
o->oAction = KLEPTO_ACT_DIVE_AT_MARIO;
o->oMoveAngleYaw = o->oFaceAngleYaw;
o->oFlags |= 0x00000008;
o->oFlags |= OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW;
cur_obj_init_animation_with_sound(3);
}
@@ -287,7 +287,7 @@ static void klepto_act_retreat(void) {
o->oAction = KLEPTO_ACT_RESET_POSITION;
o->oHomeY = 1500.0f;
o->oKleptoUnk1AE = -100;
o->oFlags |= 0x00000008;
o->oFlags |= OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW;
cur_obj_become_tangible();
}
}
@@ -371,7 +371,7 @@ void bhv_klepto_update(void) {
o->oGravity = -2.0f;
o->oMoveAngleYaw = o->oAngleToMario + 0x8000;
o->oFlags &= ~0x00000008;
o->oFlags &= ~OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW;
cur_obj_become_intangible();
} else if (gMarioStates[0].action == ACT_SLEEPING
|| (gMarioStates[0].action

View File

@@ -163,13 +163,10 @@ void bhv_mips_act_wait_for_animation_done(void) {
* Handles MIPS falling down after being thrown.
*/
void bhv_mips_act_fall_down(void) {
s16 collisionFlags = 0;
collisionFlags = object_step();
s16 collisionFlags = object_step();
o->header.gfx.animInfo.animFrame = 0;
if ((collisionFlags & OBJ_COL_FLAG_GROUNDED) == 1) {
if (collisionFlags & OBJ_COL_FLAG_GROUNDED) {
o->oAction = MIPS_ACT_WAIT_FOR_ANIMATION_DONE;
o->oFlags |= OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW;

View File

@@ -74,7 +74,7 @@ void moneybag_jump(s8 collisionFlags) {
case MONEYBAG_JUMP_JUMP:
cur_obj_init_animation(2);
if ((collisionFlags & 1) == 1) /* bit 0 */
if ((collisionFlags & OBJ_COL_FLAG_GROUNDED) == OBJ_COL_FLAG_GROUNDED) /* bit 0 */
{
o->oForwardVel = 0;
o->oVelY = 0;

View File

@@ -31,7 +31,7 @@ s32 coin_step(s16 *collisionFlagsPtr) {
obj_check_floor_death(*collisionFlagsPtr, sObjFloor);
if ((*collisionFlagsPtr & 0x1) != 0 && (*collisionFlagsPtr & 0x8) == 0) /* bit 0, bit 3 */
if ((*collisionFlagsPtr & OBJ_COL_FLAG_GROUNDED) && !(*collisionFlagsPtr & OBJ_COL_FLAG_NO_Y_VEL)) /* bit 0, bit 3 */
{
cur_obj_play_sound_2(SOUND_GENERAL_COIN_DROP);
return 1;
@@ -152,7 +152,7 @@ void blue_coin_sliding_away_from_mario(void) {
if (coin_step(&collisionFlags) != 0)
o->oVelY += 18.0f;
if ((collisionFlags & 0x2) != 0)
if (collisionFlags & OBJ_COL_FLAG_HIT_WALL)
o->oAction = 3; /* bit 1 */
if (is_point_within_radius_of_mario(o->oPosX, o->oPosY, o->oPosZ, 1000) == 0)

View File

@@ -57,11 +57,11 @@ void pole_1up_move_towards_mario(void) {
bhv_1up_interact();
}
void one_up_move_away_from_mario(s16 sp1A) {
void one_up_move_away_from_mario(s16 collisionFlags) {
o->oForwardVel = 8.0f;
o->oMoveAngleYaw = o->oAngleToMario + 0x8000;
bhv_1up_interact();
if (sp1A & 0x02)
if (collisionFlags & OBJ_COL_FLAG_HIT_WALL)
o->oAction = 2;
if (!is_point_within_radius_of_mario(o->oPosX, o->oPosY, o->oPosZ, 3000))
@@ -105,9 +105,7 @@ void bhv_1up_walking_loop(void) {
}
void bhv_1up_running_away_loop(void) {
s16 sp26;
sp26 = object_step();
s16 collisionFlags = object_step();
switch (o->oAction) {
case 0:
if (o->oTimer >= 18)
@@ -127,7 +125,7 @@ void bhv_1up_running_away_loop(void) {
case 1:
spawn_object(o, MODEL_NONE, bhvSparkleSpawn);
one_up_move_away_from_mario(sp26);
one_up_move_away_from_mario(collisionFlags);
break;
case 2:
@@ -140,10 +138,8 @@ void bhv_1up_running_away_loop(void) {
}
void sliding_1up_move(void) {
s16 sp1E;
sp1E = object_step();
if (sp1E & 0x01) {
s16 collisionFlags = object_step();
if (collisionFlags & OBJ_COL_FLAG_GROUNDED) {
o->oForwardVel += 25.0f;
o->oVelY = 0;
} else {
@@ -185,7 +181,7 @@ void bhv_1up_loop(void) {
}
void bhv_1up_jump_on_approach_loop(void) {
s16 sp26;
s16 collisionFlags;
switch (o->oAction) {
case 0:
@@ -196,13 +192,13 @@ void bhv_1up_jump_on_approach_loop(void) {
break;
case 1:
sp26 = object_step();
one_up_move_away_from_mario(sp26);
collisionFlags = object_step();
one_up_move_away_from_mario(collisionFlags);
spawn_object(o, MODEL_NONE, bhvSparkleSpawn);
break;
case 2:
sp26 = object_step();
collisionFlags = object_step();
bhv_1up_interact();
obj_flicker_and_disappear(o, 30);
break;
@@ -212,7 +208,7 @@ void bhv_1up_jump_on_approach_loop(void) {
}
void bhv_1up_hidden_loop(void) {
s16 sp26;
s16 collisionFlags;
switch (o->oAction) {
case 0:
o->header.gfx.node.flags |= GRAPH_RENDER_INVISIBLE;
@@ -225,19 +221,19 @@ void bhv_1up_hidden_loop(void) {
break;
case 1:
sp26 = object_step();
one_up_move_away_from_mario(sp26);
collisionFlags = object_step();
one_up_move_away_from_mario(collisionFlags);
spawn_object(o, MODEL_NONE, bhvSparkleSpawn);
break;
case 2:
sp26 = object_step();
collisionFlags = object_step();
bhv_1up_interact();
obj_flicker_and_disappear(o, 30);
break;
case 3:
sp26 = object_step();
collisionFlags = object_step();
if (o->oTimer >= 18)
spawn_object(o, MODEL_NONE, bhvSparkleSpawn);
@@ -264,7 +260,6 @@ void bhv_1up_hidden_trigger_loop(void) {
}
void bhv_1up_hidden_in_pole_loop(void) {
UNUSED s16 sp26;
switch (o->oAction) {
case 0:
o->header.gfx.node.flags |= GRAPH_RENDER_INVISIBLE;
@@ -278,11 +273,11 @@ void bhv_1up_hidden_in_pole_loop(void) {
case 1:
pole_1up_move_towards_mario();
sp26 = object_step();
object_step();
break;
case 3:
sp26 = object_step();
object_step();
if (o->oTimer >= 18)
spawn_object(o, MODEL_NONE, bhvSparkleSpawn);

View File

@@ -77,7 +77,7 @@ void bhv_scuttlebug_loop(void) {
cur_obj_rotate_yaw_toward(o->oAngleToMario, 0x400);
break;
case 3:
o->oFlags &= ~8;
o->oFlags &= ~OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW;
o->oForwardVel = -10.0f;
o->oVelY = 30.0f;
cur_obj_play_sound_2(SOUND_OBJ2_SCUTTLEBUG_ALERT);
@@ -89,7 +89,7 @@ void bhv_scuttlebug_loop(void) {
o->oSubAction++;
o->oVelY = 0.0f;
o->oScuttlebugUnkFC = 0;
o->oFlags |= 8;
o->oFlags |= OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW;
o->oInteractStatus = 0;
}
break;

View File

@@ -70,7 +70,7 @@ static void skeeter_act_lunge(void) {
if (o->oMoveFlags & OBJ_MOVE_HIT_WALL) {
o->oMoveAngleYaw = cur_obj_reflect_move_angle_off_wall();
o->oForwardVel *= 0.3f;
o->oFlags &= ~0x00000008;
o->oFlags &= ~OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW;
}
if (obj_forward_vel_approach(0.0f, 0.8f) && cur_obj_check_if_at_animation_end()) {
@@ -84,7 +84,7 @@ static void skeeter_act_lunge(void) {
o->oAction = SKEETER_ACT_IDLE;
o->oSkeeterWaitTime = random_linear_offset(0, 30);
o->oFlags |= 0x00000008;
o->oFlags |= OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW;
}
}
}

View File

@@ -51,7 +51,6 @@ void adjust_rolling_face_pitch(f32 f12) {
}
void snowmans_bottom_act_1(void) {
UNUSED s16 sp26;
s32 sp20;
UNUSED s16 sp1E;
#ifdef AVOID_UB
@@ -59,7 +58,7 @@ void snowmans_bottom_act_1(void) {
#endif
o->oPathedStartWaypoint = segmented_to_virtual(&ccm_seg7_trajectory_snowman);
sp26 = object_step_without_floor_orient();
object_step_without_floor_orient();
sp20 = cur_obj_follow_path(sp20);
o->oSnowmansBottomUnkF8 = o->oPathedTargetYaw;
o->oMoveAngleYaw = approach_s16_symmetric(o->oMoveAngleYaw, o->oSnowmansBottomUnkF8, 0x400);
@@ -80,9 +79,7 @@ void snowmans_bottom_act_1(void) {
}
void snowmans_bottom_act_2(void) {
UNUSED s16 sp26;
sp26 = object_step_without_floor_orient();
object_step_without_floor_orient();
if (o->oForwardVel > 70.0)
o->oForwardVel = 70.0f;
@@ -106,15 +103,13 @@ void snowmans_bottom_act_2(void) {
}
void snowmans_bottom_act_3(void) {
UNUSED s16 sp1E;
sp1E = object_step_without_floor_orient();
if ((sp1E & 0x09) == 0x09) {
s16 collisionFlags = object_step_without_floor_orient();
if ((collisionFlags & OBJ_COL_FLAGS_LANDED) == OBJ_COL_FLAGS_LANDED) {
o->oAction = 4;
cur_obj_become_intangible();
}
if ((sp1E & 0x01) != 0) {
if ((collisionFlags & 0x01) != 0) {
spawn_mist_particles_variable(0, 0, 70.0f);
o->oPosX = -4230.0f;
o->oPosZ = 1813.0f;
@@ -190,7 +185,7 @@ void bhv_snowmans_head_init(void) {
void bhv_snowmans_head_loop(void) {
UNUSED s16 sp1E;
s16 sp1C;
s16 collisionFlags;
switch (o->oAction) {
case 0:
@@ -202,8 +197,8 @@ void bhv_snowmans_head_loop(void) {
break;
case 2:
sp1C = object_step_without_floor_orient();
if (sp1C & 0x08)
collisionFlags = object_step_without_floor_orient();
if (collisionFlags & OBJ_COL_FLAG_NO_Y_VEL)
o->oAction = 3;
break;

View File

@@ -27,12 +27,12 @@ void bhv_spindrift_loop(void) {
cur_obj_rotate_yaw_toward(o->oAngleToMario, 0x400);
break;
case 1:
o->oFlags &= ~8;
o->oFlags &= ~OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW;
o->oForwardVel = -10.0f;
if (o->oTimer > 20) {
o->oAction = 0;
o->oInteractStatus = 0;
o->oFlags |= 8;
o->oFlags |= OBJ_FLAG_SET_FACE_YAW_TO_MOVE_YAW;
}
break;
}

View File

@@ -18,11 +18,11 @@ void bhv_yoshi_init(void) {
}
void yoshi_walk_loop(void) {
UNUSED s16 sp26;
UNUSED s16 collisionFlags;
s16 sp24 = o->header.gfx.animInfo.animFrame;
o->oForwardVel = 10.0f;
sp26 = object_step();
collisionFlags = object_step();
o->oMoveAngleYaw = approach_s16_symmetric(o->oMoveAngleYaw, o->oYoshiTargetYaw, 0x500);
if (is_point_close_to_object(o, o->oHomeX, 3174.0f, o->oHomeZ, 200))
o->oAction = YOSHI_ACT_IDLE;

Some files were not shown because too many files have changed in this diff Show More