From 983e7a1edcb48436f6d6be8917ce5b633bba4e02 Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Sat, 17 Aug 2024 22:46:27 +1000 Subject: [PATCH] Document LOS room detection functions --- src/game/bondbike.c | 6 +- src/game/bondeyespy.c | 14 ++--- src/game/bondgrab.c | 4 +- src/game/bondgun.c | 2 +- src/game/bondmove.c | 6 +- src/game/bondwalk.c | 8 +-- src/game/chr.c | 80 ++++++++++++------------- src/game/chraction.c | 34 +++++------ src/game/chraicommands.c | 4 +- src/game/gailists.c | 2 +- src/game/game_096360.c | 42 ++++++------- src/game/player.c | 6 +- src/game/prop.c | 98 ++++++++++++++++++++----------- src/game/propobj.c | 86 +++++++++++++-------------- src/game/splat.c | 4 +- src/include/constants.h | 4 +- src/include/game/chr.h | 10 ++-- src/include/game/game_096360.h | 8 +-- src/include/game/prop.h | 10 ++-- src/include/lib/lib_17ce0.h | 3 +- src/lib/collision.c | 26 ++++----- src/lib/lib_17ce0.c | 72 ++++++++++++++--------- src/setups/setupame.c | 104 ++++++++++++++++----------------- src/setups/setupark.c | 26 ++++----- src/setups/setupate.c | 6 +- src/setups/setupazt.c | 22 +++---- src/setups/setupcave.c | 38 ++++++------ src/setups/setupdam.c | 26 ++++----- src/setups/setupdepo.c | 18 +++--- src/setups/setupdish.c | 4 +- src/setups/setupear.c | 12 ++-- src/setups/setupeld.c | 46 +++++++-------- src/setups/setupimp.c | 54 ++++++++--------- src/setups/setuplee.c | 22 +++---- src/setups/setuplip.c | 22 +++---- src/setups/setuplue.c | 28 ++++----- src/setups/setupold.c | 14 ++--- src/setups/setuppam.c | 52 ++++++++--------- src/setups/setuppete.c | 18 +++--- src/setups/setuprit.c | 28 ++++----- src/setups/setupsev.c | 12 ++-- src/setups/setupsho.c | 72 +++++++++++------------ src/setups/setupstat.c | 26 ++++----- src/setups/setuptra.c | 48 +++++++-------- src/setups/setupwax.c | 10 ++-- 45 files changed, 643 insertions(+), 594 deletions(-) diff --git a/src/game/bondbike.c b/src/game/bondbike.c index 2568ad234..da00fba31 100644 --- a/src/game/bondbike.c +++ b/src/game/bondbike.c @@ -134,7 +134,7 @@ void bbike_try_dismount_angle(f32 relativeangle, f32 distance) prop_set_perim_enabled(g_Vars.currentplayer->hoverbike, false); prop_set_perim_enabled(g_Vars.currentplayer->prop, false); - func0f065e74(&g_Vars.currentplayer->prop->pos, g_Vars.currentplayer->prop->rooms, &pos, rooms); + los_find_final_room_exhaustive(&g_Vars.currentplayer->prop->pos, g_Vars.currentplayer->prop->rooms, &pos, rooms); bmove_find_entered_rooms_by_pos(g_Vars.currentplayer, &pos, rooms); result = cd_test_cyl_move02(&g_Vars.currentplayer->prop->pos, g_Vars.currentplayer->prop->rooms, @@ -395,7 +395,7 @@ s32 bbike_calculate_new_position(struct coord *vel, f32 angledelta) dstpos.z += vel->z; obj_get_bbox(g_Vars.currentplayer->hoverbike, &radius, &ymax, &ymin); - func0f065dfc(&g_Vars.currentplayer->hoverbike->pos, + los_find_intersecting_rooms_exhaustive(&g_Vars.currentplayer->hoverbike->pos, g_Vars.currentplayer->hoverbike->rooms, &dstpos, dstrooms, spa8, 20); @@ -537,7 +537,7 @@ void bbike_update_vertical(struct coord *pos) angle = hoverprop_get_turn_angle(bike); - func0f065e74(&bike->prop->pos, bike->prop->rooms, pos, newrooms); + los_find_final_room_exhaustive(&bike->prop->pos, bike->prop->rooms, pos, newrooms); #if VERSION < VERSION_NTSC_1_0 { diff --git a/src/game/bondeyespy.c b/src/game/bondeyespy.c index f61097383..bcdaffe38 100644 --- a/src/game/bondeyespy.c +++ b/src/game/bondeyespy.c @@ -94,8 +94,8 @@ s32 eyespy_try_move_upwards(f32 yvel) f0 = g_Vars.currentplayer->eyespy->oldground - prop->pos.y; } - func0f065e74(&prop->pos, prop->rooms, &dstpos, dstrooms); - chr0f021fa8(prop->chr, &dstpos, dstrooms); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &dstpos, dstrooms); + chr_find_entered_rooms_at_pos(prop->chr, &dstpos, dstrooms); prop_set_perim_enabled(prop, false); f0 -= 0.1f; @@ -152,7 +152,7 @@ s32 eyespy_calculate_new_position(struct coord *vel) } // This must be populating dstrooms at least - func0f065dfc(&eyespyprop->pos, eyespyprop->rooms, &dstpos, dstrooms, sp74, 20); + los_find_intersecting_rooms_exhaustive(&eyespyprop->pos, eyespyprop->rooms, &dstpos, dstrooms, sp74, 20); // Check if dstrooms contains the eyespy's old room. // If so, simplify dstrooms so it only contains that room. @@ -164,7 +164,7 @@ s32 eyespy_calculate_new_position(struct coord *vel) } } - chr0f021fa8(eyespyprop->chr, &dstpos, dstrooms); + chr_find_entered_rooms_at_pos(eyespyprop->chr, &dstpos, dstrooms); // Check if the eyespy is moving 13cm or more along either the X or Z // axis in a single frame. If less, only do a collision check for the @@ -539,7 +539,7 @@ void eyespy_update_vertical(void) g_EyespyHit = hit; } - chr0f0220ac(chr); + chr_detect_rooms(chr); dist.x = prop->pos.x - origpos.x; dist.y = prop->pos.y - origpos.y; @@ -674,10 +674,10 @@ bool eyespy_try_launch(void) player_set_perim_enabled(g_Vars.currentplayer->prop, true); prop_deregister_rooms(g_Vars.currentplayer->eyespy->prop); - func0f065e74(&g_Vars.currentplayer->prop->pos, g_Vars.currentplayer->prop->rooms, + los_find_final_room_exhaustive(&g_Vars.currentplayer->prop->pos, g_Vars.currentplayer->prop->rooms, &g_Vars.currentplayer->eyespy->prop->pos, g_Vars.currentplayer->eyespy->prop->rooms); - chr0f0220ac(chr); + chr_detect_rooms(chr); return launched; } diff --git a/src/game/bondgrab.c b/src/game/bondgrab.c index dd9570204..fa31a64eb 100644 --- a/src/game/bondgrab.c +++ b/src/game/bondgrab.c @@ -294,7 +294,7 @@ bool bgrab_try_move_upwards(f32 y) newpos.z = g_Vars.currentplayer->prop->pos.z; player_get_bbox(g_Vars.currentplayer->prop, &radius, &ymax, &ymin); - func0f065e74(&g_Vars.currentplayer->prop->pos, g_Vars.currentplayer->prop->rooms, &newpos, rooms); + los_find_final_room_exhaustive(&g_Vars.currentplayer->prop->pos, g_Vars.currentplayer->prop->rooms, &newpos, rooms); bmove_find_entered_rooms_by_pos(g_Vars.currentplayer, &newpos, rooms); prop_set_perim_enabled(g_Vars.currentplayer->prop, false); @@ -349,7 +349,7 @@ s32 bgrab_calculate_new_position(struct coord *delta, f32 angle, bool arg2) pos.y += delta->y; pos.z += delta->z; - func0f065e74(&g_Vars.currentplayer->prop->pos, g_Vars.currentplayer->prop->rooms, &pos, rooms); + los_find_final_room_exhaustive(&g_Vars.currentplayer->prop->pos, g_Vars.currentplayer->prop->rooms, &pos, rooms); #if VERSION < VERSION_NTSC_1_0 { diff --git a/src/game/bondgun.c b/src/game/bondgun.c index 683286bce..5edeff4f7 100644 --- a/src/game/bondgun.c +++ b/src/game/bondgun.c @@ -4375,7 +4375,7 @@ struct defaultobj *bgun_create_thrown_projectile2(struct chrdata *chr, struct gs guRotateF(mtx.m, 90.0f / (RANDOMFRAC() + 12.1f), arg4->m[1][0], arg4->m[1][1], arg4->m[1][2]); } else { - mtx_load_random_rotation(&mtx); + projectile_load_random_rotation(&mtx); } if (gset->weaponnum == WEAPON_LAPTOPGUN) { diff --git a/src/game/bondmove.c b/src/game/bondmove.c index 775040104..2e25864a5 100644 --- a/src/game/bondmove.c +++ b/src/game/bondmove.c @@ -425,7 +425,7 @@ f32 bmove_calculate_lookahead(void) spf0.y = g_Vars.currentplayer->prop->pos.y - 30; spf0.z = g_Vars.currentplayer->prop->pos.z; - portal00018148(&g_Vars.currentplayer->prop->pos, &spf0, + portal_find_rooms(&g_Vars.currentplayer->prop->pos, &spf0, g_Vars.currentplayer->prop->rooms, spe0, NULL, 0); sp150.x = sp100.x * 400 + spf0.x; @@ -452,13 +452,13 @@ f32 bmove_calculate_lookahead(void) spbc.y = sp100.y * value + spf0.y; spbc.z = sp100.z * value + spf0.z; - portal00018148(&spf0, &spbc, spe0, spa0, NULL, 0); + portal_find_rooms(&spf0, &spbc, spe0, spa0, NULL, 0); spb0.x = spbc.x; spb0.y = spbc.y - 400; spb0.z = spbc.z; - portal00018148(&spbc, &spb0, spa0, sp90, sp80, 7); + portal_find_rooms(&spbc, &spb0, spa0, sp90, sp80, 7); if ( #if VERSION >= VERSION_NTSC_1_0 diff --git a/src/game/bondwalk.c b/src/game/bondwalk.c index 472f68371..1af912a7c 100644 --- a/src/game/bondwalk.c +++ b/src/game/bondwalk.c @@ -207,7 +207,7 @@ s32 bwalk_try_move_upwards(f32 amount) types = g_Vars.bondcollisions ? CDTYPE_ALL : CDTYPE_BG; player_get_bbox(g_Vars.currentplayer->prop, &radius, &ymax, &ymin); - func0f065e74(&g_Vars.currentplayer->prop->pos, g_Vars.currentplayer->prop->rooms, &newpos, rooms); + los_find_final_room_exhaustive(&g_Vars.currentplayer->prop->pos, g_Vars.currentplayer->prop->rooms, &newpos, rooms); bmove_find_entered_rooms_by_pos(g_Vars.currentplayer, &newpos, rooms); prop_set_perim_enabled(g_Vars.currentplayer->prop, false); @@ -272,7 +272,7 @@ bool bwalk_calculate_new_position(struct coord *vel, f32 rotateamount, bool appl player_get_bbox(g_Vars.currentplayer->prop, &radius, &ymax, &ymin); radius += extrawidth; - func0f065dfc(&g_Vars.currentplayer->prop->pos, g_Vars.currentplayer->prop->rooms, + los_find_intersecting_rooms_exhaustive(&g_Vars.currentplayer->prop->pos, g_Vars.currentplayer->prop->rooms, &dstpos, dstrooms, sp64, 20); #if VERSION < VERSION_NTSC_1_0 @@ -442,7 +442,7 @@ bool bwalk_calculate_new_position_with_push(struct coord *delta, f32 rotateamoun prop_deregister_rooms(obstacle); rooms_copy(newrooms, obstacle->rooms); - chr0f0220ac(chr); + chr_detect_rooms(chr); model_set_root_position(chr->model, &newpos); result = bwalk_calculate_new_position(delta, rotateamount, apply, extrawidth, types); @@ -1122,7 +1122,7 @@ void bwalk_update_vertical(void) if (newpos.x != g_Vars.currentplayer->prop->pos.x || newpos.y != g_Vars.currentplayer->prop->pos.y || newpos.z != g_Vars.currentplayer->prop->pos.z) { - func0f065e74(&g_Vars.currentplayer->prop->pos, g_Vars.currentplayer->prop->rooms, &newpos, newrooms); + los_find_final_room_exhaustive(&g_Vars.currentplayer->prop->pos, g_Vars.currentplayer->prop->rooms, &newpos, newrooms); g_Vars.currentplayer->prop->pos.x = newpos.x; g_Vars.currentplayer->prop->pos.y = newpos.y; diff --git a/src/game/chr.c b/src/game/chr.c index 2c1d09d24..176ea106a 100644 --- a/src/game/chr.c +++ b/src/game/chr.c @@ -246,7 +246,7 @@ void chr_calculate_push_pos(struct chrdata *chr, struct coord *dstpos, RoomNum * } } - func0f065dfc(&prop->pos, prop->rooms, dstpos, dstrooms, sp84, 20); + los_find_intersecting_rooms_exhaustive(&prop->pos, prop->rooms, dstpos, dstrooms, sp84, 20); #if VERSION < VERSION_NTSC_1_0 for (i = 0; dstrooms[i] != -1; i++) { @@ -258,7 +258,7 @@ void chr_calculate_push_pos(struct chrdata *chr, struct coord *dstpos, RoomNum * } #endif - chr0f021fa8(chr, dstpos, dstrooms); + chr_find_entered_rooms_at_pos(chr, dstpos, dstrooms); movex = dstpos->x - prop->pos.x; movez = dstpos->z - prop->pos.z; @@ -312,7 +312,7 @@ void chr_calculate_push_pos(struct chrdata *chr, struct coord *dstpos, RoomNum * sp44.y = dstpos->y; sp44.z = sp54.z * value + prop->pos.z; - func0f065dfc(&prop->pos, prop->rooms, &sp44, dstrooms, sp84, 20); + los_find_intersecting_rooms_exhaustive(&prop->pos, prop->rooms, &sp44, dstrooms, sp84, 20); #if VERSION < VERSION_NTSC_1_0 for (j = 0; dstrooms[j] != -1; j++) { @@ -324,7 +324,7 @@ void chr_calculate_push_pos(struct chrdata *chr, struct coord *dstpos, RoomNum * } #endif - chr0f021fa8(chr, &sp44, dstrooms); + chr_find_entered_rooms_at_pos(chr, &sp44, dstrooms); movex = sp44.x - prop->pos.x; movez = sp44.z - prop->pos.z; @@ -368,7 +368,7 @@ void chr_calculate_push_pos(struct chrdata *chr, struct coord *dstpos, RoomNum * sp44.y = dstpos->y; sp44.z = sp54.z * value + prop->pos.z; - func0f065dfc(&prop->pos, prop->rooms, &sp44, dstrooms, sp84, 20); + los_find_intersecting_rooms_exhaustive(&prop->pos, prop->rooms, &sp44, dstrooms, sp84, 20); #if VERSION < VERSION_NTSC_1_0 for (k = 0; dstrooms[k] != -1; k++) { @@ -380,7 +380,7 @@ void chr_calculate_push_pos(struct chrdata *chr, struct coord *dstpos, RoomNum * } #endif - chr0f021fa8(chr, &sp44, dstrooms); + chr_find_entered_rooms_at_pos(chr, &sp44, dstrooms); movex = sp44.x - prop->pos.x; movez = sp44.z - prop->pos.z; @@ -422,7 +422,7 @@ void chr_calculate_push_pos(struct chrdata *chr, struct coord *dstpos, RoomNum * sp44.y = dstpos->y; sp44.z = sp54.z * value + prop->pos.z; - func0f065dfc(&prop->pos, prop->rooms, &sp44, dstrooms, sp84, 20); + los_find_intersecting_rooms_exhaustive(&prop->pos, prop->rooms, &sp44, dstrooms, sp84, 20); #if VERSION < VERSION_NTSC_1_0 for (l = 0; dstrooms[l] != -1; l++) { @@ -434,7 +434,7 @@ void chr_calculate_push_pos(struct chrdata *chr, struct coord *dstpos, RoomNum * } #endif - chr0f021fa8(chr, &sp44, dstrooms); + chr_find_entered_rooms_at_pos(chr, &sp44, dstrooms); movex = sp44.x - prop->pos.x; movez = sp44.z - prop->pos.z; @@ -478,9 +478,9 @@ void chr_calculate_push_pos(struct chrdata *chr, struct coord *dstpos, RoomNum * } #if VERSION >= VERSION_NTSC_1_0 -bool chr0f01f264(struct chrdata *chr, struct coord *pos, RoomNum *rooms, f32 arg3, bool arg4) +bool chr_ascend(struct chrdata *chr, struct coord *pos, RoomNum *rooms, f32 amount, bool writerooms) #else -bool chr0f01f264(struct chrdata *chr, struct coord *pos, RoomNum *rooms, f32 arg3) +bool chr_ascend(struct chrdata *chr, struct coord *pos, RoomNum *rooms, f32 amount) #endif { bool result; @@ -491,12 +491,12 @@ bool chr0f01f264(struct chrdata *chr, struct coord *pos, RoomNum *rooms, f32 arg f32 radius; newpos.x = pos->x; - newpos.y = pos->y + arg3; + newpos.y = pos->y + amount; newpos.z = pos->z; chr_get_bbox(chr->prop, &radius, &ymax, &ymin); - func0f065e74(pos, rooms, &newpos, newrooms); - chr0f021fa8(chr, &newpos, newrooms); + los_find_final_room_exhaustive(pos, rooms, &newpos, newrooms); + chr_find_entered_rooms_at_pos(chr, &newpos, newrooms); chr_set_perim_enabled(chr, false); result = cd_test_volume(&newpos, radius, newrooms, CDTYPE_ALL, CHECKVERTICAL_YES, ymax - chr->prop->pos.y, @@ -504,7 +504,7 @@ bool chr0f01f264(struct chrdata *chr, struct coord *pos, RoomNum *rooms, f32 arg chr_set_perim_enabled(chr, true); #if VERSION >= VERSION_NTSC_1_0 - if (result == true && arg4) { + if (result == true && writerooms) { pos->y = newpos.y; rooms_copy(newrooms, rooms); } @@ -548,10 +548,10 @@ bool chr0f01f378(struct model *model, struct coord *arg1, struct coord *arg2, f3 #endif if (g_Anims[model->anim->animnum].flags & ANIMFLAG_ABSOLUTETRANSLATION) { - if (chr->hidden & CHRHFLAG_00020000) { - func0f065e98(&prop->pos, prop->rooms, arg2, spfc); + if (chr->hidden & CHRHFLAG_FINDROOMSFAST) { + los_find_final_room_fast(&prop->pos, prop->rooms, arg2, spfc); } else { - func0f065e74(&prop->pos, prop->rooms, arg2, spfc); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, arg2, spfc); } ground = cd_find_ground_info_at_cyl(arg2, chr->radius, spfc, &chr->floorcol, &chr->floortype, &floorflags, &chr->floorroom, &inlift, &lift); @@ -760,11 +760,11 @@ bool chr0f01f378(struct model *model, struct coord *arg1, struct coord *arg2, f3 && !chr->act_skjump.needsnewanim && g_Vars.lvupdate60 != 0) { #if VERSION >= VERSION_NTSC_1_0 - if (chr0f01f264(chr, arg2, spfc, yincrement, true)) { + if (chr_ascend(chr, arg2, spfc, yincrement, true)) { chr->manground += yincrement; } #else - if (chr0f01f264(chr, arg2, spfc, yincrement)) { + if (chr_ascend(chr, arg2, spfc, yincrement)) { chr->manground += yincrement; arg2->y += yincrement; } @@ -781,16 +781,16 @@ bool chr0f01f378(struct model *model, struct coord *arg1, struct coord *arg2, f3 f32 ground; struct modelnode *node; u16 nodetype; - f32 sp68; + f32 fallspeed; u8 die; if (chr->onladder) { #if VERSION >= VERSION_NTSC_1_0 - if (chr0f01f264(chr, arg2, spfc, yincrement, true)) { + if (chr_ascend(chr, arg2, spfc, yincrement, true)) { chr->manground += yincrement; } #else - if (chr0f01f264(chr, arg2, spfc, yincrement)) { + if (chr_ascend(chr, arg2, spfc, yincrement)) { chr->manground += yincrement; arg2->y += yincrement; } @@ -816,8 +816,8 @@ bool chr0f01f378(struct model *model, struct coord *arg1, struct coord *arg2, f3 sp88.y = manground + 69.0f; sp88.z = arg2->z; - func0f065e74(arg2, spfc, &sp88, sp78); - chr0f021fa8(chr, &sp88, sp78); + los_find_final_room_exhaustive(arg2, spfc, &sp88, sp78); + chr_find_entered_rooms_at_pos(chr, &sp88, sp78); } else { sp98 = arg2; sp94 = spfc; @@ -890,18 +890,18 @@ bool chr0f01f378(struct model *model, struct coord *arg1, struct coord *arg2, f3 die = true; } - sp68 = chr->fallspeed.y; + fallspeed = chr->fallspeed.y; - func0f0965e4(&yincrement, &sp68, VAR(lvupdate60freal)); + projectile_update_fall(&yincrement, &fallspeed, VAR(lvupdate60freal)); #if VERSION >= VERSION_NTSC_1_0 - if (chr0f01f264(chr, arg2, spfc, yincrement, false)) + if (chr_ascend(chr, arg2, spfc, yincrement, false)) #else - if (chr0f01f264(chr, arg2, spfc, yincrement)) + if (chr_ascend(chr, arg2, spfc, yincrement)) #endif { chr->manground += yincrement; - chr->fallspeed.y = sp68; + chr->fallspeed.y = fallspeed; } if (chr->manground <= chr->ground) { @@ -961,8 +961,8 @@ bool chr0f01f378(struct model *model, struct coord *arg1, struct coord *arg2, f3 arg2->y += chr->manground - manground; - func0f065e74(&spd0, spc0, arg2, spfc); - chr0f021fa8(chr, arg2, spfc); + los_find_final_room_exhaustive(&spd0, spc0, arg2, spfc); + chr_find_entered_rooms_at_pos(chr, arg2, spfc); } #endif } @@ -1011,7 +1011,7 @@ bool chr0f01f378(struct model *model, struct coord *arg1, struct coord *arg2, f3 } #endif - chr0f0220ac(chr); + chr_detect_rooms(chr); prop_calculate_shade_colour(prop, chr->nextcol, chr->floorcol); return true; @@ -1326,7 +1326,7 @@ struct prop *chr0f020b14(struct prop *prop, struct model *model, prop_deregister_rooms(prop); rooms_copy(rooms, prop->rooms); - chr0f0220ac(chr); + chr_detect_rooms(chr); model_set_root_position(model, &prop->pos); nodetype = chr->model->definition->rootnode->type; @@ -1871,7 +1871,7 @@ void chr_handle_joint_positioned(s32 joint, Mtxf *mtx) } } -void chr0f021fa8(struct chrdata *chr, struct coord *pos, RoomNum *rooms) +void chr_find_entered_rooms_at_pos(struct chrdata *chr, struct coord *pos, RoomNum *rooms) { struct coord lower; struct coord upper; @@ -1904,15 +1904,15 @@ void chr0f021fa8(struct chrdata *chr, struct coord *pos, RoomNum *rooms) bg_find_entered_rooms(&lower, &upper, rooms, 7, true); } -void chr0f022084(struct chrdata *chr, RoomNum *room) +void chr_find_entered_rooms(struct chrdata *chr, RoomNum *room) { - chr0f021fa8(chr, &chr->prop->pos, room); + chr_find_entered_rooms_at_pos(chr, &chr->prop->pos, room); } -void chr0f0220ac(struct chrdata *chr) +void chr_detect_rooms(struct chrdata *chr) { prop_deregister_rooms(chr->prop); - chr0f022084(chr, chr->prop->rooms); + chr_find_entered_rooms(chr, chr->prop->rooms); prop_register_rooms(chr->prop); } @@ -4815,12 +4815,12 @@ void chr0f0284f4(s32 arg0) } } -void chr0f028544(void) +void chrs_toggle_anim_debug(void) { var80062974 = !var80062974; } -void chr0f02855c(s32 arg0) +void chrs_set_anims_playing(s32 arg0) { var80062978 = arg0; diff --git a/src/game/chraction.c b/src/game/chraction.c index 51273c777..b60f78e91 100644 --- a/src/game/chraction.c +++ b/src/game/chraction.c @@ -5322,7 +5322,7 @@ bool chr_is_room_off_screen(struct chrdata *chr, struct coord *waypos, RoomNum * RoomNum sp50[8]; if ((chr->hidden & CHRHFLAG_CLOAKED) == 0 || USINGDEVICE(DEVICE_IRSCANNER)) { - func0f065dfc(&prop->pos, prop->rooms, waypos, sp64, sp7c, 20); + los_find_intersecting_rooms_exhaustive(&prop->pos, prop->rooms, waypos, sp64, sp7c, 20); if (g_Vars.mplayerisrunning) { for (i = 0; sp7c[i] != -1; i++) { @@ -5343,7 +5343,7 @@ bool chr_is_room_off_screen(struct chrdata *chr, struct coord *waypos, RoomNum * if (offscreen) { for (i = 0; i < PLAYERCOUNT(); i++) { - portal00018148(waypos, &g_Vars.players[i]->prop->pos, wayrooms, sp50, 0, 0); + portal_find_rooms(waypos, &g_Vars.players[i]->prop->pos, wayrooms, sp50, 0, 0); if (array_intersects(g_Vars.players[i]->prop->rooms, sp50)) { offscreen = false; @@ -5684,7 +5684,7 @@ void chr_nav_tick_magic(struct chrdata *chr, struct waydata *waydata, f32 speed, // Reached end of segment chr_set_perim_enabled(chr, false); rooms_copy(rooms, sp118); - chr0f021fa8(chr, arg3, sp118); + chr_find_entered_rooms_at_pos(chr, arg3, sp118); ground = cd_find_ground_info_at_cyl(arg3, chr->radius, sp118, &floorcol, &floortype, 0, &floorroom, NULL, NULL); @@ -5693,7 +5693,7 @@ void chr_nav_tick_magic(struct chrdata *chr, struct waydata *waydata, f32 speed, spf4.z = arg3->z; rooms_copy(rooms, sp118); - chr0f021fa8(chr, &spf4, sp118); + chr_find_entered_rooms_at_pos(chr, &spf4, sp118); chr_get_bbox(chr->prop, &radius, &ymax, &ymin); if (cd_test_volume(&spf4, chr->radius, sp118, CDTYPE_ALL, CHECKVERTICAL_YES, ymax - prop->pos.y, ymin - prop->pos.y) != CDRESULT_COLLISION) { @@ -6419,7 +6419,7 @@ bool chr_has_los_to_entity(struct chrdata *chr, struct coord *chrpos, RoomNum *c frompos.y = chrpos->y + 70; frompos.z = chrpos->z; - func0f065dd8(chrpos, chrrooms, &frompos, fromrooms); + los_find_final_room_properly(chrpos, chrrooms, &frompos, fromrooms); if (cd_test_los05(&frompos, fromrooms, &targetpos, targetrooms, types, GEOFLAG_BLOCK_SHOOT)) { chr_record_last_visible_target_time(chr); @@ -6491,7 +6491,7 @@ bool chr_has_los_to_chr(struct chrdata *chr, struct chrdata *target, RoomNum *ro chr_set_perim_enabled(chr, false); chr_set_perim_enabled(target, false); - func0f065e74(&prop->pos, prop->rooms, &pos, rooms); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &pos, rooms); if (cd_test_los07(&pos, rooms, &target->prop->pos, target->prop->rooms, sp88, CDTYPE_OBJS | CDTYPE_DOORS | CDTYPE_PATHBLOCKER | CDTYPE_BG | CDTYPE_AIOPAQUE, @@ -6550,7 +6550,7 @@ bool chr_has_los_to_pos(struct chrdata *chr, struct coord *pos, RoomNum *rooms) eyepos.z = prop->pos.z; chr_set_perim_enabled(chr, false); - func0f065e74(&prop->pos, prop->rooms, &eyepos, chrrooms); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &eyepos, chrrooms); if (cd_test_los05(&eyepos, chrrooms, pos, rooms, CDTYPE_OBJS | CDTYPE_DOORS | CDTYPE_PATHBLOCKER | CDTYPE_BG | CDTYPE_AIOPAQUE, @@ -7437,7 +7437,7 @@ bool chr_try_run_from_target(struct chrdata *chr) } } - func0f065e74(&prop->pos, prop->rooms, &dst, rooms); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &dst, rooms); chr_go_to_room_pos(chr, &dst, rooms, speed); return true; @@ -7526,7 +7526,7 @@ bool chr_go_to_cover_prop(struct chrdata *chr) } } - func0f065e74(&chrprop->pos, chrprop->rooms, &dstpos, dstrooms); + los_find_final_room_exhaustive(&chrprop->pos, chrprop->rooms, &dstpos, dstrooms); chr_go_to_room_pos(chr, &dstpos, dstrooms, speed); chr->proppreset1 = prop - g_Vars.props; @@ -10368,7 +10368,7 @@ void chr_tick_shoot(struct chrdata *chr, s32 handnum) } bgun_play_prop_hit_sound(&gset, hitprop, -1); - func0f065e74(&gunpos, gunrooms, &hitpos, hitrooms); + los_find_final_room_exhaustive(&gunpos, gunrooms, &hitpos, hitrooms); queriedhitrooms = true; if (chr_is_using_paintball(chr)) { @@ -10386,7 +10386,7 @@ void chr_tick_shoot(struct chrdata *chr, s32 handnum) } } else if (hitsomething) { // Hit the background - func0f065e74(&gunpos, gunrooms, &hitpos, hitrooms); + los_find_final_room_exhaustive(&gunpos, gunrooms, &hitpos, hitrooms); queriedhitrooms = true; bgun_play_bg_hit_sound(&gset, &hitpos, -1, hitrooms); @@ -10402,7 +10402,7 @@ void chr_tick_shoot(struct chrdata *chr, s32 handnum) s32 playernum = chr->aibot ? mp_player_get_index(chr) : g_Vars.currentplayernum; if (!queriedhitrooms) { - func0f065e74(&gunpos, gunrooms, &hitpos, hitrooms); + los_find_final_room_exhaustive(&gunpos, gunrooms, &hitpos, hitrooms); } explosion_create_simple(NULL, &hitpos, hitrooms, EXPLOSIONTYPE_PHOENIX, playernum); @@ -15001,7 +15001,7 @@ bool chr_adjust_pos_for_spawn(f32 chrradius, struct coord *pos, RoomNum *rooms, if ((onlysurrounding && cd_test_cyl_move04(pos, rooms, &testpos, testrooms, CDTYPE_ALL & ~CDTYPE_PLAYERS, 1, ymax, -200) != CDRESULT_COLLISION) || (!onlysurrounding && cd_test_los11(pos, rooms, &testpos, testrooms, CDTYPE_BG))) { - chr0f021fa8(NULL, &testpos, testrooms); + chr_find_entered_rooms_at_pos(NULL, &testpos, testrooms); ground = cd_find_ground_at_cyl(&testpos, chrradius, testrooms, 0, 0); ymin = -200; @@ -15292,7 +15292,7 @@ bool chr_move_to_pos(struct chrdata *chr, struct coord *pos, RoomNum *rooms, f32 prop_deregister_rooms(chr->prop); rooms_copy(rooms2, chr->prop->rooms); - chr0f0220ac(chr); + chr_detect_rooms(chr); model_set_root_position(chr->model, &pos2); nodetype = chr->model->definition->rootnode->type; @@ -15659,7 +15659,7 @@ bool chr_run_from_pos(struct chrdata *chr, u32 goposflags, f32 rundist, struct c chr_set_perim_enabled(chr, true); - func0f065e74(&chr->prop->pos, chr->prop->rooms, &delta, rooms); + los_find_final_room_exhaustive(&chr->prop->pos, chr->prop->rooms, &delta, rooms); return chr_go_to_room_pos(chr, &delta, rooms, goposflags); } @@ -16174,8 +16174,8 @@ void chr_avoid(struct chrdata *chr) halfchrradius = radius * 0.5f; - func0f065e74(&chr->prop->pos, chr->prop->rooms, &dstpos, dstrooms); - chr0f021fa8(chr, &dstpos, dstrooms); + los_find_final_room_exhaustive(&chr->prop->pos, chr->prop->rooms, &dstpos, dstrooms); + chr_find_entered_rooms_at_pos(chr, &dstpos, dstrooms); xdiff = dstpos.x - chr->prop->pos.x; zdiff = dstpos.z - chr->prop->pos.z; diff --git a/src/game/chraicommands.c b/src/game/chraicommands.c index 06811c673..edc21a59d 100644 --- a/src/game/chraicommands.c +++ b/src/game/chraicommands.c @@ -5002,7 +5002,7 @@ bool ai_enable_chr(void) if (chr && chr->prop && chr->model) { prop_activate(chr->prop); prop_enable(chr->prop); - chr0f0220ac(chr); + chr_detect_rooms(chr); } g_Vars.aioffset += 3; @@ -9889,7 +9889,7 @@ bool ai_remove_references_to_chr(void) bool ai01b4(void) { if (g_Vars.chrdata && g_Vars.chrdata->prop && - chr0f01f264(g_Vars.chrdata, &g_Vars.chrdata->prop->pos, g_Vars.chrdata->prop->rooms, 0, false)) { + chr_ascend(g_Vars.chrdata, &g_Vars.chrdata->prop->pos, g_Vars.chrdata->prop->rooms, 0, false)) { u8 *cmd = g_Vars.ailist + g_Vars.aioffset; g_Vars.aioffset = chrai_go_to_label(g_Vars.ailist, g_Vars.aioffset, cmd[2]); } else { diff --git a/src/game/gailists.c b/src/game/gailists.c index 7695d2032..1aaa0485b 100644 --- a/src/game/gailists.c +++ b/src/game/gailists.c @@ -6005,7 +6005,7 @@ u8 func0020_buddy_warp[] = { // Move to pad worked label(0x13) stop_chr - set_chr_hiddenflag(CHR_SELF, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_SELF, CHRHFLAG_FINDROOMSFAST) set_chr_hiddenflag(CHR_SELF, CHRHFLAG_UNTARGETABLE) // Wait until flag unset (timer is not checked) diff --git a/src/game/game_096360.c b/src/game/game_096360.c index 3733c4ccd..3e791a92f 100644 --- a/src/game/game_096360.c +++ b/src/game/game_096360.c @@ -11,46 +11,46 @@ #include "data.h" #include "types.h" -void mtx_load_random_rotation(Mtxf *mtx) +void projectile_load_random_rotation(Mtxf *mtx) { - struct coord coord = {0, 0, 0}; + struct coord rot = {0, 0, 0}; - coord.x = RANDOMFRAC() * PALUPF(M_BADTAU) * 0.0078125f - PALUPF(0.024539785459638f); - coord.y = RANDOMFRAC() * PALUPF(M_BADTAU) * 0.0078125f - PALUPF(0.024539785459638f); - coord.z = RANDOMFRAC() * PALUPF(M_BADTAU) * 0.0078125f - PALUPF(0.024539785459638f); + rot.x = RANDOMFRAC() * PALUPF(M_BADTAU) * (1.0f / 128.0f) - PALUPF(M_BADPI / 128.0f); + rot.y = RANDOMFRAC() * PALUPF(M_BADTAU) * (1.0f / 128.0f) - PALUPF(M_BADPI / 128.0f); + rot.z = RANDOMFRAC() * PALUPF(M_BADTAU) * (1.0f / 128.0f) - PALUPF(M_BADPI / 128.0f); - mtx4_load_rotation(&coord, mtx); + mtx4_load_rotation(&rot, mtx); } -void func0f0964b4(struct coord *coord, Mtxf *mtx) +void projectile_load_random_speed_rotation(struct coord *speed, Mtxf *mtx) { - coord->x = RANDOMFRAC() * 1.6666666269302f * 4.0f - 3.3333332538605f; - coord->y = RANDOMFRAC() * 1.6666666269302f * 4.0f; - coord->z = RANDOMFRAC() * 1.6666666269302f * 4.0f - 3.3333332538605f; + speed->x = RANDOMFRAC() * (10.0f / 6.0f) * 4.0f - (10.0f / 3.0f); + speed->y = RANDOMFRAC() * (10.0f / 6.0f) * 4.0f; + speed->z = RANDOMFRAC() * (10.0f / 6.0f) * 4.0f - (10.0f / 3.0f); - mtx_load_random_rotation(mtx); + projectile_load_random_rotation(mtx); } -void func0f0965e4(f32 *arg0, f32 *arg1, f32 arg2) +void projectile_update_fall(f32 *yincrement, f32 *speedptr, f32 lvupdate60) { - f32 tmp = arg1[0] - arg2 * 0.27777779f; - arg0[0] += arg2 * (arg1[0] + tmp) * 0.5f; - arg1[0] = tmp; + f32 speed = *speedptr - lvupdate60 * 0.27777779f; + *yincrement += lvupdate60 * (*speedptr + speed) * 0.5f; + *speedptr = speed; } -void func0f096628(f32 *arg0, f32 *arg1, f32 arg2) +void projectile_update_3d(f32 *increment, f32 *speed, f32 lvupdate60) { - func0f0965e4(&arg0[1], &arg1[1], arg2); + projectile_update_fall(&increment[1], &speed[1], lvupdate60); - arg0[0] += arg2 * arg1[0]; - arg0[2] += arg2 * arg1[2]; + increment[0] += lvupdate60 * speed[0]; + increment[2] += lvupdate60 * speed[2]; } -void func0f096698(Mtxf *arg0, Mtxf *arg1, s32 count) +void projectile_update_matrix(Mtxf *arg0, Mtxf *arg1, s32 lvupdate240) { s32 i; - for (i = 0; i < count; i++) { + for (i = 0; i < lvupdate240; i++) { mtx00015be0(arg1, arg0); } } diff --git a/src/game/player.c b/src/game/player.c index 987b42f7a..4daff1cbb 100644 --- a/src/game/player.c +++ b/src/game/player.c @@ -4943,8 +4943,8 @@ void player_move_camera_from_pos_rooms(struct coord *pos, struct coord *up, stru s32 room; if (prevgoodrooms != NULL && *prevgoodrooms != -1) { - // Get rooms which are visible from the prevgoodpos+prevgoodroom? - portal00018148(prevgoodpos, pos, prevgoodrooms, rooms, NULL, 0); + // Get rooms which are visible from the prevgoodpos+prevgoodroom + portal_find_rooms(prevgoodpos, pos, prevgoodrooms, rooms, NULL, 0); // Remove values from rooms if that room doesn't contain the coord, // and shuffle the array back when removing values. @@ -5298,7 +5298,7 @@ s32 player_tick_third_person(struct prop *prop) player->vv_ground = chr->ground; player->vv_manground = chr->ground; - chr0f0220ac(prop->chr); + chr_detect_rooms(prop->chr); if (prop->flags & PROPFLAG_ONTHISSCREENTHISTICK) { if (player->model00d4->definition->skel == &g_SkelChr) { diff --git a/src/game/prop.c b/src/game/prop.c index 477706a43..3d9bd4165 100644 --- a/src/game/prop.c +++ b/src/game/prop.c @@ -679,8 +679,8 @@ struct prop *shot_calculate_hits(s32 handnum, bool isshooting, struct coord *gun hitpos.z = shotdata.gunpos3d.z + shotdata.gundir3d.z * 65536; } - portal00018148(&playerprop->pos, &shotdata.gunpos3d, playerprop->rooms, spc8, 0, 0); - portal00018148(&shotdata.gunpos3d, &hitpos, spc8, spb8, rooms, 30); + portal_find_rooms(&playerprop->pos, &shotdata.gunpos3d, playerprop->rooms, spc8, 0, 0); + portal_find_rooms(&shotdata.gunpos3d, &hitpos, spc8, spb8, rooms, 30); if (shotdata.gset.weaponnum != WEAPON_FARSIGHT || g_Vars.currentplayer->visionmode != VISIONMODE_XRAY) { roomsptr = rooms; @@ -805,7 +805,7 @@ struct prop *shot_calculate_hits(s32 handnum, bool isshooting, struct coord *gun exppos.y = shotdata.hits[i].pos.y; exppos.z = shotdata.hits[i].pos.z; - func0f065e74(&root->pos, root->rooms, &exppos, exprooms); + los_find_final_room_exhaustive(&root->pos, root->rooms, &exppos, exprooms); explosion_create_simple(0, &exppos, exprooms, EXPLOSIONTYPE_PHOENIX, g_Vars.currentplayernum); } } @@ -3079,57 +3079,89 @@ void prop_register_rooms(struct prop *prop) } } -void func0f065d1c(struct coord *pos, RoomNum *rooms, struct coord *newpos, RoomNum *newrooms, RoomNum *morerooms, u32 arg5) +/** + * Given a line from frompos to pos, use portals to get all rooms the line + * intersects as well as the final room. + * + * If the line goes out of bounds, the intersecting list up until that point + * will be returned. + */ +void los_find_intersecting_rooms_properly(struct coord *frompos, RoomNum *fromrooms, struct coord *topos, RoomNum *finalrooms, RoomNum *intersecting, s32 maxintersecting) { - RoomNum stackrooms[8]; - s32 index; + RoomNum tmprooms[8]; + s32 len; s32 i; - portal00018148(pos, newpos, rooms, stackrooms, morerooms, arg5); + portal_find_rooms(frompos, topos, fromrooms, tmprooms, intersecting, maxintersecting); - index = 0; + len = 0; - for (i = 0; stackrooms[i] != -1; i++) { - if (bg_room_contains_coord(newpos, stackrooms[i])) { - newrooms[index] = stackrooms[i]; - index++; + for (i = 0; tmprooms[i] != -1; i++) { + if (bg_room_contains_coord(topos, tmprooms[i])) { + finalrooms[len] = tmprooms[i]; + len++; } } - newrooms[index] = -1; + finalrooms[len] = -1; } -void func0f065dd8(struct coord *pos, RoomNum *rooms, struct coord *newpos, RoomNum *newrooms) +/** + * Given a line from frompos to topos, use portals to get the final room if both + * pos coords are in bounds and there is visibility between the two. + */ +void los_find_final_room_properly(struct coord *frompos, RoomNum *fromrooms, struct coord *topos, RoomNum *finalrooms) { - func0f065d1c(pos, rooms, newpos, newrooms, NULL, 0); + los_find_intersecting_rooms_properly(frompos, fromrooms, topos, finalrooms, NULL, 0); } -void func0f065dfc(struct coord *pos, RoomNum *rooms, struct coord *newpos, RoomNum *newrooms, RoomNum *morerooms, u32 arg5) +/** + * Given a line from frompos to topos, use portals to get all rooms the line + * intersects as well as the final room. + * + * If the line goes out of bounds, run the fast test to try and find the room + * that topos is above and add it to both room lists. + */ +void los_find_intersecting_rooms_exhaustive(struct coord *frompos, RoomNum *fromrooms, struct coord *topos, RoomNum *finalrooms, RoomNum *intersecting, s32 maxintersecting) { - func0f065d1c(pos, rooms, newpos, newrooms, morerooms, arg5); + los_find_intersecting_rooms_properly(frompos, fromrooms, topos, finalrooms, intersecting, maxintersecting); - if (newrooms[0] == -1) { - func0f065e98(pos, rooms, newpos, newrooms); + if (finalrooms[0] == -1) { + los_find_final_room_fast(frompos, fromrooms, topos, finalrooms); - if (morerooms) { - rooms_append(newrooms, morerooms, arg5); + if (intersecting) { + rooms_append(finalrooms, intersecting, maxintersecting); } } } -void func0f065e74(struct coord *pos, RoomNum *rooms, struct coord *newpos, RoomNum *newrooms) +/** + * Given a line from frompos to topos, use portals to find the final room. + * + * If this fails (eg. because either pos is out of bounds) + * then fall back to the fast single point test. + */ +void los_find_final_room_exhaustive(struct coord *frompos, RoomNum *fromrooms, struct coord *topos, RoomNum *finalrooms) { - func0f065dfc(pos, rooms, newpos, newrooms, NULL, 0); + los_find_intersecting_rooms_exhaustive(frompos, fromrooms, topos, finalrooms, NULL, 0); } -void func0f065e98(struct coord *pos, RoomNum *rooms, struct coord *pos2, RoomNum *dstrooms) +/** + * Find a room for the given topos without taking any consideration into portals + * or overlapping rooms. + * + * Populate finalrooms with the room that topos is in, if any. + * Otherwise, populate finalrooms with the room that topos is above. + * Otherwise, populate finalrooms with fromrooms. + */ +void los_find_final_room_fast(struct coord *frompos, RoomNum *fromrooms, struct coord *topos, RoomNum *finalrooms) { RoomNum inrooms[21]; RoomNum aboverooms[21]; RoomNum *ptr = NULL; s32 i; - bg_find_rooms_by_pos(pos2, inrooms, aboverooms, 20, NULL); + bg_find_rooms_by_pos(topos, inrooms, aboverooms, 20, NULL); if (inrooms[0] != -1) { ptr = inrooms; @@ -3138,21 +3170,21 @@ void func0f065e98(struct coord *pos, RoomNum *rooms, struct coord *pos2, RoomNum } if (ptr) { - s32 room = cd_find_floor_room_at_pos(pos2, ptr); + s32 room = cd_find_floor_room_at_pos(topos, ptr); if (room > 0) { - dstrooms[0] = room; - dstrooms[1] = -1; + finalrooms[0] = room; + finalrooms[1] = -1; } else { - dstrooms[0] = *ptr; - dstrooms[1] = -1; + finalrooms[0] = *ptr; + finalrooms[1] = -1; } } else { - for (i = 0; rooms[i] != -1; i++) { - dstrooms[i] = rooms[i]; + for (i = 0; fromrooms[i] != -1; i++) { + finalrooms[i] = fromrooms[i]; } - dstrooms[i] = -1; + finalrooms[i] = -1; } } diff --git a/src/game/propobj.c b/src/game/propobj.c index 381b01ec3..0a574f8e1 100644 --- a/src/game/propobj.c +++ b/src/game/propobj.c @@ -2291,7 +2291,7 @@ void func0f06a730(struct defaultobj *obj, struct coord *arg1, Mtxf *mtx, RoomNum pos2.y = centre->y - sp70.m[row][1] * min; pos2.z = centre->z - sp70.m[row][2] * min; - func0f065e74(arg1, rooms, &pos2, rooms2); + los_find_final_room_exhaustive(arg1, rooms, &pos2, rooms2); #if VERSION >= VERSION_NTSC_1_0 if (cd_find_floor_room_y_colour_flags_at_pos(&pos2, rooms2, &y, &obj->floorcol, NULL) > 0) @@ -2323,7 +2323,7 @@ void func0f06a730(struct defaultobj *obj, struct coord *arg1, Mtxf *mtx, RoomNum } } - func0f065e74(arg1, rooms, &pos2, rooms2); + los_find_final_room_exhaustive(arg1, rooms, &pos2, rooms2); func0f06a580(obj, &pos2, &sp70, rooms2); } @@ -2348,7 +2348,7 @@ void func0f06ab60(struct defaultobj *obj, struct coord *arg1, Mtxf *arg2, RoomNu newpos.y = arg4->y - sp5c.m[2][1] * mult; newpos.z = arg4->z - sp5c.m[2][2] * mult; - func0f065e74(arg1, rooms, &newpos, newrooms); + los_find_final_room_exhaustive(arg1, rooms, &newpos, newrooms); func0f06a580(obj, &newpos, &sp5c, newrooms); } @@ -3254,7 +3254,7 @@ s32 func0f06cd00(struct defaultobj *obj, struct coord *pos, struct coord *arg2, if ((prop->pos.x != pos->x || prop->pos.y != pos->y || prop->pos.z != pos->z) && (obj->hidden & OBJHFLAG_PROJECTILE) && (obj->projectile->flags & PROJECTILEFLAG_STICKY)) { - portal00018148(&prop->pos, &sp1c4, prop->rooms, spb8, spcc, 20); + portal_find_rooms(&prop->pos, &sp1c4, prop->rooms, spb8, spcc, 20); ptr = spcc; @@ -3510,7 +3510,7 @@ bool func0f06d37c(struct defaultobj *obj, struct coord *arg1, struct coord *arg2 sp4c.y = sp80.y; sp4c.z = prop->pos.z; - func0f065e74(&prop->pos, prop->rooms, &sp4c, rooms); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &sp4c, rooms); prop->pos.y = sp4c.y; @@ -3975,7 +3975,7 @@ void obj_land2(struct defaultobj *obj, struct coord *arg1, struct coord *arg2) newpos.y = arg1->y - sp40.m[1][1] * ymin; newpos.z = arg1->z - sp40.m[1][2] * ymin; - func0f065e74(&prop->pos, prop->rooms, &newpos, newrooms); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &newpos, newrooms); func0f06a580(obj, &newpos, &sp40, newrooms); } @@ -4003,7 +4003,7 @@ void bolt_land(struct weaponobj *weapon, struct coord *arg1) newpos.y = arg1->y - mtx.m[2][1] * zmax; newpos.z = arg1->z - mtx.m[2][2] * zmax; - func0f065dd8(&prop->pos, prop->rooms, &newpos, newrooms); + los_find_final_room_properly(&prop->pos, prop->rooms, &newpos, newrooms); func0f06a580(&weapon->base, &newpos, &mtx, newrooms); beamnum = boltbeam_find_by_prop(prop); @@ -4043,7 +4043,7 @@ void knife_land(struct defaultobj *obj, struct coord *arg1, struct coord *arg2) newpos.y = arg1->y - zero; newpos.z = arg1->z - zero; - func0f065e74(&prop->pos, prop->rooms, &newpos, newrooms); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &newpos, newrooms); func0f06a580(obj, &newpos, &spd0, newrooms); } @@ -4195,7 +4195,7 @@ bool prop_explode(struct prop *prop, s32 exptype) pos.z = parent->pos.z; } - func0f065e74(&parent->pos, parent->rooms, &pos, rooms); + los_find_final_room_exhaustive(&parent->pos, parent->rooms, &pos, rooms); result = explosion_create_complex(NULL, &pos, rooms, exptype, playernum); } else if ((obj->hidden & (OBJHFLAG_EMBEDDED | OBJHFLAG_PROJECTILE | OBJHFLAG_00020000)) == OBJHFLAG_00020000) { @@ -5258,11 +5258,11 @@ void hov_tick(struct defaultobj *obj, struct hov *hov) setup0f09233c(obj, &sp90, obj->realrot, sp9c); - func0f065e74(&prop->pos, prop->rooms, &sp1b4, sp198); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &sp1b4, sp198); rooms_append(sp9c, sp198, ARRAYCOUNT(sp198)); ground1 = cd_find_ground_at_cyl(&sp1b4, 5, sp198, &obj->floorcol, NULL); - func0f065e74(&prop->pos, prop->rooms, &sp1a8, sp188); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &sp1a8, sp188); rooms_append(sp9c, sp188, ARRAYCOUNT(sp188)); ground2 = cd_find_ground_at_cyl(&sp1a8, 5, sp188, NULL, NULL); @@ -5540,7 +5540,7 @@ s32 func0f072144(struct defaultobj *obj, struct coord *arg1, f32 arg2, bool arg3 pos.x += arg1->x; pos.z += arg1->z; - func0f065e74(&prop->pos, prop->rooms, &pos, rooms); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &pos, rooms); setup0f09233c(obj, &pos, sp460, rooms); if (obj->type == OBJTYPE_HOVERBIKE) { @@ -5978,7 +5978,7 @@ void platform_displace_props2(struct prop *platform, Mtxf *arg1) prop->pos.z = sp58.m[3][2]; prop_deregister_rooms(prop); - func0f065e74(&platform->pos, platform->rooms, &prop->pos, prop->rooms); + los_find_final_room_exhaustive(&platform->pos, platform->rooms, &prop->pos, prop->rooms); func0f069c70(obj, true, true); } } @@ -6092,7 +6092,7 @@ bool rocket_tick_fbw(struct weaponobj *rocket) } if (cdresult == CDRESULT_NOCOLLISION) { - func0f065e74(&rocketprop->pos, rocketprop->rooms, &newpos, newrooms); + los_find_final_room_exhaustive(&rocketprop->pos, rocketprop->rooms, &newpos, newrooms); rocketprop->pos.x = newpos.x; rocketprop->pos.y = newpos.y; @@ -6192,7 +6192,7 @@ s32 projectile_launch(struct defaultobj *obj, struct projectile *projectile, str if (cdresult == CDRESULT_NOCOLLISION) { RoomNum rooms[8]; - func0f065e74(&prop->pos, prop->rooms, &projectile->nextsteppos, rooms); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &projectile->nextsteppos, rooms); prop->pos.x = projectile->nextsteppos.x; prop->pos.y = projectile->nextsteppos.y; @@ -6207,7 +6207,7 @@ s32 projectile_launch(struct defaultobj *obj, struct projectile *projectile, str if (weapon->weaponnum == WEAPON_ROCKET || weapon->weaponnum == WEAPON_HOMINGROCKET) { weapon->timer240 = 0; - func0f065e74(&prop->pos, prop->rooms, arg2, rooms); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, arg2, rooms); prop->pos.x = arg2->x; prop->pos.y = arg2->y; @@ -6848,7 +6848,7 @@ s32 projectile_tick(struct defaultobj *obj, bool *embedded) sp5dc.z += projectile->speed.z * g_Vars.lvupdate60freal; mtx3_to_mtx4(obj->realrot, &sp30c); - func0f096698(&sp30c, &projectile->mtx, g_Vars.lvupdate240); + projectile_update_matrix(&sp30c, &projectile->mtx, g_Vars.lvupdate240); mtx4_to_mtx3(&sp30c, obj->realrot); sp5c8.x = prop->pos.x; @@ -7154,7 +7154,7 @@ s32 projectile_tick(struct defaultobj *obj, bool *embedded) if (cdresult != CDRESULT_COLLISION) { RoomNum rooms[8]; - func0f065e74(&prop->pos, prop->rooms, &sp5dc, rooms); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &sp5dc, rooms); prop->pos.x = sp5dc.x; prop->pos.y = sp5dc.y; @@ -7174,7 +7174,7 @@ s32 projectile_tick(struct defaultobj *obj, bool *embedded) sp5dc.z = sp5e8.z; } - func0f065e74(&prop->pos, prop->rooms, &sp5dc, rooms); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &sp5dc, rooms); prop->pos.x = sp5dc.x; prop->pos.y = sp5dc.y; @@ -7303,7 +7303,7 @@ s32 projectile_tick(struct defaultobj *obj, bool *embedded) if ((projectile->flags & PROJECTILEFLAG_00000100) == 0 && (projectile->bounceframe < 0 || projectile->bounceframe < g_Vars.lvframe60 - TICKS(60))) { - mtx_load_random_rotation(&projectile->mtx); + projectile_load_random_rotation(&projectile->mtx); } projectile->bouncecount++; @@ -7829,7 +7829,7 @@ void platform_displace_props(struct prop *platform, s16 *propnums, struct coord prop_deregister_rooms(prop); - func0f065e74(&platform->pos, platform->rooms, &prop->pos, prop->rooms); + los_find_final_room_exhaustive(&platform->pos, platform->rooms, &prop->pos, prop->rooms); func0f069c70(obj, true, true); } } @@ -7848,8 +7848,8 @@ void platform_displace_props(struct prop *platform, s16 *propnums, struct coord prop_deregister_rooms(prop); - func0f065e74(&platform->pos, platform->rooms, &prop->pos, prop->rooms); - chr0f0220ac(chr); + los_find_final_room_exhaustive(&platform->pos, platform->rooms, &prop->pos, prop->rooms); + chr_detect_rooms(chr); model_set_root_position(chr->model, &prop->pos); nodetype = chr->model->definition->rootnode->type; @@ -7904,7 +7904,7 @@ void platform_displace_props(struct prop *platform, s16 *propnums, struct coord sp78.y = prop->pos.y + ydist; sp78.z = prop->pos.z; - func0f065e74(&prop->pos, prop->rooms, &sp78, sp68); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &sp78, sp68); prop->pos.x = sp78.x; prop->pos.y = sp78.y; @@ -8078,7 +8078,7 @@ void lift_tick(struct prop *prop) } } - func0f065e74(&prop->pos, prop->rooms, &newpos, newrooms); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &newpos, newrooms); prop->pos.x = newpos.x; prop->pos.y = newpos.y; @@ -9273,7 +9273,7 @@ void autogun_tick_shoot(struct prop *autogunprop) } if (missed) { - portal00018148(&gunpos, &hitpos, gunrooms, hitrooms, NULL, 0); + portal_find_rooms(&gunpos, &hitpos, gunrooms, hitrooms, NULL, 0); if (chr_is_using_paintball(ownerchr)) { sparks_create(hitrooms[0], NULL, &hitpos, 0, 0, SPARKTYPE_PAINT); @@ -9934,7 +9934,7 @@ void chopper_increment_movement(struct prop *prop, f32 goalroty, f32 goalrotx, s newpos.y = prop->pos.y + chopper->vy * g_Vars.lvupdate60freal; newpos.z = prop->pos.z + chopper->vz * g_Vars.lvupdate60freal; - func0f065e74(&prop->pos, prop->rooms, &newpos, newrooms); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &newpos, newrooms); prop->pos.x = newpos.x; prop->pos.y = newpos.y; @@ -10094,7 +10094,7 @@ void chopper_tick_fall(struct prop *chopperprop) newpos.y = ground + 20; newpos.z = sp64.z; - func0f065e74(&chopperprop->pos, chopperprop->rooms, &newpos, newrooms); + los_find_final_room_exhaustive(&chopperprop->pos, chopperprop->rooms, &newpos, newrooms); chopperprop->pos.x = newpos.x; chopperprop->pos.y = newpos.y; @@ -10457,7 +10457,7 @@ void hovercar_tick(struct prop *prop) hovercar->speedtime60 = 1; } - func0f065e74(&prop->pos, prop->rooms, &sp1c0, sp1b0); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &sp1c0, sp1b0); prop->pos.x = sp1c0.x; prop->pos.y = sp1c0.y; @@ -10648,7 +10648,7 @@ void hovercar_tick(struct prop *prop) sp150.y = prop->pos.y + sp194.f[1] * (hovercar->speed * g_Vars.lvupdate60freal); sp150.z = prop->pos.z + sp194.f[2] * (hovercar->speed * g_Vars.lvupdate60freal); - func0f065e74(&prop->pos, prop->rooms, &sp150, sp140); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &sp150, sp140); if (ishoverbot) { sp150.y = cd_find_ground_at_cyl(&sp150, 5, sp140, NULL, NULL) + 35; @@ -11067,10 +11067,10 @@ s32 obj_tick_player(struct prop *prop) sp400.y = sp412.m[3][1]; sp400.z = sp412.m[3][2]; - if (obj->flags3 & OBJFLAG3_00000010) { - func0f065e98(&prop->pos, prop->rooms, &sp400, sp384); + if (obj->flags3 & OBJFLAG3_FINDROOMSFAST) { + los_find_final_room_fast(&prop->pos, prop->rooms, &sp400, sp384); } else { - func0f065e74(&prop->pos, prop->rooms, &sp400, sp384); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &sp400, sp384); } prop->pos.x = sp400.x; @@ -11162,10 +11162,10 @@ s32 obj_tick_player(struct prop *prop) sp236.y = prop->pos.y; sp236.z = (f32)sp116.z + prop->pos.z; - if (obj->flags3 & OBJFLAG3_00000010) { - func0f065e98(&prop->pos, prop->rooms, &sp236, sp220); + if (obj->flags3 & OBJFLAG3_FINDROOMSFAST) { + los_find_final_room_fast(&prop->pos, prop->rooms, &sp236, sp220); } else { - func0f065e74(&prop->pos, prop->rooms, &sp236, sp220); + los_find_final_room_exhaustive(&prop->pos, prop->rooms, &sp236, sp220); } if (model_get_cur_anim_frame(model) >= model_get_num_anim_frames(model) - 1) { @@ -14459,7 +14459,7 @@ bool obj_drop(struct prop *prop, bool lazy) spe4.z += root->pos.z; mtx4_set_translation(&spe4, &spf0); - func0f065e74(&root->pos, root->rooms, &spe4, rooms); + los_find_final_room_exhaustive(&root->pos, root->rooms, &spe4, rooms); } else { if (projectile->droptype == DROPTYPE_SURRENDER && parent->type == PROPTYPE_CHR) { struct chrdata *chr = parent->chr; @@ -14531,7 +14531,7 @@ bool obj_drop(struct prop *prop, bool lazy) mtx4_load_rotation(&rot, (Mtxf *)&projectile->mtx); } else { // DROPTYPE_OWNERREAP - func0f0964b4(&projectile->speed, (Mtxf *)&projectile->mtx); + projectile_load_random_speed_rotation(&projectile->speed, (Mtxf *)&projectile->mtx); } if (!lazy && (prop->flags & PROPFLAG_ONTHISSCREENTHISTICK)) { @@ -14725,7 +14725,7 @@ void obj_check_destroyed(struct defaultobj *obj, struct coord *pos, s32 playernu obj->damage = 0; obj->hidden2 |= OBJH2FLAG_DESTROYED; - func0f065e74(&rootprop->pos, rootprop->rooms, pos, rooms); + los_find_final_room_exhaustive(&rootprop->pos, rootprop->rooms, pos, rooms); explosion_create_complex(prop, pos, rooms, exptype, playernum); if (obj->flags2 & OBJFLAG2_REMOVEWHENDESTROYED) { @@ -14785,7 +14785,7 @@ void obj_check_destroyed(struct defaultobj *obj, struct coord *pos, s32 playernu obj_deform(obj, (shotstaken >> 2) + 1); } - func0f065e74(&rootprop->pos, rootprop->rooms, pos, rooms); + los_find_final_room_exhaustive(&rootprop->pos, rootprop->rooms, pos, rooms); if (exptype != EXPLOSIONTYPE_NONE) { explosion_create_simple(prop, pos, rooms, EXPLOSIONTYPE_6, playernum); @@ -19354,7 +19354,7 @@ struct prop *door_init(struct doorobj *door, struct coord *pos, Mtxf *mtx, RoomN mtx4_to_mtx3(&sp38, door->mtx98); } - func0f065e74(pos, rooms, centre, sp28); + los_find_final_room_exhaustive(pos, rooms, centre, sp28); prop->type = PROPTYPE_DOOR; prop->door = door; @@ -21327,7 +21327,7 @@ void projectile_create(struct prop *fromprop, struct fireslotthing *arg1, struct bgun_play_prop_hit_sound(&gset, obstacle, -1); } - func0f065e74(pos, fromprop->rooms, &endpos, sp1c8); + los_find_final_room_exhaustive(pos, fromprop->rooms, &endpos, sp1c8); sparks_create(sp1c8[0], obstacle, &endpos, NULL, NULL, SPARKTYPE_DEFAULT); obj_take_gunfire(obstacle->obj, gset_get_damage(&gset), &endpos, weaponnum, -1); @@ -21340,7 +21340,7 @@ void projectile_create(struct prop *fromprop, struct fireslotthing *arg1, struct } } } else { - func0f065e74(pos, fromprop->rooms, &endpos, sp1c8); + los_find_final_room_exhaustive(pos, fromprop->rooms, &endpos, sp1c8); if (weaponnum != WEAPON_CHOPPERGUN) { bgun_play_bg_hit_sound(&gset, &endpos, -1, sp1c8); diff --git a/src/game/splat.c b/src/game/splat.c index 94d6b86cd..9dcf8edbd 100644 --- a/src/game/splat.c +++ b/src/game/splat.c @@ -274,8 +274,8 @@ bool splat0f149274(f32 arg0, struct prop *chrprop, struct shotdata *shotdata, f3 endpos.f[i] = stackshotdata.gunpos3d.f[i] + stackshotdata.gundir3d.f[i] * g_SplatMaxDistance; } - portal00018148(&chrprop->pos, &stackshotdata.gunpos3d, chrprop->rooms, gunrooms, NULL, 0); - portal00018148(&stackshotdata.gunpos3d, &endpos, gunrooms, endrooms, rooms, ARRAYCOUNT(rooms) - 1); + portal_find_rooms(&chrprop->pos, &stackshotdata.gunpos3d, chrprop->rooms, gunrooms, NULL, 0); + portal_find_rooms(&stackshotdata.gunpos3d, &endpos, gunrooms, endrooms, rooms, ARRAYCOUNT(rooms) - 1); for (i = 0; rooms[i] != -1; i++) { if (bg_test_hit_in_room(&stackshotdata.gunpos3d, &endpos, rooms[i], &hitthing) diff --git a/src/include/constants.h b/src/include/constants.h index 8a0c0bf24..0648b08fa 100644 --- a/src/include/constants.h +++ b/src/include/constants.h @@ -571,7 +571,7 @@ #define CHRHFLAG_TRIGGER_BUDDY_WARP 0x00004000 #define CHRHFLAG_PERFECTACCURACY 0x00008000 // Duel opponents #define CHRHFLAG_DISGUISE_UNCOVERED 0x00010000 -#define CHRHFLAG_00020000 0x00020000 +#define CHRHFLAG_FINDROOMSFAST 0x00020000 // Can use if chr never goes out of bounds or in overlapping rooms #define CHRHFLAG_00040000 0x00040000 // Not used #define CHRHFLAG_DISGUISED 0x00080000 #define CHRHFLAG_WARPONSCREEN 0x00100000 // Allow chr warp to occur onscreen @@ -3093,7 +3093,7 @@ #define OBJFLAG3_GRABBABLE 0x00000002 #define OBJFLAG3_DOOR_STICKY 0x00000004 // eg. Skedar Ruins #define OBJFLAG3_00000008 0x00000008 // Not used in scripts -#define OBJFLAG3_00000010 0x00000010 // Used heaps +#define OBJFLAG3_FINDROOMSFAST 0x00000010 // Can use if obj never goes out of bounds or in overlapping rooms #define OBJFLAG3_AUTOCUTSCENESOUNDS 0x00000020 // For doors and objs - play default open/close noises #define OBJFLAG3_RTRACKED_YELLOW 0x00000040 #define OBJFLAG3_CANHARDFREE 0x00000080 // Can free prop while on screen (MP weapons only) diff --git a/src/include/game/chr.h b/src/include/game/chr.h index 0f4e94876..bcbc466f6 100644 --- a/src/include/game/chr.h +++ b/src/include/game/chr.h @@ -9,9 +9,9 @@ void chr_deregister(s32 chrnum); void chr_calculate_push_pos(struct chrdata *chr, struct coord *pos, RoomNum *rooms, bool arg3); #if VERSION >= VERSION_NTSC_1_0 -bool chr0f01f264(struct chrdata *chr, struct coord *pos, RoomNum *rooms, f32 arg3, bool arg4); +bool chr_ascend(struct chrdata *chr, struct coord *pos, RoomNum *rooms, f32 amount, bool writerooms); #else -bool chr0f01f264(struct chrdata *chr, struct coord *pos, RoomNum *rooms, f32 arg3); +bool chr_ascend(struct chrdata *chr, struct coord *pos, RoomNum *rooms, f32 amount); #endif bool chr0f01f378(struct model *model, struct coord *arg1, struct coord *arg2, f32 *mangroundptr); @@ -23,7 +23,7 @@ void chr_update_aim_properties(struct chrdata *chr); void chr_flinch_body(struct chrdata *chr); void chr_flinch_head(struct chrdata *chr, f32 arg1); f32 chr_get_flinch_amount(struct chrdata *chr); -void chr0f021fa8(struct chrdata *chr, struct coord *pos, RoomNum *rooms); +void chr_find_entered_rooms_at_pos(struct chrdata *chr, struct coord *pos, RoomNum *rooms); void chr0f0220ec(struct chrdata *chr, s32 lvupdate240, bool arg2); void chr0f022214(struct chrdata *chr, struct prop *child, bool fulltick); void chr_update_cloak(struct chrdata *chr); @@ -82,8 +82,8 @@ f32 chr_get_armor(struct chrdata *chr); void chr_init(struct prop *prop, u8 *ailist); struct prop *chr_allocate(struct model *model, struct coord *pos, RoomNum *rooms, f32 faceangle, u8 *ailist); void chr_clear_references(s32 propnum); -void chr0f022084(struct chrdata *chr, RoomNum *room); -void chr0f0220ac(struct chrdata *chr); +void chr_find_entered_rooms(struct chrdata *chr, RoomNum *room); +void chr_detect_rooms(struct chrdata *chr); void chr_cloak(struct chrdata *chr, bool arg1); void chr_uncloak(struct chrdata *chr, bool value); void chr_uncloak_temporarily(struct chrdata *chr); diff --git a/src/include/game/game_096360.h b/src/include/game/game_096360.h index 6abe3efc7..879c27742 100644 --- a/src/include/game/game_096360.h +++ b/src/include/game/game_096360.h @@ -4,9 +4,9 @@ #include "data.h" #include "types.h" -void mtx_load_random_rotation(Mtxf *mtx); -void func0f0964b4(struct coord *arg0, Mtxf *mtx); -void func0f0965e4(f32 *arg0, f32 *arg1, f32 arg2); -void func0f096698(Mtxf *arg0, Mtxf *arg1, s32 count); +void projectile_load_random_rotation(Mtxf *mtx); +void projectile_load_random_speed_rotation(struct coord *speed, Mtxf *mtx); +void projectile_update_fall(f32 *yincrement, f32 *speed, f32 lvupdate60); +void projectile_update_matrix(Mtxf *arg0, Mtxf *arg1, s32 lvupdate240); #endif diff --git a/src/include/game/prop.h b/src/include/game/prop.h index 3d38f5d51..b193092d9 100644 --- a/src/include/game/prop.h +++ b/src/include/game/prop.h @@ -55,11 +55,11 @@ void prop_register_room(struct prop *prop, RoomNum room); void prop_deregister_room(struct prop *prop, RoomNum room); void prop_deregister_rooms(struct prop *prop); void prop_register_rooms(struct prop *prop); -void func0f065d1c(struct coord *pos, RoomNum *rooms, struct coord *newpos, RoomNum *newrooms, RoomNum *morerooms, u32 arg5); -void func0f065dd8(struct coord *pos, RoomNum *rooms, struct coord *newpos, RoomNum *newrooms); -void func0f065dfc(struct coord *pos, RoomNum *rooms, struct coord *newpos, RoomNum *newrooms, RoomNum *morerooms, u32 arg5); -void func0f065e74(struct coord *pos, RoomNum *rooms, struct coord *newpos, RoomNum *newrooms); -void func0f065e98(struct coord *pos, RoomNum *rooms, struct coord *pos2, RoomNum *rooms2); +void los_find_intersecting_rooms_properly(struct coord *frompos, RoomNum *fromrooms, struct coord *topos, RoomNum *finalrooms, RoomNum *intersecting, s32 maxintersecting); +void los_find_final_room_properly(struct coord *frompos, RoomNum *fromrooms, struct coord *topos, RoomNum *finalrooms); +void los_find_intersecting_rooms_exhaustive(struct coord *frompos, RoomNum *fromrooms, struct coord *topos, RoomNum *finalrooms, RoomNum *intersecting, s32 maxintersecting); +void los_find_final_room_exhaustive(struct coord *frompos, RoomNum *fromrooms, struct coord *topos, RoomNum *finalrooms); +void los_find_final_room_fast(struct coord *frompos, RoomNum *fromrooms, struct coord *topos, RoomNum *finalrooms); void room_get_props(RoomNum *room, s16 *propnums, s32 len); void props_defrag_room_props(void); void prop_get_bbox(struct prop *prop, f32 *radius, f32 *ymax, f32 *ymin); diff --git a/src/include/lib/lib_17ce0.h b/src/include/lib/lib_17ce0.h index 68b0f7f93..056f3a314 100644 --- a/src/include/lib/lib_17ce0.h +++ b/src/include/lib/lib_17ce0.h @@ -9,8 +9,7 @@ #define PORTALINTERSECTION_FRONTTOBEHIND 2 void portal_get_avg_vertex_pos(s32 portalnum, struct coord *avg); -void portal00017dc4(RoomNum *rooms, RoomNum roomnum); s32 portal_calculate_intersection(s32 portalnum, struct coord *pos1, struct coord *pos2); -void portal00018148(struct coord *pos, struct coord *pos2, RoomNum *rooms, RoomNum *arg3, RoomNum *arg4, s32 arg5); +void portal_find_rooms(struct coord *frompos, struct coord *topos, RoomNum *fromrooms, RoomNum *finalrooms, RoomNum *intersecting, s32 maxintersecting); #endif diff --git a/src/lib/collision.c b/src/lib/collision.c index 6b09641bb..6343269cd 100644 --- a/src/lib/collision.c +++ b/src/lib/collision.c @@ -3456,7 +3456,7 @@ bool cd_test_cyl_move01(struct coord *pos, RoomNum *rooms, struct coord *targetp RoomNum sp44[21]; RoomNum sp34[8]; - portal00018148(pos, targetpos, rooms, sp34, sp44, 20); + portal_find_rooms(pos, targetpos, rooms, sp34, sp44, 20); return cd_test_a_to_b(pos, targetpos, sp44, types, GEOFLAG_WALL, CHECKVERTICAL_NO, arg4, ymax, ymin); } @@ -3467,7 +3467,7 @@ s32 cd_test_cyl_move02(struct coord *pos, RoomNum *rooms, struct coord *coord2, RoomNum sp44[20]; RoomNum sp34[8]; - func0f065d1c(pos, rooms, coord2, sp34, sp44, 20); + los_find_intersecting_rooms_properly(pos, rooms, coord2, sp34, sp44, 20); if (array_intersects(sp34, rooms2)) { result = cd_test_a_to_b(pos, coord2, sp44, types, GEOFLAG_WALL, CHECKVERTICAL_NO, arg5, ymax, ymin); @@ -3483,7 +3483,7 @@ s32 cd_exam_cyl_move03(struct coord *pos, RoomNum *rooms, struct coord *arg2, u3 RoomNum sp44[21]; RoomNum sp34[8]; - portal00018148(pos, arg2, rooms, sp34, sp44, 20); + portal_find_rooms(pos, arg2, rooms, sp34, sp44, 20); return cd_exam_a_to_b(pos, arg2, sp44, types, GEOFLAG_WALL, CHECKVERTICAL_NO, arg4, ymax, ymin); } @@ -3492,7 +3492,7 @@ s32 cd_test_cyl_move04(struct coord *arg0, RoomNum *arg1, struct coord *arg2, Ro { RoomNum rooms[21]; - portal00018148(arg0, arg2, arg1, arg3, rooms, 20); + portal_find_rooms(arg0, arg2, arg1, arg3, rooms, 20); return cd_test_a_to_b(arg0, arg2, rooms, types, GEOFLAG_WALL, CHECKVERTICAL_NO, arg5, ymax, ymin); } @@ -3503,7 +3503,7 @@ s32 cd_exam_cyl_move05(struct coord *pos, RoomNum *rooms, struct coord *pos2, Ro RoomNum sp34[8]; s32 result; - func0f065d1c(pos, rooms, pos2, sp34, sp44, 20); + los_find_intersecting_rooms_properly(pos, rooms, pos2, sp34, sp44, 20); result = cd_exam_a_to_b(pos, pos2, sp44, types, GEOFLAG_WALL, CHECKVERTICAL_NO, arg5, ymax, ymin); @@ -3522,7 +3522,7 @@ s32 cd_exam_cyl_move06(struct coord *arg0, RoomNum *arg1, struct coord *arg2, Ro struct coord sp40; s32 result; - func0f065d1c(arg0, arg1, arg2, sp4c, sp5c, 20); + los_find_intersecting_rooms_properly(arg0, arg1, arg2, sp4c, sp5c, 20); result = cd_exam_a_to_b(arg0, arg2, sp5c, types, GEOFLAG_WALL, CHECKVERTICAL_NO, arg6, ymax, ymin); @@ -3544,7 +3544,7 @@ s32 cd_exam_cyl_move07(struct coord *arg0, RoomNum *arg1, struct coord *arg2, Ro { RoomNum rooms[21]; - portal00018148(arg0, arg2, arg1, arg3, rooms, 20); + portal_find_rooms(arg0, arg2, arg1, arg3, rooms, 20); return cd_exam_a_to_b(arg0, arg2, rooms, types, GEOFLAG_WALL, CHECKVERTICAL_NO, arg5, ymax, ymin); } @@ -3555,7 +3555,7 @@ s32 cd_exam_cyl_move08(struct coord *arg0, RoomNum *arg1, struct coord *arg2, Ro struct coord sp40; s32 result; - portal00018148(arg0, arg2, arg1, arg3, rooms, 20); + portal_find_rooms(arg0, arg2, arg1, arg3, rooms, 20); result = cd_exam_a_to_b(arg0, arg2, rooms, types, GEOFLAG_WALL, CHECKVERTICAL_NO, arg6, ymax, ymin); @@ -3575,7 +3575,7 @@ bool cd_test_los03(struct coord *viewpos, RoomNum *rooms, struct coord *targetpo RoomNum sp44[21]; RoomNum sp34[8]; - portal00018148(viewpos, targetpos, rooms, sp34, sp44, 20); + portal_find_rooms(viewpos, targetpos, rooms, sp34, sp44, 20); return cd_test_a_to_b(viewpos, targetpos, sp44, types, geoflags, CHECKVERTICAL_YES, 1, 0, 0); } @@ -3591,7 +3591,7 @@ bool cd_test_los05(struct coord *coord, RoomNum *rooms, struct coord *coord2, Ro RoomNum sp44[20]; RoomNum sp34[8]; - func0f065d1c(coord, rooms, coord2, sp34, sp44, 20); + los_find_intersecting_rooms_properly(coord, rooms, coord2, sp34, sp44, 20); if (array_intersects(sp34, rooms2)) { result = cd_test_a_to_b(coord, coord2, sp44, types, geoflags, CHECKVERTICAL_YES, 1, 0, 0); @@ -3612,7 +3612,7 @@ bool cd_test_los07(struct coord *pos, RoomNum *rooms, struct coord *pos2, RoomNu bool result; RoomNum sp34[20]; - func0f065d1c(pos, rooms, pos2, rooms3, sp34, 20); + los_find_intersecting_rooms_properly(pos, rooms, pos2, rooms3, sp34, 20); if (array_intersects(rooms3, rooms2)) { result = cd_test_a_to_b(pos, pos2, sp34, types, geoflags, CHECKVERTICAL_YES, 1, 0, 0); @@ -3628,7 +3628,7 @@ s32 cd_exam_los08(struct coord *pos, RoomNum *rooms, struct coord *pos2, u32 typ RoomNum sp44[21]; RoomNum sp34[8]; - portal00018148(pos, pos2, rooms, sp34, sp44, 20); + portal_find_rooms(pos, pos2, rooms, sp34, sp44, 20); return cd_exam_a_to_b(pos, pos2, sp44, types, geoflags, CHECKVERTICAL_YES, 1, 0, 0); } @@ -3642,7 +3642,7 @@ s32 cd_test_los10(struct coord *arg0, RoomNum *arg1, struct coord *arg2, RoomNum { RoomNum rooms[21]; - portal00018148(arg0, arg2, arg1, arg3, rooms, 20); + portal_find_rooms(arg0, arg2, arg1, arg3, rooms, 20); return cd_test_a_to_b(arg0, arg2, rooms, types, geoflags, CHECKVERTICAL_YES, 1, 0, 0); } diff --git a/src/lib/lib_17ce0.c b/src/lib/lib_17ce0.c index 19f5d088f..05299a648 100644 --- a/src/lib/lib_17ce0.c +++ b/src/lib/lib_17ce0.c @@ -59,7 +59,7 @@ void portal00018e74nb(s32 portalnum) * The list is assumed to have 16 slots, with the last being reserved for the * -1 terminator. */ -void portal00017dc4(RoomNum *rooms, RoomNum roomnum) +void portal_append_room(RoomNum *rooms, RoomNum roomnum) { s32 i; @@ -169,22 +169,35 @@ s32 portal_calculate_intersection(s32 portalnum, struct coord *pos1, struct coor : PORTALINTERSECTION_FRONTTOBEHIND; } -void portal00018148(struct coord *pos1, struct coord *pos2, RoomNum *rooms1, RoomNum *rooms2, RoomNum *rooms3, s32 arg5) +/** + * Given frompos, fromrooms and a topos, + * use portals to figure out the new rooms list. + * + * The final rooms are written to results1, + * which should only ever have 0 or 1 room in it. + * + * The caller may optionally pass results2 and its length, + * which will be populated with all traversed rooms. + * + * This is overengineered. It allows a room to have multiple + * *overlapping* portals. This is dumb and never happens. + */ +void portal_find_rooms(struct coord *frompos, struct coord *topos, RoomNum *fromrooms, RoomNum *finalrooms, RoomNum *intersecting, s32 maxintersecting) { s32 i; s32 j; s32 roomnum; s32 numportals; s16 *portalnums; - RoomNum rooms9c[16]; - RoomNum rooms7c[16]; - RoomNum rooms5c[16]; + RoomNum srcrooms[16]; + RoomNum foundrooms[16]; + RoomNum allrooms[16]; for (i = 0; i < 8; i++) { - rooms9c[i] = rooms1[i]; - rooms5c[i] = rooms1[i]; + srcrooms[i] = fromrooms[i]; + allrooms[i] = fromrooms[i]; - if (rooms1[i] == -1) { + if (fromrooms[i] == -1) { break; } } @@ -199,35 +212,38 @@ void portal00018148(struct coord *pos1, struct coord *pos2, RoomNum *rooms1, Roo var8005ef20 = 0; } + // Iterate outwards do { - rooms7c[0] = -1; + foundrooms[0] = -1; - for (j = 0; (roomnum = rooms9c[j]) != -1 && j < 16; j++) { + // Iterate source rooms + for (j = 0; (roomnum = srcrooms[j]) != -1 && j < 16; j++) { numportals = g_Rooms[roomnum].numportals; portalnums = &g_RoomPortals[g_Rooms[roomnum].roomportallistoffset]; + // Iterate this source room's portals for (i = 0; i < numportals; i++) { s32 portalnum = *portalnums; u8 *s1 = var8009a4e0[portalnum]; if (s1[0] != var8005ef20) { s1[0] = var8005ef20; - s1[1] = portal_calculate_intersection(portalnum, pos1, pos2); + s1[1] = portal_calculate_intersection(portalnum, frompos, topos); } if (s1[1] != PORTALINTERSECTION_NONE) { if (s1[1] == PORTALINTERSECTION_BEHINDTOFRONT) { if (roomnum == g_BgPortals[portalnum].roomnum1) { - portal00017dc4(rooms7c, g_BgPortals[portalnum].roomnum2); - portal00017dc4(rooms5c, g_BgPortals[portalnum].roomnum2); + portal_append_room(foundrooms, g_BgPortals[portalnum].roomnum2); + portal_append_room(allrooms, g_BgPortals[portalnum].roomnum2); s1[1] = PORTALINTERSECTION_NONE; } } if (s1[1] == PORTALINTERSECTION_FRONTTOBEHIND) { if (roomnum == g_BgPortals[portalnum].roomnum2) { - portal00017dc4(rooms7c, g_BgPortals[portalnum].roomnum1); - portal00017dc4(rooms5c, g_BgPortals[portalnum].roomnum1); + portal_append_room(foundrooms, g_BgPortals[portalnum].roomnum1); + portal_append_room(allrooms, g_BgPortals[portalnum].roomnum1); s1[1] = PORTALINTERSECTION_NONE; } } @@ -237,34 +253,36 @@ void portal00018148(struct coord *pos1, struct coord *pos2, RoomNum *rooms1, Roo } } - if (rooms7c[0] == -1) { + if (foundrooms[0] == -1) { break; } + // Replace srcrooms with the newly found rooms so the newly + // found rooms are used as the source on the next iteration. for (i = 0; i < 16; i++) { - rooms9c[i] = rooms7c[i]; + srcrooms[i] = foundrooms[i]; - if (rooms7c[i] == -1) { + if (foundrooms[i] == -1) { break; } } - } while (rooms7c[0] != -1); + } while (foundrooms[0] != -1); - for (i = 0; i < 7 && rooms9c[i] != -1; i++) { - rooms2[i] = rooms9c[i]; + for (i = 0; i < 7 && srcrooms[i] != -1; i++) { + finalrooms[i] = srcrooms[i]; } - rooms2[i] = -1; + finalrooms[i] = -1; - if (rooms3 != NULL) { - for (i = 0; i < arg5; i++) { - rooms3[i] = rooms5c[i]; + if (intersecting != NULL) { + for (i = 0; i < maxintersecting; i++) { + intersecting[i] = allrooms[i]; - if (rooms5c[i] == -1) { + if (allrooms[i] == -1) { break; } } - rooms3[i] = -1; + intersecting[i] = -1; } } diff --git a/src/setups/setupame.c b/src/setups/setupame.c index 7f49469ad..34418440f 100644 --- a/src/setups/setupame.c +++ b/src/setups/setupame.c @@ -2543,22 +2543,22 @@ u8 func041b_intro_shot01_pitchup[] = { set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) enable_object(OBJ_JUMPSHIP2) - set_object_flag3(OBJ_JUMPSHIP2, OBJFLAG3_00000010) + set_object_flag3(OBJ_JUMPSHIP2, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_DROPSHIP_01, OBJ_JUMPSHIP2, 0x04, 0xffff) enable_object(OBJ_POLICECAR) - set_object_flag3(OBJ_POLICECAR, OBJFLAG3_00000010) + set_object_flag3(OBJ_POLICECAR, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_01, OBJ_POLICECAR, 0x04, 0xffff) enable_object(OBJ_HOVERCOP3) - set_object_flag3(OBJ_HOVERCOP3, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERCOP3, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_02, OBJ_HOVERCOP3, 0x04, 0xffff) enable_object(OBJ_HOVERCAR3) - set_object_flag3(OBJ_HOVERCAR3, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERCAR3, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_03, OBJ_HOVERCAR3, 0x04, 0xffff) enable_object(OBJ_HOVERMOTO3) - set_object_flag3(OBJ_HOVERMOTO3, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERMOTO3, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_04, OBJ_HOVERMOTO3, 0x04, 0xffff) enable_object(OBJ_HOVERCAB3) - set_object_flag3(OBJ_HOVERCAB3, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERCAB3, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_05, OBJ_HOVERCAB3, 0x04, 0xffff) fade_to_color(0x000000ff, 0) fade_to_color(0x00000000, 90) @@ -2590,25 +2590,25 @@ u8 func041a_intro_shot02_flying[] = { set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) enable_object(OBJ_JUMPSHIP2) - set_object_flag3(OBJ_JUMPSHIP2, OBJFLAG3_00000010) + set_object_flag3(OBJ_JUMPSHIP2, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_DROPSHIP_02, OBJ_JUMPSHIP2, 0x04, 0xffff) enable_object(OBJ_HOVERTAXI2) - set_object_flag3(OBJ_HOVERTAXI2, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERTAXI2, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_06, OBJ_HOVERTAXI2, 0x04, 0xffff) enable_object(OBJ_HOVERCOP3) - set_object_flag3(OBJ_HOVERCOP3, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERCOP3, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_07, OBJ_HOVERCOP3, 0x04, 0xffff) enable_object(OBJ_HOVERCAR3) - set_object_flag3(OBJ_HOVERCAR3, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERCAR3, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_08, OBJ_HOVERCAR3, 0x04, 0xffff) enable_object(OBJ_HOVERMOTO3) - set_object_flag3(OBJ_HOVERMOTO3, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERMOTO3, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_09, OBJ_HOVERMOTO3, 0x04, 0xffff) enable_object(OBJ_HOVERCAB3) - set_object_flag3(OBJ_HOVERCAB3, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERCAB3, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_10, OBJ_HOVERCAB3, 0x04, 0xffff) enable_object(OBJ_HOVERTRUCK3) - set_object_flag3(OBJ_HOVERTRUCK3, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERTRUCK3, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_11, OBJ_HOVERTRUCK3, 0x04, 0xffff) wait_for_camera_finished @@ -2636,16 +2636,16 @@ u8 func0419_intro_shot03_redthing[] = { set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) enable_object(OBJ_JUMPSHIP2) - set_object_flag3(OBJ_JUMPSHIP2, OBJFLAG3_00000010) + set_object_flag3(OBJ_JUMPSHIP2, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_DROPSHIP_03, OBJ_JUMPSHIP2, 0x04, 0xffff) enable_object(OBJ_HOVERTAXI1) - set_object_flag3(OBJ_HOVERTAXI1, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERTAXI1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_12, OBJ_HOVERTAXI1, 0x04, 0xffff) enable_object(OBJ_HOVERCOP3) - set_object_flag3(OBJ_HOVERCOP3, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERCOP3, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_13, OBJ_HOVERCOP3, 0x04, 0xffff) enable_object(OBJ_HOVERCAR3) - set_object_flag3(OBJ_HOVERCAR3, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERCAR3, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_14, OBJ_HOVERCAR3, 0x04, 0xffff) wait_for_camera_finished @@ -2670,25 +2670,25 @@ u8 func041c_intro_shot04_topdown[] = { set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) enable_object(OBJ_JUMPSHIP2) - set_object_flag3(OBJ_JUMPSHIP2, OBJFLAG3_00000010) + set_object_flag3(OBJ_JUMPSHIP2, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_DROPSHIP_04, OBJ_JUMPSHIP2, 0x04, 0xffff) enable_object(OBJ_HOVERTAXI1) - set_object_flag3(OBJ_HOVERTAXI1, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERTAXI1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_15, OBJ_HOVERTAXI1, 0x04, 0xffff) // Invalid object enable_object(0x1d) - set_object_flag3(0x1d, OBJFLAG3_00000010) + set_object_flag3(0x1d, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_16, 0x1d, 0x04, 0xffff) enable_object(OBJ_HOVERCOP3) - set_object_flag3(OBJ_HOVERCOP3, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERCOP3, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_17, OBJ_HOVERCOP3, 0x04, 0xffff) enable_object(OBJ_HOVERCAR3) - set_object_flag3(OBJ_HOVERCAR3, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERCAR3, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_18, OBJ_HOVERCAR3, 0x04, 0xffff) enable_object(OBJ_HOVERMOTO3) - set_object_flag3(OBJ_HOVERMOTO3, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERMOTO3, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_19, OBJ_HOVERMOTO3, 0x04, 0xffff) wait_for_camera_finished @@ -2718,13 +2718,13 @@ u8 func041d_intro_shot05_onboard[] = { set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) enable_object(OBJ_JUMPSHIP2) - set_object_flag3(OBJ_JUMPSHIP2, OBJFLAG3_00000010) + set_object_flag3(OBJ_JUMPSHIP2, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_DROPSHIP_05, OBJ_JUMPSHIP2, 0x01, 0xffff) enable_object(OBJ_HOVERTAXI1) - set_object_flag3(OBJ_HOVERTAXI1, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERTAXI1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_20, OBJ_HOVERTAXI1, 0x04, 0xffff) enable_object(0x1d) - set_object_flag3(0x1d, OBJFLAG3_00000010) + set_object_flag3(0x1d, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_VEHICLE_21, 0x1d, 0x04, 0xffff) wait_for_camera_finished @@ -2872,7 +2872,7 @@ u8 func0423_intro_shot09_ascend[] = { set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) enable_object(OBJ_JUMPSHIP1) - set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_00000010) + set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_DROPSHIP_06, OBJ_JUMPSHIP1, 0x04, 0xffff) set_tinted_glass_enabled(TRUE) @@ -2896,14 +2896,14 @@ u8 func0424_intro_shot07_towerint[] = { set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) enable_object(OBJ_JUMPSHIP1) - set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_00000010) + set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_DROPSHIP_07, OBJ_JUMPSHIP1, 0x04, 0xffff) set_chr_chrflag(CHR_CASS, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_SECRETARY, CHRCFLAG_UNPLAYABLE) #if VERSION >= VERSION_NTSC_1_0 unset_chr_chrflag(CHR_SECRETARY, CHRCFLAG_HIDDEN) #endif - set_chr_hiddenflag(CHR_SECRETARY, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_SECRETARY, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_AME_INTRO_SEC, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_SECRETARY, 4) wait_for_camera_finished @@ -2927,7 +2927,7 @@ u8 func0425_intro_shot08_rooftop[] = { set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) enable_object(OBJ_JUMPSHIP1) - set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_00000010) + set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_DROPSHIP_08, OBJ_JUMPSHIP1, 0x04, 0xffff) object_do_animation(ANIM_CUT_AME_INTRO_BANNER1_01, OBJ_BANNER1, 0x04, 0xffff) object_do_animation(ANIM_CUT_AME_INTRO_BANNER2_01, OBJ_BANNER2, 0x04, 0xffff) @@ -2953,13 +2953,13 @@ u8 func0426_intro_shot10_helipad[] = { set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) enable_object(OBJ_JUMPSHIP1) - set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_00000010) + set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_DROPSHIP_09, OBJ_JUMPSHIP1, 0x04, 0xffff) enable_object(OBJ_BANNER1) - set_object_flag3(OBJ_BANNER1, OBJFLAG3_00000010) + set_object_flag3(OBJ_BANNER1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_BANNER1_02, OBJ_BANNER1, 0x04, 0xffff) enable_object(OBJ_BANNER2) - set_object_flag3(OBJ_BANNER1, OBJFLAG3_00000010) + set_object_flag3(OBJ_BANNER1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_BANNER2_02, OBJ_BANNER2, 0x04, 0xffff) wait_for_camera_finished @@ -2983,16 +2983,16 @@ u8 func0427_intro_shot12_rope[] = { set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) enable_object(OBJ_JUMPSHIP1) - set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_00000010) + set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_DROPSHIP_10, OBJ_JUMPSHIP1, 0x04, 0xffff) enable_object(OBJ_ROPE) - set_object_flag3(OBJ_ROPE, OBJFLAG3_00000010) + set_object_flag3(OBJ_ROPE, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_ROPE_01, OBJ_ROPE, 0x04, 0xffff) enable_object(OBJ_BANNER1) - set_object_flag3(OBJ_BANNER1, OBJFLAG3_00000010) + set_object_flag3(OBJ_BANNER1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_BANNER1_03, OBJ_BANNER1, 0x04, 0xffff) enable_object(OBJ_BANNER2) - set_object_flag3(OBJ_BANNER1, OBJFLAG3_00000010) + set_object_flag3(OBJ_BANNER1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_BANNER2_03, OBJ_BANNER2, 0x04, 0xffff) wait_for_camera_finished @@ -3017,7 +3017,7 @@ u8 func0428_intro_shot06_towerext[] = { set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) enable_object(OBJ_JUMPSHIP1) - set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_00000010) + set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_DROPSHIP_11, OBJ_JUMPSHIP1, 0x04, 0xffff) set_object_flag2(OBJ_HOVERCOP1, OBJFLAG2_INVISIBLE) set_object_flag2(OBJ_HOVERCOP2, OBJFLAG2_INVISIBLE) @@ -3059,7 +3059,7 @@ u8 func0429_intro_shot11_door[] = { set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) enable_object(OBJ_JUMPSHIP1) - set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_00000010) + set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_DROPSHIP_12, OBJ_JUMPSHIP1, 0x04, 0xffff) set_tinted_glass_enabled(TRUE) @@ -3082,14 +3082,14 @@ u8 func042a_intro_shot13_jojump[] = { set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) enable_object(OBJ_JUMPSHIP1) - set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_00000010) + set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_DROPSHIP_13, OBJ_JUMPSHIP1, 0x04, 0xffff) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_AME_INTRO_JO_09, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_hudpiece_visible(CHR_BOND, TRUE) enable_object(OBJ_ROPE) - set_object_flag3(OBJ_ROPE, OBJFLAG3_00000010) + set_object_flag3(OBJ_ROPE, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_ROPE_02, OBJ_ROPE, 0x04, 0xffff) wait_for_camera_finished @@ -3110,20 +3110,20 @@ u8 func042b_intro_shot14_jodescend[] = { set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) enable_object(OBJ_JUMPSHIP1) - set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_00000010) + set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_DROPSHIP_14, OBJ_JUMPSHIP1, 0x04, 0xffff) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_AME_INTRO_JO_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_hudpiece_visible(CHR_BOND, TRUE) enable_object(OBJ_ROPE) - set_object_flag3(OBJ_ROPE, OBJFLAG3_00000010) + set_object_flag3(OBJ_ROPE, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_ROPE_03, OBJ_ROPE, 0x04, 0xffff) enable_object(OBJ_BANNER1) - set_object_flag3(OBJ_BANNER1, OBJFLAG3_00000010) + set_object_flag3(OBJ_BANNER1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_BANNER1_04, OBJ_BANNER1, 0x04, 0xffff) enable_object(OBJ_BANNER2) - set_object_flag3(OBJ_BANNER1, OBJFLAG3_00000010) + set_object_flag3(OBJ_BANNER1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_BANNER2_04, OBJ_BANNER2, 0x04, 0xffff) wait_for_camera_finished @@ -3152,7 +3152,7 @@ u8 func042d_intro_shot15_joland[] = { set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_AME_INTRO_JO_03, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_hudpiece_visible(CHR_BOND, FALSE) @@ -3162,16 +3162,16 @@ u8 func042d_intro_shot15_joland[] = { label(0x36) enable_object(OBJ_BANNER1) enable_object(OBJ_BANNER2) - set_object_flag3(OBJ_BANNER1, OBJFLAG3_00000010) + set_object_flag3(OBJ_BANNER1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_BANNER1_05, OBJ_BANNER1, 0x08, 0xffff) // @bug: Copy/paste error - should be banner 2 - set_object_flag3(OBJ_BANNER1, OBJFLAG3_00000010) + set_object_flag3(OBJ_BANNER1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AME_INTRO_BANNER2_05, OBJ_BANNER2, 0x08, 0xffff) unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_AME_INTRO_JO_03, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) set_chr_hudpiece_visible(CHR_BOND, FALSE) mute_channel(CHANNEL_7) @@ -3209,7 +3209,7 @@ u8 func0416_outro[] = { #if VERSION >= VERSION_NTSC_1_0 unset_chr_chrflag(CHR_P1P2, CHRCFLAG_HIDDEN) #endif - set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_AME_OUTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_P1P2, 4) restart_timer unset_stage_flag(STAGEFLAG_LAB_ELEVATOR_CLOSED) diff --git a/src/setups/setupark.c b/src/setups/setupark.c index 68611c0fd..57ced35ed 100644 --- a/src/setups/setupark.c +++ b/src/setups/setupark.c @@ -2356,13 +2356,13 @@ u8 func100d_intro[] = { set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ARK_INTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_chrflag(0x00, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(0x00, CHRHFLAG_00020000) + set_chr_hiddenflag(0x00, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ARK_INTRO_DRC, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_DRCAROLL, 4) set_chr_chrflag(CHR_INTRO_GUARD, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_INTRO_GUARD, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_INTRO_GUARD, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ARK_INTRO_GUARD_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_INTRO_GUARD, 4) unset_stage_flag(STAGEFLAG_00800000) restart_timer @@ -2432,16 +2432,16 @@ u8 func100d_intro[] = { unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ARK_INTRO_JO, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) unset_chr_chrflag(CHR_DRCAROLL, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_DRCAROLL, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_DRCAROLL, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ARK_INTRO_DRC, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_DRCAROLL, 2) unset_chr_chrflag(CHR_INTRO_GUARD, CHRCFLAG_UNPLAYABLE) set_chr_chrflag(CHR_INTRO_GUARD, CHRCFLAG_INVINCIBLE) - set_chr_hiddenflag(CHR_INTRO_GUARD, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_INTRO_GUARD, CHRHFLAG_FINDROOMSFAST) set_chr_chrflag(CHR_INTRO_GUARD, CHRCFLAG_PERIMDISABLEDTMP) chr_do_animation(ANIM_CUT_ARK_INTRO_GUARD_01, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_INTRO_GUARD, 2) @@ -2480,7 +2480,7 @@ u8 func0412_outro[] = { #if VERSION >= VERSION_NTSC_1_0 unset_chr_chrflag(CHR_DRCAROLL, CHRCFLAG_HIDDEN) #endif - set_chr_hiddenflag(CHR_DRCAROLL, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_DRCAROLL, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ARK_OUTRO_DRC, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_DRCAROLL, 4) set_ailist(CHR_CASS, AILIST_CASS_OUTRO) @@ -2488,7 +2488,7 @@ u8 func0412_outro[] = { #if VERSION >= VERSION_NTSC_1_0 unset_chr_chrflag(CHR_CASS, CHRCFLAG_HIDDEN) #endif - set_chr_hiddenflag(CHR_CASS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_CASS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ARK_OUTRO_CASS, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_CASS, 4) set_ailist(CHR_MRBLONDE, GAILIST_IDLE) @@ -2496,7 +2496,7 @@ u8 func0412_outro[] = { #if VERSION >= VERSION_NTSC_1_0 unset_chr_chrflag(CHR_MRBLONDE, CHRCFLAG_HIDDEN) #endif - set_chr_hiddenflag(CHR_MRBLONDE, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_MRBLONDE, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ARK_OUTRO_MRB, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_MRBLONDE, 4) set_ailist(CHR_OUTRO_GUARD1, GAILIST_IDLE) @@ -2504,7 +2504,7 @@ u8 func0412_outro[] = { #if VERSION >= VERSION_NTSC_1_0 unset_chr_chrflag(CHR_OUTRO_GUARD1, CHRCFLAG_HIDDEN) #endif - set_chr_hiddenflag(CHR_OUTRO_GUARD1, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_OUTRO_GUARD1, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ARK_OUTRO_GUARD1, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_OUTRO_GUARD1, 4) set_ailist(CHR_OUTRO_GUARD2, GAILIST_IDLE) @@ -2512,11 +2512,11 @@ u8 func0412_outro[] = { #if VERSION >= VERSION_NTSC_1_0 unset_chr_chrflag(CHR_OUTRO_GUARD2, CHRCFLAG_HIDDEN) #endif - set_chr_hiddenflag(CHR_OUTRO_GUARD2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_OUTRO_GUARD2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ARK_OUTRO_GUARD2, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_OUTRO_GUARD2, 4) enable_object(OBJ_JUMPSHIP) - set_object_flag3(OBJ_JUMPSHIP, OBJFLAG3_00000010) + set_object_flag3(OBJ_JUMPSHIP, OBJFLAG3_FINDROOMSFAST) set_object_flag2(OBJ_JUMPSHIP, OBJFLAG2_CANFILLVIEWPORT) object_do_animation(ANIM_CUT_ARK_OUTRO_DROPSHIP, OBJ_JUMPSHIP, 0x04, 0xffff) set_ailist(CHR_P1P2, GAILIST_IDLE) @@ -2524,7 +2524,7 @@ u8 func0412_outro[] = { #if VERSION >= VERSION_NTSC_1_0 unset_chr_chrflag(CHR_P1P2, CHRCFLAG_HIDDEN) #endif - set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ARK_OUTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_P1P2, 4) show_nonessential_chrs(FALSE) restart_timer diff --git a/src/setups/setupate.c b/src/setups/setupate.c index b2033a49f..7e457f660 100644 --- a/src/setups/setupate.c +++ b/src/setups/setupate.c @@ -101,7 +101,7 @@ u8 func1002_first_walk[] = { camera_movement(ANIM_CUT_ATE_INTRO_CAM) unset_chr_chrflag(CHR_BOND, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) show_hudmsg_middle(0x00, COLOR_02_WHITE, L_ATE_007) // "THE DUEL" chr_do_animation(ANIM_RELOAD, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_GUARD, 2) label(0x2d) @@ -165,7 +165,7 @@ u8 func1007_second_walk[] = { yield unset_chr_chrflag(CHR_BOND, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_GRAB_CROTCH, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_JONATHAN, 2) label(0x2d) @@ -246,7 +246,7 @@ u8 func1008_third_walk[] = { yield unset_chr_chrflag(CHR_BOND, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_HEAD_ROLL, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TRENT, 2) label(0x2d) show_hudmsg(CHR_BOND, L_ATE_014) // "Opponent skill level: PERFECT AGENT" diff --git a/src/setups/setupazt.c b/src/setups/setupazt.c index 91e7fe0e3..20fd6ccc3 100644 --- a/src/setups/setupazt.c +++ b/src/setups/setupazt.c @@ -477,7 +477,7 @@ u8 func1002_intro[] = { cmd0175(60) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_AZT_INTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_hudpiece_visible(CHR_BOND, TRUE) @@ -580,7 +580,7 @@ u8 func1002_intro[] = { unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_AZT_INTRO_JO, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) stop_cutscene_track stop_ambient_track @@ -635,49 +635,49 @@ u8 func0402_outro[] = { #if VERSION >= VERSION_NTSC_1_0 unset_chr_chrflag(CHR_TARGET, CHRCFLAG_HIDDEN) #endif - set_chr_hiddenflag(CHR_TARGET, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TARGET, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_AZT_OUTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TARGET, 4) set_chr_chrflag(CHR_SKEDAR, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_SKEDAR, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_SKEDAR, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_SKEDAR, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_AZT_OUTRO_SKEDAR, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_SKEDAR, 4) set_chr_chrflag(CHR_ELVIS_OUTRO, CHRCFLAG_INVINCIBLE) set_chr_chrflag(CHR_ELVIS_OUTRO, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_ELVIS_OUTRO, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_ELVIS_OUTRO, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS_OUTRO, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_AZT_OUTRO_ELVIS, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_ELVIS_OUTRO, 4) #if VERSION >= VERSION_NTSC_1_0 set_chr_chrflag(CHR_TRENT_OUTRO, CHRCFLAG_INVINCIBLE) set_chr_chrflag(CHR_TRENT_OUTRO, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_TRENT_OUTRO, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_TRENT_OUTRO, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TRENT_OUTRO, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_AZT_OUTRO_TRENT, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TRENT_OUTRO, 4) #else set_chr_chrflag(CHR_TRENT, CHRCFLAG_INVINCIBLE) set_chr_chrflag(CHR_TRENT, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_TRENT, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_TRENT, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TRENT, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_AZT_OUTRO_TRENT, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TRENT, 4) #endif set_chr_chrflag(CHR_MRBLONDE, CHRCFLAG_INVINCIBLE) set_chr_chrflag(CHR_MRBLONDE, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_MRBLONDE, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_MRBLONDE, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_MRBLONDE, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_AZT_OUTRO_MRB, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_MRBLONDE, 4) set_chr_chrflag(CHR_PRESIDENT_OUTRO, CHRCFLAG_INVINCIBLE) set_chr_chrflag(CHR_PRESIDENT_OUTRO, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_PRESIDENT_OUTRO, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_PRESIDENT_OUTRO, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_PRESIDENT_OUTRO, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_AZT_OUTRO_PRES, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_PRESIDENT_OUTRO, 4) enable_object(0x00) set_object_flag2(OBJ_CRATE, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_CRATE, OBJFLAG3_00000010) + set_object_flag3(OBJ_CRATE, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_AZT_OUTRO_CRATE, OBJ_CRATE, 0x04, 0xffff) restart_timer set_cutscene_weapon(CHR_TARGET, WEAPON_NONE, WEAPON_NONE) @@ -2018,7 +2018,7 @@ u8 func1016_hide_hoverbike[] = { u8 func1014_setup_skedar_shuttle[] = { yield enable_object(OBJ_SKEDAR_SHUTTLE) - set_object_flag3(OBJ_SKEDAR_SHUTTLE, OBJFLAG3_00000010) + set_object_flag3(OBJ_SKEDAR_SHUTTLE, OBJFLAG3_FINDROOMSFAST) object_set_modelpart_visible(OBJ_SKEDAR_SHUTTLE, MODELPART_SKSHUTTLE_GANGWAY, FALSE) object_do_animation(ANIM_0486, OBJ_SKEDAR_SHUTTLE, 0x01, 0xffff) set_ailist(CHR_SELF, GAILIST_IDLE) diff --git a/src/setups/setupcave.c b/src/setups/setupcave.c index a227691ab..4eece27e4 100644 --- a/src/setups/setupcave.c +++ b/src/setups/setupcave.c @@ -796,24 +796,24 @@ u8 func0401_unused_cutscene[] = { camera_movement(ANIM_CUT_CAVE_BETA_CAM) cmd0175(60) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_CAVE_BETA_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_hudpiece_visible(CHR_BOND, TRUE) set_chr_chrflag(0x00, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x00, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x00, CHRHFLAG_00020000) + set_chr_hiddenflag(0x00, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_CAVE_BETA_GUARD1, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x00, 4) set_chr_chrflag(0x01, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x01, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x01, CHRHFLAG_00020000) + set_chr_hiddenflag(0x01, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_CAVE_BETA_GUARD2, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x01, 4) set_chr_chrflag(0x02, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x02, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x02, CHRHFLAG_00020000) + set_chr_hiddenflag(0x02, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_CAVE_BETA_GUARD3, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x02, 4) set_chr_chrflag(CHR_STEWARDESS, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_STEWARDESS, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_STEWARDESS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_STEWARDESS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_CAVE_BETA_STEWARDESS, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_STEWARDESS, 4) fade_to_color(0x000000ff, 0) fade_to_color(0x00000000, 90) @@ -856,12 +856,12 @@ u8 func0425_outro[] = { set_chr_chrflag(CHR_OUTRO_NSA, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_OUTRO_NSA, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_OUTRO_NSA, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_OUTRO_NSA, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_CAVE_OUTRO_GUARD, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_OUTRO_NSA, 4) enable_object(OBJ_PLANE) set_object_flag2(OBJ_PLANE, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_PLANE, OBJFLAG3_00000010) + set_object_flag3(OBJ_PLANE, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_CAVE_OUTRO_PLANE, OBJ_PLANE, 0x04, 0xffff) set_cutscene_weapon(CHR_P1P2, WEAPON_NONE, WEAPON_NONE) @@ -3593,40 +3593,40 @@ u8 func1003_intro[] = { camera_movement(ANIM_CUT_CAVE_INTRO_CAM) cmd0175(60) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_CAVE_INTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_hudpiece_visible(CHR_BOND, TRUE) set_chr_chrflag(CHR_TRENT, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_TRENT, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_TRENT, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TRENT, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_CAVE_INTRO_TRENT, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TRENT, 4) set_chr_chrflag(0x48, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x48, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x48, CHRHFLAG_00020000) + set_chr_hiddenflag(0x48, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_CAVE_INTRO_NSA1, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x48, 4) set_chr_chrflag(0x49, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x49, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x49, CHRHFLAG_00020000) + set_chr_hiddenflag(0x49, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_CAVE_INTRO_NSA2, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x49, 4) set_chr_chrflag(0x4a, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x4a, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x4a, CHRHFLAG_00020000) + set_chr_hiddenflag(0x4a, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_CAVE_INTRO_NSA3, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x4a, 4) set_chr_chrflag(0x4b, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x4b, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x4b, CHRHFLAG_00020000) + set_chr_hiddenflag(0x4b, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_CAVE_INTRO_GUARD1, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x4b, 4) set_chr_chrflag(0x4c, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x4c, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x4c, CHRHFLAG_00020000) + set_chr_hiddenflag(0x4c, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_CAVE_INTRO_GUARD2, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x4c, 4) enable_object(0x22) set_object_flag2(0x22, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x22, OBJFLAG3_00000010) + set_object_flag3(0x22, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_CAVE_INTRO_CABLECAR, 0x22, 0x04, 0xffff) enable_object(0x2f) set_object_flag2(0x2f, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x2f, OBJFLAG3_00000010) + set_object_flag3(0x2f, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_CAVE_INTRO_BINOCULARS, 0x2f, 0x04, 0xffff) restart_timer fade_to_color(0x000000ff, 0x0000) @@ -3836,14 +3836,14 @@ u8 func1003_intro[] = { remove_chr(0x4c) set_chr_chrflag(0x49, CHRCFLAG_INVINCIBLE) set_chr_chrflag(0x49, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x49, CHRHFLAG_00020000) + set_chr_hiddenflag(0x49, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_CAVE_INTRO_NSA2, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x49, 2) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_CAVE_INTRO_JO, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) set_chr_hudpiece_visible(CHR_BOND, FALSE) unset_object_flag2(0x22, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x22, OBJFLAG3_00000010) + set_object_flag3(0x22, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_CAVE_INTRO_CABLECAR, 0x22, 0x01, 0xfffe) set_ailist(0x00, 0x0405) set_ailist(0x01, 0x0405) diff --git a/src/setups/setupdam.c b/src/setups/setupdam.c index 106cca99f..b0491d746 100644 --- a/src/setups/setupdam.c +++ b/src/setups/setupdam.c @@ -692,15 +692,15 @@ u8 func1002_intro[] = { camera_movement(ANIM_CUT_DAM_INTRO_CAM) cmd0175(60) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DAM_INTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_chrflag(CHR_ELVIS, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_ELVIS, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DAM_INTRO_ELVIS, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_ELVIS, 4) set_chr_chrflag(CHR_INTRO_GUARD, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_INTRO_GUARD, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_INTRO_GUARD, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_INTRO_GUARD, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DAM_INTRO_GUARD, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_INTRO_GUARD, 4) restart_timer set_cutscene_weapon(CHR_BOND, WEAPON_NONE, WEAPON_NONE) @@ -812,10 +812,10 @@ u8 func1002_intro[] = { unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DAM_INTRO_JO, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) unset_chr_chrflag(CHR_ELVIS, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DAM_INTRO_ELVIS, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_ELVIS, 2) unset_chr_chrflag(CHR_INTRO_GUARD, CHRCFLAG_UNPLAYABLE) disable_chr(CHR_INTRO_GUARD) @@ -845,33 +845,33 @@ u8 func0c01_outro[] = { #if VERSION >= VERSION_NTSC_1_0 unset_chr_chrflag(CHR_P1P2, CHRCFLAG_HIDDEN) #endif - set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DAM_OUTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_P1P2, 4) set_ailist(CHR_ELVIS, GAILIST_IDLE) set_chr_chrflag(CHR_ELVIS, CHRCFLAG_INVINCIBLE) set_chr_chrflag(CHR_ELVIS, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_ELVIS, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DAM_OUTRO_ELVIS, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_ELVIS, 4) enable_object(OBJ_OUTRO_SUBMARINE) set_object_flag2(OBJ_OUTRO_SUBMARINE, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_OUTRO_SUBMARINE, OBJFLAG3_00000010) + set_object_flag3(OBJ_OUTRO_SUBMARINE, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_DAM_OUTRO_SUBMARINE, OBJ_OUTRO_SUBMARINE, 0x04, 0xffff) enable_object(OBJ_OUTRO_GRATE) set_object_flag2(OBJ_OUTRO_GRATE, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_OUTRO_GRATE, OBJFLAG3_00000010) + set_object_flag3(OBJ_OUTRO_GRATE, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_DAM_OUTRO_GRATE, OBJ_OUTRO_GRATE, 0x04, 0xffff) enable_object(OBJ_OUTRO_CRATE1) set_object_flag2(OBJ_OUTRO_CRATE1, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_OUTRO_CRATE1, OBJFLAG3_00000010) + set_object_flag3(OBJ_OUTRO_CRATE1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_DAM_OUTRO_CRATE1, OBJ_OUTRO_CRATE1, 0x04, 0xffff) enable_object(OBJ_OUTRO_CRATE2) set_object_flag2(OBJ_OUTRO_CRATE2, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_OUTRO_CRATE2, OBJFLAG3_00000010) + set_object_flag3(OBJ_OUTRO_CRATE2, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_DAM_OUTRO_CRATE2, OBJ_OUTRO_CRATE2, 0x04, 0xffff) set_cutscene_weapon(CHR_P1P2, WEAPON_NONE, WEAPON_NONE) @@ -1003,10 +1003,10 @@ u8 func0c01_outro[] = { label(0x39) unset_chr_chrflag(CHR_P1P2, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DAM_INTRO_JO, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_P1P2, 2) unset_chr_chrflag(CHR_ELVIS, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DAM_INTRO_ELVIS, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_ELVIS, 2) end_level set_ailist(CHR_SELF, GAILIST_IDLE) diff --git a/src/setups/setupdepo.c b/src/setups/setupdepo.c index a6b83e68b..e97cbff73 100644 --- a/src/setups/setupdepo.c +++ b/src/setups/setupdepo.c @@ -1590,12 +1590,12 @@ u8 func040d_intro[] = { cmd0175(60) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DEPO_INTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_chrflag(CHR_INTRO_VICTIM, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_INTRO_VICTIM, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_INTRO_VICTIM, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_INTRO_VICTIM, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DEPO_INTRO_GUARD_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_INTRO_VICTIM, 4) restart_timer @@ -1800,11 +1800,11 @@ u8 func040d_intro[] = { unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DEPO_INTRO_JO, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) unset_chr_chrflag(CHR_INTRO_VICTIM, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_INTRO_VICTIM, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_INTRO_VICTIM, CHRHFLAG_FINDROOMSFAST) set_chr_chrflag(CHR_INTRO_VICTIM, CHRCFLAG_INVINCIBLE) set_chr_chrflag(CHR_INTRO_VICTIM, CHRCFLAG_PERIMDISABLEDTMP) chr_do_animation(ANIM_CUT_DEPO_INTRO_GUARD_01, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_INTRO_VICTIM, 2) @@ -1846,22 +1846,22 @@ u8 func040e_meeting_cutscene[] = { set_chr_chrflag(CHR_BLONDE, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_BLONDE, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_BLONDE, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BLONDE, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DEPO_MID_MRB, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BLONDE, 4) set_chr_chrflag(CHR_CASS, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_CASS, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_CASS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_CASS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DEPO_MID_CASS, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_CASS, 4) set_chr_chrflag(CHR_TRENT, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_TRENT, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_TRENT, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TRENT, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DEPO_MID_TRENT, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TRENT, 4) set_chr_chrflag(CHR_STRIPES, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_STRIPES, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_STRIPES, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_STRIPES, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DEPO_MID_STR, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_STRIPES, 4) restart_timer @@ -2111,7 +2111,7 @@ u8 func040f_outro[] = { #if VERSION >= VERSION_NTSC_1_0 unset_chr_chrflag(CHR_P1P2, CHRCFLAG_HIDDEN) #endif - set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DEPO_OUTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_P1P2, 4) set_chr_hudpiece_visible(CHR_P1P2, TRUE) restart_timer diff --git a/src/setups/setupdish.c b/src/setups/setupdish.c index 8fce845ae..e2fe1c55e 100644 --- a/src/setups/setupdish.c +++ b/src/setups/setupdish.c @@ -5945,7 +5945,7 @@ u8 func1000_jo_typing[] = { play_cutscene_track(MUSIC_CI_INTRO) unset_chr_chrflag(CHR_BOND, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DISH_INTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) restart_timer fade_to_color(0x000000ff, 0) @@ -5978,7 +5978,7 @@ u8 func1000_jo_typing[] = { label(0x7b) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_DISH_INTRO_JO, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) diff --git a/src/setups/setupear.c b/src/setups/setupear.c index c24a0f2c4..9f1f0ca08 100644 --- a/src/setups/setupear.c +++ b/src/setups/setupear.c @@ -2247,13 +2247,13 @@ u8 func0416_intro[] = { set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) set_chr_chrflag(CHR_BOND, CHRCFLAG_PERIMDISABLEDTMP) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_EAR_INTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_chrflag(CHR_INTRO_GUARD, CHRCFLAG_UNPLAYABLE) set_chr_chrflag(CHR_INTRO_GUARD, CHRCFLAG_PERIMDISABLEDTMP) unset_chr_chrflag(CHR_INTRO_GUARD, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_INTRO_GUARD, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_INTRO_GUARD, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_EAR_INTRO_GUARD_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_INTRO_GUARD, 4) restart_timer @@ -2341,12 +2341,12 @@ u8 func0416_intro[] = { set_door_open(0x40) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_BOND, CHRCFLAG_PERIMDISABLEDTMP) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_EAR_INTRO_JO, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) unset_chr_chrflag(CHR_INTRO_GUARD, CHRCFLAG_UNPLAYABLE) set_chr_chrflag(CHR_INTRO_GUARD, CHRCFLAG_INVINCIBLE) - set_chr_hiddenflag(CHR_INTRO_GUARD, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_INTRO_GUARD, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_EAR_INTRO_GUARD_01, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_INTRO_GUARD, 2) unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) @@ -2370,7 +2370,7 @@ u8 func0417_outro[] = { unset_chr_chrflag(CHR_P1P2, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_P1P2, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_FINDROOMSFAST) set_ailist(CHR_DRCAROLL, GAILIST_IDLE) set_ailist(CHR_K7_GUARD, GAILIST_IDLE) @@ -2438,7 +2438,7 @@ u8 func0417_outro[] = { if_controller_button_pressed(/*goto*/ 0x06) unset_chr_chrflag(CHR_DRCAROLL, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_DRCAROLL, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_DRCAROLL, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_DRCAROLL, CHRHFLAG_FINDROOMSFAST) camera_movement(ANIM_CUT_EAR_OUTRO_CAM_05) chr_do_animation(ANIM_CUT_EAR_OUTRO_JO_05, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_P1P2, 2) chr_do_animation(ANIM_CUT_EAR_OUTRO_DRC_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_DRCAROLL, 2) diff --git a/src/setups/setupeld.c b/src/setups/setupeld.c index 760548544..1f284fcf8 100644 --- a/src/setups/setupeld.c +++ b/src/setups/setupeld.c @@ -779,7 +779,7 @@ u8 func1002_intro[] = { set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) camera_movement(ANIM_CUT_ELD_INTRO_CAM_01) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) if_stage_flag_eq(STAGEFLAG_PLAYING_INTRO_FROM_MENU, TRUE, /*goto*/ 0x2e) if_difficulty_lt(DIFF_PA, /*goto*/ 0x2d) label(0x2e) @@ -793,15 +793,15 @@ u8 func1002_intro[] = { label(0x06) set_chr_chrflag(CHR_TAKER1, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_TAKER1, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_TAKER1, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TAKER1, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ELD_INTRO_TAKER1_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TAKER1, 4) set_chr_chrflag(CHR_TAKER2, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_TAKER2, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_TAKER2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TAKER2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ELD_INTRO_TAKER2_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TAKER2, 4) enable_object(OBJ_DROPSHIP) set_object_flag2(OBJ_DROPSHIP, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_DROPSHIP, OBJFLAG3_00000010) + set_object_flag3(OBJ_DROPSHIP, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_ELD_INTRO_DROPSHIP_01, OBJ_DROPSHIP, 0x04, 0xffff) restart_timer fade_to_color(0x000000ff, 0) @@ -938,7 +938,7 @@ u8 func1002_intro[] = { if_controller_button_pressed(/*goto*/ 0x56) camera_movement(ANIM_CUT_ELD_INTRO_CAM_02) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) if_stage_flag_eq(STAGEFLAG_PLAYING_INTRO_FROM_MENU, TRUE, /*goto*/ 0x2e) if_difficulty_lt(DIFF_PA, /*goto*/ 0x2d) label(0x2e) @@ -950,12 +950,12 @@ u8 func1002_intro[] = { set_chr_chrflag(CHR_TAKER1, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_TAKER1, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_TAKER1, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TAKER1, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ELD_INTRO_TAKER1_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TAKER1, 4) set_chr_chrflag(CHR_TAKER2, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_TAKER2, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_TAKER2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TAKER2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ELD_INTRO_TAKER2_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TAKER2, 4) restart_timer @@ -1032,12 +1032,12 @@ u8 func1002_intro[] = { set_chr_chrflag(CHR_NEGOTIATOR, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_NEGOTIATOR, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_NEGOTIATOR, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_NEGOTIATOR, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_TWO_GUN_HOLD, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_NEGOTIATOR, 4) set_chr_chrflag(CHR_TAKER1, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_TAKER1, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_TAKER1, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TAKER1, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_TWO_GUN_HOLD, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TAKER1, 4) set_chr_chrflag(CHR_TAKER2, CHRCFLAG_UNPLAYABLE) @@ -1045,12 +1045,12 @@ u8 func1002_intro[] = { chr_do_animation(ANIM_TWO_GUN_HOLD, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TAKER2, 4) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ELD_INTRO_JO_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) enable_object(OBJ_DROPSHIP) set_object_flag2(OBJ_DROPSHIP, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_DROPSHIP, OBJFLAG3_00000010) + set_object_flag3(OBJ_DROPSHIP, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_ELD_INTRO_DROPSHIP_02, OBJ_DROPSHIP, 0x04, 0xffff) restart_timer @@ -1100,19 +1100,19 @@ u8 func1002_intro[] = { mute_channel(CHANNEL_7) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ELD_INTRO_JO_01, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) unset_chr_chrflag(CHR_NEGOTIATOR, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_NEGOTIATOR, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_NEGOTIATOR, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ELD_INTRO_NEG_02, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_NEGOTIATOR, 2) unset_chr_chrflag(CHR_TAKER1, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_TAKER1, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TAKER1, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ELD_INTRO_TAKER1_02, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TAKER1, 2) unset_chr_chrflag(CHR_TAKER2, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_TAKER2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TAKER2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ELD_INTRO_TAKER2_02, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TAKER2, 2) disable_object(OBJ_DROPSHIP) @@ -1137,15 +1137,15 @@ u8 func1002_intro[] = { disable_object(OBJ_DROPSHIP) if_controller_button_pressed(/*goto*/ 0x56) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ELD_INTRO_JO_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_chrflag(CHR_TAKER1, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_TAKER1, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_TAKER1, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TAKER1, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ELD_INTRO_TAKER1_03, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TAKER1, 4) set_chr_chrflag(CHR_TAKER2, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_TAKER2, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_TAKER2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TAKER2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ELD_INTRO_TAKER2_03, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TAKER2, 4) restart_timer @@ -1202,14 +1202,14 @@ u8 func1002_intro[] = { mute_channel(CHANNEL_6) mute_channel(CHANNEL_7) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ELD_INTRO_JO_02, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) unset_chr_chrflag(CHR_TAKER1, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_TAKER1, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TAKER1, CHRHFLAG_FINDROOMSFAST) set_chr_chrflag(CHR_TAKER1, CHRCFLAG_FORCETOGROUND) chr_do_animation(ANIM_CUT_ELD_INTRO_TAKER1_03, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TAKER1, 2) unset_chr_chrflag(CHR_TAKER2, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_TAKER2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TAKER2, CHRHFLAG_FINDROOMSFAST) set_chr_chrflag(CHR_TAKER2, CHRCFLAG_FORCETOGROUND) chr_do_animation(ANIM_CUT_ELD_INTRO_TAKER2_03, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TAKER2, 2) disable_object(OBJ_DROPSHIP) @@ -1245,12 +1245,12 @@ u8 func0408_outro[] = { #if VERSION >= VERSION_NTSC_1_0 unset_chr_chrflag(CHR_P1P2, CHRCFLAG_HIDDEN) #endif - set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ELD_OUTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_P1P2, 4) set_chr_chrflag(CHR_CARRINGTON, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_CARRINGTON, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_CARRINGTON, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_CARRINGTON, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_ELD_OUTRO_CARR, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_CARRINGTON, 4) show_nonessential_chrs(FALSE) diff --git a/src/setups/setupimp.c b/src/setups/setupimp.c index 07906c047..033c52680 100644 --- a/src/setups/setupimp.c +++ b/src/setups/setupimp.c @@ -877,13 +877,13 @@ u8 func0c01_outro[] = { #if VERSION >= VERSION_NTSC_1_0 unset_chr_chrflag(CHR_P1P2, CHRCFLAG_HIDDEN) #endif - set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_IMP_OUTRO_JO_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_P1P2, 4) #define show_object_with_animation(object, animation) \ enable_object(object) \ set_object_flag2(object, OBJFLAG2_CANFILLVIEWPORT) \ - set_object_flag3(object, OBJFLAG3_00000010) \ + set_object_flag3(object, OBJFLAG3_FINDROOMSFAST) \ object_do_animation(animation, object, 0x04, 0xffff) show_object_with_animation(0x0e, ANIM_CUT_IMP_OUTRO_CRATE1_01) @@ -897,7 +897,7 @@ u8 func0c01_outro[] = { enable_object(0x0d) unset_object_flag(0x0d, OBJFLAG_DEACTIVATED) set_object_flag2(0x0d, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x0d, OBJFLAG3_00000010) + set_object_flag3(0x0d, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_IMP_OUTRO_DROPSHIP_01, 0x0d, 0x01, 0xffff) show_nonessential_chrs(FALSE) @@ -949,12 +949,12 @@ u8 func0c01_outro[] = { set_chr_chrflag(CHR_SKEDAR1, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_SKEDAR1, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_SKEDAR1, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_SKEDAR1, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_IMP_OUTRO_SKEDAR1_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_SKEDAR1, 4) set_chr_chrflag(CHR_SKEDAR2, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_SKEDAR2, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_SKEDAR2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_SKEDAR2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_IMP_OUTRO_SKEDAR2, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_SKEDAR2, 4) wait_until(16, 0x78) @@ -979,7 +979,7 @@ u8 func0c01_outro[] = { #if VERSION >= VERSION_NTSC_1_0 unset_chr_chrflag(CHR_P1P2, CHRCFLAG_HIDDEN) #endif - set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_IMP_OUTRO_JO_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_P1P2, 4) show_object_with_animation(0x0e, ANIM_CUT_IMP_OUTRO_CRATE1_02) @@ -993,7 +993,7 @@ u8 func0c01_outro[] = { enable_object(0x16) set_object_flag2(0x16, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x16, OBJFLAG3_00000010) + set_object_flag3(0x16, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_IMP_OUTRO_LASER1, 0x16, 0x02, 0xffff) wait_until(372, 0x7a) @@ -1094,12 +1094,12 @@ u8 func0c01_outro[] = { #if VERSION >= VERSION_NTSC_1_0 unset_chr_chrflag(CHR_P1P2, CHRCFLAG_HIDDEN) #endif - set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_IMP_OUTRO_JO_03, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_P1P2, 4) set_chr_chrflag(CHR_SKEDAR1, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_SKEDAR1, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_SKEDAR1, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_SKEDAR1, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_IMP_OUTRO_SKEDAR1_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_SKEDAR1, 4) show_object_with_animation(0x0e, ANIM_CUT_IMP_OUTRO_CRATE1_03) @@ -1169,23 +1169,23 @@ u8 func1002_intro[] = { set_chr_chrflag(0x16, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_JONATHAN, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_IMP_INTRO_JO_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_chrflag(CHR_CARRINGTON, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_CARRINGTON, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_CARRINGTON, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_CARRINGTON, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_IMP_INTRO_CARR, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_CARRINGTON, 4) set_chr_chrflag(0x19, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x19, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x19, CHRHFLAG_00020000) + set_chr_hiddenflag(0x19, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_IMP_INTRO_SOLDIER1, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x19, 4) set_chr_chrflag(0x1a, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x1a, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x1a, CHRHFLAG_00020000) + set_chr_hiddenflag(0x1a, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_IMP_INTRO_SOLDIER2, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x1a, 4) enable_object(0x0d) set_object_flag2(0x0d, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x0d, OBJFLAG3_00000010) + set_object_flag3(0x0d, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_IMP_INTRO_DROPSHIP, 0x0d, 0x04, 0xffff) restart_timer set_cutscene_weapon(0x1a, WEAPON_NONE, WEAPON_NONE) @@ -1413,18 +1413,18 @@ u8 func1002_intro[] = { if_controller_button_pressed(/*goto*/ 0xcc) unset_chr_chrflag(CHR_SKEDAR4, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_SKEDAR4, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_SKEDAR4, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_SKEDAR4, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_IMP_INTRO_SKEDAR, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_SKEDAR4, 4) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_IMP_INTRO_JO_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) enable_object(0x52) set_object_flag2(0x52, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x52, OBJFLAG3_00000010) + set_object_flag3(0x52, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_IMP_INTRO_DOOR1, 0x52, 0x04, 0xffff) enable_object(0x53) set_object_flag2(0x53, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x53, OBJFLAG3_00000010) + set_object_flag3(0x53, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_IMP_INTRO_DOOR2, 0x53, 0x04, 0xffff) restart_timer @@ -1496,32 +1496,32 @@ u8 func1002_intro[] = { mute_channel(CHANNEL_CUTSCENE) set_cutscene_weapon(CHR_BOND, WEAPON_AR34, WEAPON_NONE) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_IMP_INTRO_JO_02, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) unset_chr_chrflag(CHR_CARRINGTON, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_CARRINGTON, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_CARRINGTON, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_IMP_INTRO_CARR, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_CARRINGTON, 2) unset_chr_chrflag(0x19, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(0x19, CHRHFLAG_00020000) + set_chr_hiddenflag(0x19, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_IMP_INTRO_SOLDIER1, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x19, 2) unset_chr_chrflag(0x1a, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(0x1a, CHRHFLAG_00020000) + set_chr_hiddenflag(0x1a, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_IMP_INTRO_SOLDIER2, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x1a, 2) unset_chr_chrflag(CHR_SKEDAR4, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_SKEDAR4, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_SKEDAR4, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_SKEDAR4, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_IMP_INTRO_SKEDAR, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_SKEDAR4, 2) unset_object_flag2(0x0d, OBJFLAG2_CANFILLVIEWPORT) set_object_flag(0x0d, OBJFLAG_DEACTIVATED) - set_object_flag3(0x0d, OBJFLAG3_00000010) + set_object_flag3(0x0d, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_IMP_OUTRO_DROPSHIP_01, 0x0d, 0x01, 0xffff) enable_object(0x52) set_object_flag2(0x52, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x52, OBJFLAG3_00000010) + set_object_flag3(0x52, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_IMP_INTRO_DOOR1, 0x52, 0x04, 0xfffe) enable_object(0x53) set_object_flag2(0x53, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x53, OBJFLAG3_00000010) + set_object_flag3(0x53, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_IMP_INTRO_DOOR2, 0x53, 0x04, 0xfffe) set_stage_flag(STAGEFLAG_INTRO_FINISHED) stop_cutscene_track @@ -3233,7 +3233,7 @@ u8 func1022_skedar_shuttle[] = { label(0x08) enable_object(OBJ_SKEDAR_SHUTTLE) set_object_flag2(OBJ_SKEDAR_SHUTTLE, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_SKEDAR_SHUTTLE, OBJFLAG3_00000010) + set_object_flag3(OBJ_SKEDAR_SHUTTLE, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_045A, OBJ_SKEDAR_SHUTTLE, 0x04, 0xffff) object_set_modelpart_visible(OBJ_SKEDAR_SHUTTLE, MODELPART_SKSHUTTLE_GANGWAY, FALSE) set_object_flag(OBJ_SKEDAR_SHUTTLE, OBJFLAG_00000100) diff --git a/src/setups/setuplee.c b/src/setups/setuplee.c index 5768eb2c7..7c7aa356e 100644 --- a/src/setups/setuplee.c +++ b/src/setups/setuplee.c @@ -2422,7 +2422,7 @@ u8 func041a_bridgeclone[] = { // Alive label(0x06) - set_chr_hiddenflag(CHR_SELF, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_SELF, CHRHFLAG_FINDROOMSFAST) if_self_flag_bankx_eq(CHRFLAG0_GP1, TRUE, BANK_0, /*goto*/ 0x2c) set_target_chr(CHR_ELVIS) goto_next(LABEL_C2) @@ -2688,17 +2688,17 @@ u8 func1003_intro[] = { cmd0175(60) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LEE_INTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_chrflag(CHR_CASS, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_CASS, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_CASS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_CASS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LEE_INTRO_CASS, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_CASS, 4) set_chr_chrflag(CHR_INTRO_SKEDAR, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_INTRO_SKEDAR, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_INTRO_SKEDAR, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_INTRO_SKEDAR, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LEE_INTRO_SKEDAR, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_INTRO_SKEDAR, 4) restart_timer @@ -2911,16 +2911,16 @@ u8 func1003_intro[] = { unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LEE_INTRO_JO, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) unset_chr_chrflag(CHR_CASS, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_CASS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_CASS, CHRHFLAG_FINDROOMSFAST) set_chr_chrflag(CHR_CASS, CHRCFLAG_FORCETOGROUND) chr_do_animation(ANIM_CUT_LEE_INTRO_CASS, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_CASS, 2) unset_chr_chrflag(CHR_INTRO_SKEDAR, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_INTRO_SKEDAR, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_INTRO_SKEDAR, CHRHFLAG_FINDROOMSFAST) set_chr_chrflag(CHR_INTRO_SKEDAR, CHRCFLAG_FORCETOGROUND) chr_do_animation(ANIM_CUT_LEE_INTRO_SKEDAR, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_INTRO_SKEDAR, 2) @@ -2954,19 +2954,19 @@ u8 func0c01_outro[] = { set_chr_chrflag(CHR_TARGET, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_TARGET, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_TARGET, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TARGET, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LEE_OUTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TARGET, 4) set_chr_chrflag(CHR_ELVIS, CHRCFLAG_INVINCIBLE) set_ailist(CHR_ELVIS, GAILIST_IDLE) set_chr_chrflag(CHR_ELVIS, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_ELVIS, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LEE_OUTRO_ELVIS, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_ELVIS, 4) enable_object(OBJ_OUTRO_SHUTTLE) set_object_flag2(OBJ_OUTRO_SHUTTLE, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_OUTRO_SHUTTLE, OBJFLAG3_00000010) + set_object_flag3(OBJ_OUTRO_SHUTTLE, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_LEE_OUTRO_SKSHUTTLE, OBJ_OUTRO_SHUTTLE, 0x04, 0xffff) object_set_modelpart_visible(OBJ_OUTRO_SHUTTLE, MODELPART_SKSHUTTLE_GANGWAY, FALSE) @@ -3521,7 +3521,7 @@ u8 func1018_place_elvis_in_hangar[] = { u8 func1002_hangar_shuttle[] = { yield enable_object(OBJ_HANGAR_SHUTTLE) - set_object_flag3(OBJ_HANGAR_SHUTTLE, OBJFLAG3_00000010) + set_object_flag3(OBJ_HANGAR_SHUTTLE, OBJFLAG3_FINDROOMSFAST) object_set_modelpart_visible(OBJ_HANGAR_SHUTTLE, MODELPART_SKSHUTTLE_GANGWAY, FALSE) label(0x09) diff --git a/src/setups/setuplip.c b/src/setups/setuplip.c index 8bbff85c9..b5effca1f 100644 --- a/src/setups/setuplip.c +++ b/src/setups/setuplip.c @@ -3909,21 +3909,21 @@ u8 func0c01_outro[] = { #if VERSION >= VERSION_NTSC_1_0 unset_chr_chrflag(CHR_P1P2, CHRCFLAG_HIDDEN) #endif - set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LIP_OUTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_P1P2, 4) set_chr_chrflag(CHR_BIOTECH1, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_BIOTECH1, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_BIOTECH1, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BIOTECH1, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LIP_OUTRO_BIO1, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BIOTECH1, 4) set_chr_chrflag(CHR_BIOTECH2, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_BIOTECH2, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_BIOTECH2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BIOTECH2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LIP_OUTRO_BIO2, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BIOTECH2, 4) set_object_flag2(0x2f, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x2f, OBJFLAG3_00000010) + set_object_flag3(0x2f, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_LIP_OUTRO_BED, 0x2f, 0x04, 0xffff) show_nonessential_chrs(FALSE) restart_timer @@ -4009,21 +4009,21 @@ u8 func1002_intro[] = { cmd0175(60) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LIP_INTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_chrflag(CHR_JONATHAN, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_JONATHAN, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_JONATHAN, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_JONATHAN, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LIP_INTRO_JON, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_JONATHAN, 4) set_chr_chrflag(CHR_INTRO_DEAD_GUARD, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_INTRO_DEAD_GUARD, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_INTRO_DEAD_GUARD, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_INTRO_DEAD_GUARD, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LIP_INTRO_GUARD, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_INTRO_DEAD_GUARD, 4) set_object_flag2(OBJ_CRATE, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_CRATE, OBJFLAG3_00000010) + set_object_flag3(OBJ_CRATE, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_LIP_INTRO_CRATE, OBJ_CRATE, 0x04, 0xffff) restart_timer @@ -4162,7 +4162,7 @@ u8 func1002_intro[] = { assign_sound(SFX_8169, CHANNEL_1) set_object_sound_playing(CHANNEL_1, OBJ_CRATE, TRUE) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LIP_INTRO_JO, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) @@ -4170,11 +4170,11 @@ u8 func1002_intro[] = { remove_chr(CHR_JONATHAN) unset_chr_chrflag(CHR_INTRO_DEAD_GUARD, CHRCFLAG_UNPLAYABLE) set_chr_chrflag(CHR_INTRO_DEAD_GUARD, CHRCFLAG_INVINCIBLE) - set_chr_hiddenflag(CHR_INTRO_DEAD_GUARD, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_INTRO_DEAD_GUARD, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LIP_INTRO_GUARD, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_INTRO_DEAD_GUARD, 2) mute_channel(CHANNEL_CUTSCENE) unset_object_flag2(OBJ_CRATE, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_CRATE, OBJFLAG3_00000010) + set_object_flag3(OBJ_CRATE, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_LIP_INTRO_CRATE, OBJ_CRATE, 0x01, 0xfffe) close_door(0x33) close_door(0x34) diff --git a/src/setups/setuplue.c b/src/setups/setuplue.c index d6c583a47..0427a3d0e 100644 --- a/src/setups/setuplue.c +++ b/src/setups/setuplue.c @@ -1821,18 +1821,18 @@ u8 func040e_outro[] = { unset_chr_chrflag(CHR_P1P2, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_P1P2, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LUE_OUTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_P1P2, 4) set_chr_hudpiece_visible(CHR_P1P2, TRUE) set_chr_chrflag(CHR_JONATHAN, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_JONATHAN, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_JONATHAN, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_JONATHAN, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LUE_OUTRO_JON, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_JONATHAN, 4) set_chr_chrflag(CHR_OUTRO_GUARD, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_OUTRO_GUARD, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_OUTRO_GUARD, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_OUTRO_GUARD, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LUE_OUTRO_GUARD, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_OUTRO_GUARD, 4) restart_timer @@ -1960,7 +1960,7 @@ u8 func0410_intro[] = { set_chr_chrflag(0x0d, CHRCFLAG_HIDDEN) set_chr_chrflag(0x32, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x32, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x32, CHRHFLAG_00020000) + set_chr_hiddenflag(0x32, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LUE_INTRO_GUARD, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x32, 4) set_chr_chrflag(CHR_BOND, CHRCFLAG_HIDDEN) restart_timer @@ -2004,21 +2004,21 @@ u8 func0410_intro[] = { set_chr_chrflag(0x29, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x29, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x29, CHRHFLAG_00020000) + set_chr_hiddenflag(0x29, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LUE_INTRO_LAB_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x29, 4) set_chr_chrflag(0x2a, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x2a, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x2a, CHRHFLAG_00020000) + set_chr_hiddenflag(0x2a, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LUE_INTRO_BIO1_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x2a, 4) set_chr_chrflag(0x2b, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x2b, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x2b, CHRHFLAG_00020000) + set_chr_hiddenflag(0x2b, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LUE_INTRO_BIO2_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x2b, 4) set_object_flag2(0x2f, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x2f, OBJFLAG3_00000010) + set_object_flag3(0x2f, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_LUE_INTRO_BED_01, 0x2f, 0x04, 0xffff) restart_timer @@ -2050,16 +2050,16 @@ u8 func0410_intro[] = { set_chr_chrflag(0x2a, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x2a, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x2a, CHRHFLAG_00020000) + set_chr_hiddenflag(0x2a, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LUE_INTRO_BIO1_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x2a, 4) set_chr_chrflag(0x2b, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x2b, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x2b, CHRHFLAG_00020000) + set_chr_hiddenflag(0x2b, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LUE_INTRO_BIO2_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x2b, 4) set_object_flag2(0x2f, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x2f, OBJFLAG3_00000010) + set_object_flag3(0x2f, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_LUE_INTRO_BED_02, 0x2f, 0x04, 0xffff) restart_timer @@ -2088,10 +2088,10 @@ u8 func0410_intro[] = { cmd0175(60) if_controller_button_pressed(/*goto*/ 0x54) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LUE_INTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_chrflag(0x03, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(0x03, CHRHFLAG_00020000) + set_chr_hiddenflag(0x03, CHRHFLAG_FINDROOMSFAST) unset_chr_chrflag(0x03, CHRCFLAG_HIDDEN) restart_timer @@ -2156,7 +2156,7 @@ u8 func0410_intro[] = { disable_object(0x2f) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_BOND, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_LUE_INTRO_JO, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) unset_chr_chrflag(0x03, CHRCFLAG_UNPLAYABLE) set_ailist(0x02, 0x0426) diff --git a/src/setups/setupold.c b/src/setups/setupold.c index 7b1328921..fcb7feb8c 100644 --- a/src/setups/setupold.c +++ b/src/setups/setupold.c @@ -64,7 +64,7 @@ u8 func0c00_017c[] = { camera_movement(ANIM_CUT_OLD_TITLE_CAM_01) enable_object(0x00) set_object_flag2(0x00, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x00, OBJFLAG3_00000010) + set_object_flag3(0x00, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_OLD_TITLE_CRATE1_01, 0x00, 0x04, 0xffff) beginloop(0x08) @@ -81,7 +81,7 @@ u8 func0c00_017c[] = { camera_movement(ANIM_CUT_OLD_TITLE_CAM_02) enable_object(0x01) set_object_flag2(0x01, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x01, OBJFLAG3_00000010) + set_object_flag3(0x01, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_OLD_TITLE_CRATE2_01, 0x01, 0x04, 0xffff) beginloop(0x0b) @@ -99,12 +99,12 @@ u8 func0c00_017c[] = { enable_object(0x00) set_object_flag2(0x00, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x00, OBJFLAG3_00000010) + set_object_flag3(0x00, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_OLD_TITLE_CRATE1_02, 0x00, 0x04, 0xffff) enable_object(0x01) set_object_flag2(0x01, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x01, OBJFLAG3_00000010) + set_object_flag3(0x01, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_OLD_TITLE_CRATE2_02, 0x01, 0x04, 0xffff) beginloop(0x0a) @@ -123,17 +123,17 @@ u8 func0c00_017c[] = { enable_object(0x01) unset_object_flag2(0x01, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x01, OBJFLAG3_00000010) + set_object_flag3(0x01, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_OLD_TITLE_CRATE2_03, 0x01, 0x04, 0xffff) enable_object(0x00) set_object_flag2(0x00, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x00, OBJFLAG3_00000010) + set_object_flag3(0x00, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_OLD_TITLE_CRATE1_03, 0x00, 0x04, 0xffff) enable_object(0x02) set_object_flag2(0x02, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x02, OBJFLAG3_00000010) + set_object_flag3(0x02, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_OLD_TITLE_CRATE3, 0x02, 0x04, 0xffff) beginloop(0x0e) diff --git a/src/setups/setuppam.c b/src/setups/setuppam.c index 7448291ac..4cebbfc94 100644 --- a/src/setups/setuppam.c +++ b/src/setups/setuppam.c @@ -1497,19 +1497,19 @@ u8 func0c01_midcutscene[] = { #if VERSION >= VERSION_NTSC_1_0 unset_chr_chrflag(CHR_P1P2, CHRCFLAG_HIDDEN) #endif - set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_PAM_MID_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_P1P2, 4) set_chr_chrflag(CHR_ELVIS, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_ELVIS, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_PAM_MID_ELVIS, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_ELVIS, 4) set_chr_chrflag(CHR_DRCAROLL, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_DRCAROLL, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_DRCAROLL, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_DRCAROLL, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_PAM_MID_DRC, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_DRCAROLL, 4) enable_object(0xbb) set_object_flag2(0xbb, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0xbb, OBJFLAG3_00000010) + set_object_flag3(0xbb, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_PAM_MID_CARD, 0xbb, 0x04, 0xffff) restart_timer set_cutscene_weapon(CHR_P1P2, WEAPON_NONE, WEAPON_NONE) @@ -1821,13 +1821,13 @@ u8 func0c01_midcutscene[] = { unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_P1P2, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_PAM_MID_JO, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_P1P2, 2) unset_chr_chrflag(CHR_ELVIS, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_PAM_MID_ELVIS, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_ELVIS, 2) unset_chr_chrflag(CHR_DRCAROLL, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_DRCAROLL, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_DRCAROLL, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_PAM_MID_DRC, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_DRCAROLL, 2) set_cutscene_weapon(CHR_ELVIS, WEAPON_NONE, WEAPON_NONE) yield @@ -1836,10 +1836,10 @@ u8 func0c01_midcutscene[] = { yield chr_move_to_pad(CHR_ELVIS, PAD_PAM_0013, TRUE, /*goto*/ 0x2e) label(0x2e) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) chr_move_to_pad(CHR_BOND, PAD_PAM_019F, TRUE, /*goto*/ 0x2e) label(0x2e) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) stop_cutscene_track stop_ambient_track play_x_track(XREASON_DEFAULT, 10, 60) @@ -1864,7 +1864,7 @@ u8 func042d_elvis_warp_to_outside_drcaroll[] = { label(0x2e) dprint 'T','E','L','E','P','O','R','T',' ','G','O','O','D','\n',0, - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) stop_chr set_ailist(CHR_SELF, AILIST_ELVIS_RUN_TO_EXIT) endlist @@ -2030,19 +2030,19 @@ u8 func1002_intro[] = { camera_movement(ANIM_CUT_PAM_INTRO_CAM) cmd0175(60) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_PAM_INTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_chrflag(CHR_ELVIS, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_ELVIS, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_PAM_INTRO_ELVIS, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_ELVIS, 4) set_object_flag(0x07, OBJFLAG_DEACTIVATED) set_object_flag2(0x07, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x07, OBJFLAG3_00000010) + set_object_flag3(0x07, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_PAM_INTRO_LIFT, 0x07, 0x04, 0xffff) set_chr_chrflag(0x40, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x40, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x40, CHRHFLAG_00020000) + set_chr_hiddenflag(0x40, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_PAM_INTRO_GUARD, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x40, 4) restart_timer set_cutscene_weapon(CHR_BOND, WEAPON_NONE, WEAPON_NONE) @@ -2188,15 +2188,15 @@ u8 func1002_intro[] = { unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_PAM_INTRO_JO, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) unset_chr_chrflag(CHR_ELVIS, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_PAM_INTRO_ELVIS, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_ELVIS, 2) if_coop_mode(/*goto*/ 0x45) unset_object_flag(0x07, OBJFLAG_DEACTIVATED) unset_object_flag2(0x07, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x07, OBJFLAG3_00000010) + set_object_flag3(0x07, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_PAM_INTRO_LIFT, 0x07, 0x01, 0xfffe) goto_next(0x46) @@ -2521,7 +2521,7 @@ u8 func0414_teleport_bond_to_sapa[] = { endloop(0x63) label(0x06) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) label(0x62) beginloop(0x64) @@ -2563,7 +2563,7 @@ u8 func0415_teleport_bond_to_drcaroll[] = { endloop(0x65) label(0x06) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) goto_next(0x63) label(0x07) show_hudmsg(CHR_BOND, L_PAM_014) // "Elvis has been killed." @@ -2629,7 +2629,7 @@ u8 func0416_teleport_bond_to_a_pa_drcaroll[] = { endloop(0x66) label(0x06) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) label(0x62) label(0x07) @@ -2676,7 +2676,7 @@ u8 func0416_teleport_bond_to_a_pa_drcaroll[] = { endloop(0x6b) label(0x06) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) label(0x62) label(0x07) @@ -2890,7 +2890,7 @@ u8 func0417_teleport_coop_to_sapa[] = { endloop(0x63) label(0x06) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) label(0x62) beginloop(0x64) @@ -2933,7 +2933,7 @@ u8 func0418_teleport_coop_to_drcaroll[] = { endloop(0x65) label(0x06) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) goto_next(0x63) label(0x07) @@ -2996,7 +2996,7 @@ u8 func0419_teleport_coop_to_a_pa_drcaroll[] = { endloop(0x66) label(0x06) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) label(0x62) label(0x07) @@ -3041,7 +3041,7 @@ u8 func0419_teleport_coop_to_a_pa_drcaroll[] = { endloop(0x6b) label(0x06) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) label(0x62) label(0x07) @@ -4282,7 +4282,7 @@ u8 unregistered_function1[] = { label(0x04) chr_move_to_pad(CHR_ELVIS, PAD_PAM_01BF, TRUE, /*goto*/ 0x06) label(0x06) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) set_ailist(CHR_ELVIS, AILIST_ELVIS_FOLLOW_AND_REACTIVATE_TELEPORTALS) set_ailist(CHR_SELF, GAILIST_IDLE) endlist diff --git a/src/setups/setuppete.c b/src/setups/setuppete.c index 3d5f976b6..377c7a7c4 100644 --- a/src/setups/setuppete.c +++ b/src/setups/setuppete.c @@ -485,7 +485,7 @@ s32 path13[] = { #define chicago_car_do_animation(object, animation) \ enable_object(object) \ set_object_flag2(object, OBJFLAG2_CANFILLVIEWPORT) \ - set_object_flag3(object, OBJFLAG3_00000010) \ + set_object_flag3(object, OBJFLAG3_FINDROOMSFAST) \ object_do_animation(animation, object, 0x04, 0xffff) #define chicago_wait_for_camera \ @@ -559,7 +559,7 @@ u8 func0403_3c74[] = { set_chr_chrflag(CHR_BOND, CHRCFLAG_HIDDEN) enable_object(OBJ_CAR4) set_object_flag2(OBJ_CAR4, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_CAR4, OBJFLAG3_00000010) + set_object_flag3(OBJ_CAR4, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_PETE_INTRO_VEHICLE_09, OBJ_CAR4, 0x04, 0xffff) set_chr_chrflag(CHR_CIA1, CHRCFLAG_HIDDEN) @@ -580,13 +580,13 @@ u8 func0403_3c74[] = { u8 func0404_3ce0[] = { enable_object(OBJ_WIREFENCE) set_object_flag2(OBJ_WIREFENCE, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_WIREFENCE, OBJFLAG3_00000010) + set_object_flag3(OBJ_WIREFENCE, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_PETE_INTRO_FENCE, OBJ_WIREFENCE, 0x01, 0xffff) if_controller_button_pressed(/*goto*/ 0x00) camera_movement(ANIM_CUT_PETE_INTRO_CAM_04) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_PETE_INTRO_JO_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_chrflag(CHR_CIA1, CHRCFLAG_HIDDEN) @@ -604,7 +604,7 @@ u8 func0405_3d50[] = { cmd0175(60) if_controller_button_pressed(/*goto*/ 0x00) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_PETE_INTRO_JO_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_chrflag(CHR_CIA1, CHRCFLAG_HIDDEN) @@ -635,7 +635,7 @@ u8 func0405_3d50[] = { unset_chr_chrflag(CHR_CIA1, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_PETE_INTRO_JO_02, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) stop_cutscene_track @@ -898,7 +898,7 @@ u8 func040d_limo[] = { label(0x04) set_object_flag2(OBJ_LIMO, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_LIMO, OBJFLAG3_00000010) + set_object_flag3(OBJ_LIMO, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_02D6, OBJ_LIMO, 0x04, 0xffff) assign_sound(SFX_BIKE_ENGINE, CHANNEL_1) @@ -2060,7 +2060,7 @@ u8 func041a_robot[] = { label(0x38) set_chr_chrflag(CHR_ROBOT, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_ROBOT, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_ROBOT, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ROBOT, CHRHFLAG_FINDROOMSFAST) set_self_chrflag(CHRCFLAG_INVINCIBLE) unset_chr_hiddenflag(CHR_SELF, CHRHFLAG_INFINITESHIELD) #if VERSION >= VERSION_NTSC_1_0 @@ -2690,7 +2690,7 @@ u8 func040b_outro[] = { #if VERSION >= VERSION_NTSC_1_0 unset_chr_chrflag(CHR_P1P2, CHRCFLAG_HIDDEN) #endif - set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_PETE_OUTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_P1P2, 4) restart_timer diff --git a/src/setups/setuprit.c b/src/setups/setuprit.c index fb01b9ea6..96f762587 100644 --- a/src/setups/setuprit.c +++ b/src/setups/setuprit.c @@ -2041,15 +2041,15 @@ u8 func1002_intro[] = { camera_movement(ANIM_CUT_RIT_INTRO_CAM_01) set_chr_chrflag(0x30, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x30, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x30, CHRHFLAG_00020000) + set_chr_hiddenflag(0x30, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_RIT_INTRO_STR, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x30, 4) set_chr_chrflag(0x31, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x31, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x31, CHRHFLAG_00020000) + set_chr_hiddenflag(0x31, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_RIT_INTRO_TRENT, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x31, 4) set_chr_chrflag(CHR_PRESIDENT, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_PRESIDENT, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_PRESIDENT, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_PRESIDENT, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_RIT_INTRO_PRES, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_PRESIDENT, 4) set_chr_chrflag(0x13, CHRCFLAG_HIDDEN) set_chr_chrflag(0x14, CHRCFLAG_HIDDEN) @@ -2151,7 +2151,7 @@ u8 func1002_intro[] = { label(0x2d) if_controller_button_pressed(/*goto*/ 0x5f) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_RIT_INTRO_JO_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) beginloop(0x09) @@ -2175,7 +2175,7 @@ u8 func1002_intro[] = { label(0x2d) if_controller_button_pressed(/*goto*/ 0x5f) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_RIT_INTRO_JO_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) beginloop(0x0a) @@ -2191,7 +2191,7 @@ u8 func1002_intro[] = { unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) if_savefile_flag_is_set(GAMEFILEFLAG_AF1_ENTRY, /*goto*/ 0x06) set_chr_hiddenflag(CHR_BOND, CHRHFLAG_TRIGGER_BUDDY_WARP) chr_do_animation(ANIM_CUT_RIT_INTRO_JO_02, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) @@ -3465,28 +3465,28 @@ u8 func0423_outro[] = { set_ailist(CHR_TARGET, GAILIST_IDLE) set_chr_chrflag(CHR_TARGET, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_TARGET, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_TARGET, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TARGET, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_RIT_OUTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TARGET, 4) set_chr_hudpiece_visible(CHR_TARGET, TRUE) set_chr_chrflag(CHR_ELVIS, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_ELVIS, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_RIT_OUTRO_ELVIS, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_ELVIS, 4) enable_object(0x19) set_object_flag2(0x19, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x19, OBJFLAG3_00000010) + set_object_flag3(0x19, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_RIT_OUTRO_SKSHUTTLE, 0x19, 0x04, 0xffff) enable_object(0x1a) set_object_flag2(0x1a, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x1a, OBJFLAG3_00000010) + set_object_flag3(0x1a, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_RIT_OUTRO_UFOEXTERIOR, 0x1a, 0x04, 0xffff) enable_object(0x23) set_object_flag2(0x23, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x23, OBJFLAG3_00000010) + set_object_flag3(0x23, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_RIT_OUTRO_UFOINTERIOR, 0x23, 0x04, 0xffff) enable_object(0x37) set_object_flag2(0x37, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x37, OBJFLAG3_00000010) + set_object_flag3(0x37, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_RIT_OUTRO_PLANE, 0x37, 0x04, 0xffff) restart_timer set_cutscene_weapon(CHR_TARGET, WEAPON_NONE, WEAPON_NONE) @@ -3594,13 +3594,13 @@ u8 func1019_midcutscene[] = { enable_object(0x19) set_object_flag2(0x19, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x19, OBJFLAG3_00000010) + set_object_flag3(0x19, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_RIT_MID_SKSHUTTLE, 0x19, 0x04, 0xffff) object_set_modelpart_visible(0x19, MODELPART_SKSHUTTLE_GANGWAY, TRUE) enable_object(0x37) set_object_flag2(0x37, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x37, OBJFLAG3_00000010) + set_object_flag3(0x37, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_RIT_MID_PLANE, 0x37, 0x04, 0xffff) restart_timer diff --git a/src/setups/setupsev.c b/src/setups/setupsev.c index 413ce371f..f23c93baa 100644 --- a/src/setups/setupsev.c +++ b/src/setups/setupsev.c @@ -1543,10 +1543,10 @@ u8 func1002_intro[] = { camera_movement(ANIM_CUT_SEV_INTRO_CAM) cmd0175(60) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SEV_INTRO_ELVIS, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_object_flag2(OBJ_TROLLEY, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_TROLLEY, OBJFLAG3_00000010) + set_object_flag3(OBJ_TROLLEY, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_SEV_INTRO_BED, OBJ_TROLLEY, 0x04, 0xffff) restart_timer fade_to_color(0x000000ff, 0) @@ -1585,10 +1585,10 @@ u8 func1002_intro[] = { unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_BOND, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SEV_INTRO_ELVIS, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) unset_object_flag2(OBJ_TROLLEY, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_TROLLEY, OBJFLAG3_00000010) + set_object_flag3(OBJ_TROLLEY, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_SEV_INTRO_BED, OBJ_TROLLEY, 0x04, 0xfffe) stop_cutscene_track stop_ambient_track @@ -1605,12 +1605,12 @@ u8 func041b_outro[] = { camera_movement(ANIM_CUT_SEV_OUTRO_CAM) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SEV_OUTRO_ELVIS, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) unset_chr_chrflag(CHR_OUTRO_GUARD, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_OUTRO_GUARD, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_OUTRO_GUARD, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_OUTRO_GUARD, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SEV_OUTRO_GUARD, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_OUTRO_GUARD, 4) show_nonessential_chrs(FALSE) diff --git a/src/setups/setupsho.c b/src/setups/setupsho.c index 39a305970..64eb4b791 100644 --- a/src/setups/setupsho.c +++ b/src/setups/setupsho.c @@ -955,7 +955,7 @@ u8 func0404_miniskedar_spawner[] = { u8 unregistered_function3[] = { camera_movement(ANIM_CUT_SHO_BETA_CAM) yield - set_chr_hiddenflag(0x00, CHRHFLAG_00020000) + set_chr_hiddenflag(0x00, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_BETA_NOCHR, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x00, 4) beginloop(0x08) @@ -2586,12 +2586,12 @@ u8 func0c00_intro[] = { camera_movement(ANIM_CUT_SHO_INTRO_CAM_02) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_INTRO_JO_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_chrflag(CHR_ELVIS, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_ELVIS, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_INTRO_ELVIS_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_ELVIS, 4) set_cutscene_weapon(CHR_BOND, WEAPON_NONE, WEAPON_NONE) @@ -2615,17 +2615,17 @@ u8 func0c00_intro[] = { set_chr_chrflag(0x37, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x37, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x37, CHRHFLAG_00020000) + set_chr_hiddenflag(0x37, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_INTRO_SKEDAR1_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x37, 4) set_chr_chrflag(0x38, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x38, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x38, CHRHFLAG_00020000) + set_chr_hiddenflag(0x38, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_INTRO_SKEDAR2_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x38, 4) set_chr_chrflag(0x39, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x39, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x39, CHRHFLAG_00020000) + set_chr_hiddenflag(0x39, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_INTRO_SKEDAR3_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x39, 4) beginloop(0x0b) @@ -2645,12 +2645,12 @@ u8 func0c00_intro[] = { camera_movement(ANIM_CUT_SHO_INTRO_CAM_04) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_INTRO_JO_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_chrflag(CHR_ELVIS, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_ELVIS, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_INTRO_ELVIS_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_ELVIS, 4) set_cutscene_weapon(CHR_BOND, WEAPON_NONE, WEAPON_NONE) @@ -2674,22 +2674,22 @@ u8 func0c00_intro[] = { set_chr_chrflag(0x37, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x37, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x37, CHRHFLAG_00020000) + set_chr_hiddenflag(0x37, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_INTRO_SKEDAR1_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x37, 4) set_chr_chrflag(0x38, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x38, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x38, CHRHFLAG_00020000) + set_chr_hiddenflag(0x38, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_INTRO_SKEDAR2_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x38, 4) set_chr_chrflag(0x39, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x39, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x39, CHRHFLAG_00020000) + set_chr_hiddenflag(0x39, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_INTRO_SKEDAR3_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x39, 4) set_chr_chrflag(0x3a, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x3a, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x3a, CHRHFLAG_00020000) + set_chr_hiddenflag(0x3a, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_INTRO_SKEDAR4_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x3a, 4) beginloop(0x0d) @@ -2711,7 +2711,7 @@ u8 func0c00_intro[] = { enable_object(0x36) set_object_flag2(0x36, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x36, OBJFLAG3_00000010) + set_object_flag3(0x36, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_SHO_INTRO_SKSHUTTLE_01, 0x36, 0x01, 0xffff) object_set_modelpart_visible(0x36, MODELPART_SKSHUTTLE_GANGWAY, FALSE) @@ -2731,28 +2731,28 @@ u8 func0c00_intro[] = { set_chr_chrflag(0x37, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x37, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x37, CHRHFLAG_00020000) + set_chr_hiddenflag(0x37, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_INTRO_SKEDAR1_03, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x37, 4) set_chr_chrflag(0x38, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x38, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x38, CHRHFLAG_00020000) + set_chr_hiddenflag(0x38, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_INTRO_SKEDAR2_03, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x38, 4) set_chr_chrflag(0x39, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x39, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x39, CHRHFLAG_00020000) + set_chr_hiddenflag(0x39, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_INTRO_SKEDAR3_03, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x39, 4) set_chr_chrflag(0x3a, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x3a, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x3a, CHRHFLAG_00020000) + set_chr_hiddenflag(0x3a, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_INTRO_SKEDAR4_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x3a, 4) unset_chr_chrflag(CHR_KING2, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_KING2, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_KING2, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_KING2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_KING2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_INTRO_KING, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_KING2, 4) set_cutscene_weapon(CHR_BOND, WEAPON_NONE, WEAPON_NONE) @@ -2780,12 +2780,12 @@ u8 func0c00_intro[] = { enable_object(0x36) set_object_flag2(0x36, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x36, OBJFLAG3_00000010) + set_object_flag3(0x36, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_SHO_INTRO_SKSHUTTLE_02, 0x36, 0x04, 0xffff) object_set_modelpart_visible(0x36, MODELPART_SKSHUTTLE_GANGWAY, FALSE) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_INTRO_JO_03, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) beginloop(0x10) @@ -2803,7 +2803,7 @@ u8 func0c00_intro[] = { mute_channel(CHANNEL_7) label(0x06) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_INTRO_JO_03, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) disable_object(0x36) remove_chr(0x37) @@ -2888,7 +2888,7 @@ u8 func0414_outro[] = { set_chr_chrflag(CHR_KING1, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_KING1, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_KING1, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_KING1, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_OUTRO_KING_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_KING1, 4) object_do_animation(ANIM_CUT_SHO_OUTRO_SPIKE_01, OBJ_SPIKE_T, 0x04, 0xffff) @@ -2909,44 +2909,44 @@ u8 func0414_outro[] = { set_chr_chrflag(CHR_KING1, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_KING1, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_KING1, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_KING1, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_OUTRO_KING_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_KING1, 4) set_chr_chrflag(CHR_TARGET, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_TARGET, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_TARGET, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TARGET, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_OUTRO_JO_01, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TARGET, 4) object_do_animation(ANIM_CUT_SHO_OUTRO_SPIKE_02, OBJ_SPIKE_T, 0x04, 0xffff) enable_object(0x37) set_object_flag2(0x37, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x37, OBJFLAG3_00000010) + set_object_flag3(0x37, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_SHO_OUTRO_RUBBLE05, 0x37, 0x04, 0xffff) enable_object(0x38) set_object_flag2(0x38, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x38, OBJFLAG3_00000010) + set_object_flag3(0x38, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_SHO_OUTRO_RUBBLE06, 0x38, 0x04, 0xffff) enable_object(0x39) set_object_flag2(0x39, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x39, OBJFLAG3_00000010) + set_object_flag3(0x39, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_SHO_OUTRO_RUBBLE07, 0x39, 0x04, 0xffff) enable_object(0x3a) set_object_flag2(0x3a, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x3a, OBJFLAG3_00000010) + set_object_flag3(0x3a, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_SHO_OUTRO_RUBBLE08, 0x3a, 0x04, 0xffff) enable_object(0x3b) set_object_flag2(0x3b, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x3b, OBJFLAG3_00000010) + set_object_flag3(0x3b, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_SHO_OUTRO_RUBBLE09, 0x3b, 0x04, 0xffff) enable_object(0x3c) set_object_flag2(0x3c, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x3c, OBJFLAG3_00000010) + set_object_flag3(0x3c, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_SHO_OUTRO_RUBBLE10, 0x3c, 0x04, 0xffff) beginloop(0x09) @@ -2964,32 +2964,32 @@ u8 func0414_outro[] = { set_chr_chrflag(CHR_TARGET, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_TARGET, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_TARGET, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TARGET, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_OUTRO_JO_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_TARGET, 4) set_chr_chrflag(CHR_ELVIS, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_ELVIS, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_SHO_OUTRO_ELVIS_02, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_ELVIS, 4) enable_object(0x23) set_object_flag2(0x23, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x23, OBJFLAG3_00000010) + set_object_flag3(0x23, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_SHO_OUTRO_RUBBLE01, 0x23, 0x04, 0xffff) enable_object(0x24) set_object_flag2(0x24, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x24, OBJFLAG3_00000010) + set_object_flag3(0x24, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_SHO_OUTRO_RUBBLE02, 0x24, 0x04, 0xffff) enable_object(0x25) set_object_flag2(0x25, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x25, OBJFLAG3_00000010) + set_object_flag3(0x25, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_SHO_OUTRO_RUBBLE03, 0x25, 0x04, 0xffff) enable_object(0x26) set_object_flag2(0x26, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(0x26, OBJFLAG3_00000010) + set_object_flag3(0x26, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_SHO_OUTRO_RUBBLE04, 0x26, 0x04, 0xffff) beginloop(0x0b) diff --git a/src/setups/setupstat.c b/src/setups/setupstat.c index 6682ae6d2..f4947fd2b 100644 --- a/src/setups/setupstat.c +++ b/src/setups/setupstat.c @@ -1083,23 +1083,23 @@ u8 func1002_intro[] = { set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) play_cutscene_track(MUSIC_G5_INTRO) - set_chr_hiddenflag(CHR_ANTI, CHRHFLAG_00020000) - set_chr_hiddenflag(CHR_BLONDE, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ANTI, CHRHFLAG_FINDROOMSFAST) + set_chr_hiddenflag(CHR_BLONDE, CHRHFLAG_FINDROOMSFAST) camera_movement(ANIM_CUT_STAT_INTRO_CAM) cmd0175(60) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_STAT_INTRO_MAIAN1, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) unset_chr_chrflag(CHR_MAIAN1, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_MAIAN1, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_MAIAN1, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_MAIAN1, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_STAT_INTRO_MAIAN2, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_MAIAN1, 4) unset_chr_chrflag(CHR_MAIAN2, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_MAIAN2, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_MAIAN2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_MAIAN2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_STAT_INTRO_MAIAN3, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_MAIAN2, 4) restart_timer @@ -1133,18 +1133,18 @@ u8 func1002_intro[] = { mute_channel(CHANNEL_CUTSCENE) unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_ANTI, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ANTI, CHRHFLAG_FINDROOMSFAST) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_STAT_INTRO_MAIAN1, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) unset_chr_chrflag(CHR_MAIAN3, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_MAIAN3, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_MAIAN3, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_STAT_INTRO_MAIAN2, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_MAIAN3, 2) unset_chr_chrflag(CHR_MAIAN4, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_MAIAN4, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_MAIAN4, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_STAT_INTRO_MAIAN3, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_MAIAN4, 2) set_ailist(CHR_MAIAN1, AILIST_INIT_MAIAN) @@ -1165,22 +1165,22 @@ u8 func040b_outro[] = { play_cutscene_track(MUSIC_G5_OUTRO) camera_movement(ANIM_CUT_STAT_OUTRO_CAM) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) set_chr_chrflag(CHR_BOND, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_MAIAN3, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_MAIAN3, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_MAIAN3, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_MAIAN3, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_STAT_OUTRO_MAIAN1, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_MAIAN3, 4) unset_chr_chrflag(CHR_MAIAN4, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_MAIAN4, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_MAIAN4, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_MAIAN4, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_STAT_OUTRO_MAIAN2, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_MAIAN4, 4) unset_chr_chrflag(CHR_MAIAN5, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_MAIAN5, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_MAIAN5, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_MAIAN5, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_STAT_OUTRO_MAIAN3, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_MAIAN5, 4) show_nonessential_chrs(FALSE) diff --git a/src/setups/setuptra.c b/src/setups/setuptra.c index ad1b34bf9..e7a2d4e10 100644 --- a/src/setups/setuptra.c +++ b/src/setups/setuptra.c @@ -2546,23 +2546,23 @@ u8 func1002_intro[] = { cmd0175(60) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_TRA_INTRO_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) set_chr_chrflag(0x23, CHRCFLAG_INVINCIBLE) set_chr_chrflag(0x23, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x23, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x23, CHRHFLAG_00020000) + set_chr_hiddenflag(0x23, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_TRA_INTRO_BIO1, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x23, 4) set_chr_chrflag(0x24, CHRCFLAG_INVINCIBLE) set_chr_chrflag(0x24, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x24, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x24, CHRHFLAG_00020000) + set_chr_hiddenflag(0x24, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_TRA_INTRO_BIO2, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x24, 4) set_object_flag2(OBJ_HOVERBED, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_HOVERBED, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERBED, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_TRA_INTRO_BED, OBJ_HOVERBED, 0x04, 0xffff) restart_timer fade_to_color(0x000000ff, 0) @@ -2837,19 +2837,19 @@ u8 func1002_intro[] = { unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_TRA_INTRO_JO, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) unset_chr_chrflag(0x23, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(0x23, CHRHFLAG_00020000) + set_chr_hiddenflag(0x23, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_TRA_INTRO_BIO1, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x23, 2) unset_chr_chrflag(0x24, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(0x24, CHRHFLAG_00020000) + set_chr_hiddenflag(0x24, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_TRA_INTRO_BIO2, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x24, 2) unset_object_flag2(OBJ_HOVERBED, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_HOVERBED, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERBED, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_TRA_INTRO_BED, OBJ_HOVERBED, 0x04, 0xfffe) drop_concealed_items(0x23) @@ -2898,25 +2898,25 @@ u8 func0c01_midcutscene[] = { #if VERSION >= VERSION_NTSC_1_0 set_chr_chrflag(CHR_TARGET, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_TARGET, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_TARGET, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_TARGET, CHRHFLAG_FINDROOMSFAST) #else set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) #endif chr_do_animation(ANIM_CUT_TRA_MID_JO, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, VERSION >= VERSION_NTSC_1_0 ? CHR_TARGET : CHR_BOND, 4) set_chr_chrflag(CHR_ELVIS, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_ELVIS, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_TRA_MID_ELVIS, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_ELVIS, 4) set_chr_chrflag(CHR_JONATHAN, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_JONATHAN, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_JONATHAN, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_JONATHAN, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_TRA_MID_JON, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_JONATHAN, 4) set_object_flag2(OBJ_HOVERBED_EMPTY, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_HOVERBED_EMPTY, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERBED_EMPTY, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_TRA_MID_BED, OBJ_HOVERBED_EMPTY, 0x04, 0xffff) show_nonessential_chrs(FALSE) @@ -3044,19 +3044,19 @@ u8 func0c01_midcutscene[] = { unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) unset_chr_chrflag(VERSION >= VERSION_NTSC_1_0 ? CHR_TARGET : CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(VERSION >= VERSION_NTSC_1_0 ? CHR_TARGET : CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(VERSION >= VERSION_NTSC_1_0 ? CHR_TARGET : CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_TRA_MID_JO, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, VERSION >= VERSION_NTSC_1_0 ? CHR_TARGET : CHR_BOND, 2) unset_chr_chrflag(CHR_ELVIS, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_TRA_MID_ELVIS, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_ELVIS, 2) unset_chr_chrflag(CHR_JONATHAN, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_JONATHAN, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_JONATHAN, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_TRA_MID_JON, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_JONATHAN, 2) unset_object_flag2(OBJ_HOVERBED_EMPTY, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_HOVERBED_EMPTY, OBJFLAG3_00000010) + set_object_flag3(OBJ_HOVERBED_EMPTY, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_TRA_MID_BED, OBJ_HOVERBED_EMPTY, 0x04, 0xfffe) unset_object_flag2(0x0a, OBJFLAG2_AICANNOTUSE) @@ -3101,7 +3101,7 @@ u8 func0c02_outro[] = { enable_object(OBJ_UFO1) set_object_flag2(OBJ_UFO1, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_UFO1, OBJFLAG3_00000010) + set_object_flag3(OBJ_UFO1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_TRA_OUTRO_UFO_01, OBJ_UFO1, 0x04, 0xffff) set_stage_flag(STAGEFLAG_STARTED_OUTRO) @@ -3126,12 +3126,12 @@ u8 func0c02_outro[] = { enable_object(OBJ_UFO1) set_object_flag2(OBJ_UFO1, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_UFO1, OBJFLAG3_00000010) + set_object_flag3(OBJ_UFO1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_TRA_OUTRO_UFO_02, OBJ_UFO1, 0x04, 0xffff) set_chr_chrflag(0x2b, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(0x2b, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(0x2b, CHRHFLAG_00020000) + set_chr_hiddenflag(0x2b, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_TRA_OUTRO_GUARD, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, 0x2b, 4) open_door(0x2c) @@ -3184,7 +3184,7 @@ u8 func0415_ufo_exit[] = { disable_object(OBJ_UFO2) enable_object(OBJ_UFO1) set_object_flag2(OBJ_UFO1, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_UFO1, OBJFLAG3_00000010) + set_object_flag3(OBJ_UFO1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_TRA_OUTRO_UFO_01, OBJ_UFO1, 0x04, 0xffff) set_chr_chrflag(CHR_ELVIS, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_JONATHAN, CHRCFLAG_HIDDEN) @@ -3247,12 +3247,12 @@ u8 func1021_jo_escaping[] = { enable_object(OBJ_UFO1) set_object_flag2(OBJ_UFO1, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_UFO1, OBJFLAG3_00000010) + set_object_flag3(OBJ_UFO1, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_TRA_OUTRO_UFO_02, OBJ_UFO1, 0x04, 0xffff) set_chr_chrflag(CHR_P1P2, CHRCFLAG_UNPLAYABLE) unset_chr_chrflag(CHR_P1P2, CHRCFLAG_HIDDEN) - set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_P1P2, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_TRA_OUTRO_GUARD, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_P1P2, 4) beginloop(0x09) @@ -3600,7 +3600,7 @@ u8 unregistered_function8[] = { u8 func1026_ufo_spinning[] = { enable_object(OBJ_UFO2) set_object_flag2(OBJ_UFO2, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_UFO2, OBJFLAG3_00000010) + set_object_flag3(OBJ_UFO2, OBJFLAG3_FINDROOMSFAST) label(0x03) object_do_animation(ANIM_0459, OBJ_UFO2, 0x04, 0xffff) diff --git a/src/setups/setupwax.c b/src/setups/setupwax.c index 16fdebe62..94a511c48 100644 --- a/src/setups/setupwax.c +++ b/src/setups/setupwax.c @@ -1981,7 +1981,7 @@ u8 func0416_intro[] = { camera_movement(ANIM_CUT_WAX_INTRO_CAM) cmd0175(60) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_WAX_INTRO_MRB, -1, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 4) restart_timer fade_to_color(0x000000ff, 0) @@ -2040,7 +2040,7 @@ u8 func0416_intro[] = { unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN) unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) chr_do_animation(ANIM_CUT_WAX_INTRO_MRB, -2, -1, CHRANIMFLAG_MOVEWHENINVIS | CHRANIMFLAG_PAUSEATEND, 0, CHR_BOND, 2) stop_cutscene_track stop_ambient_track @@ -2057,13 +2057,13 @@ u8 func0417_outro[] = { play_cutscene_track(MUSIC_G5_OUTRO) camera_movement(ANIM_CUT_WAX_OUTRO_CAM) set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE) - set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000) + set_chr_hiddenflag(CHR_BOND, CHRHFLAG_FINDROOMSFAST) set_chr_chrflag(CHR_BOND, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_CASS, CHRCFLAG_HIDDEN) set_chr_chrflag(CHR_CASS, CHRCFLAG_INVINCIBLE) enable_object(OBJ_SHUTTLE2) set_object_flag2(OBJ_SHUTTLE2, OBJFLAG2_CANFILLVIEWPORT) - set_object_flag3(OBJ_SHUTTLE2, OBJFLAG3_00000010) + set_object_flag3(OBJ_SHUTTLE2, OBJFLAG3_FINDROOMSFAST) object_do_animation(ANIM_CUT_WAX_OUTRO_SKSHUTTLE, OBJ_SHUTTLE2, 0x04, 0xffff) show_nonessential_chrs(FALSE) restart_timer @@ -2161,7 +2161,7 @@ u8 func1010_init_lighting[] = { u8 func1011_shuttle_animation[] = { yield enable_object(OBJ_SHUTTLE1) - set_object_flag3(OBJ_SHUTTLE1, OBJFLAG3_00000010) + set_object_flag3(OBJ_SHUTTLE1, OBJFLAG3_FINDROOMSFAST) object_set_modelpart_visible(OBJ_SHUTTLE1, MODELPART_SKSHUTTLE_GANGWAY, FALSE) label(0x09) restart_timer