diff --git a/src/files/setup/setupame.c b/src/files/setup/setupame.c index a66ba0446..44dea8733 100644 --- a/src/files/setup/setupame.c +++ b/src/files/setup/setupame.c @@ -2110,7 +2110,7 @@ u8 func100e_check_ecm_mines[] = { u8 func1004_check_lab_lift_located[] = { beginloop(0x52) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_LABLIFTDOOR1, /*goto*/ 0x2c) if_chr_activated_object(CHR_P1P2, OBJ_LABLIFTDOOR2, /*goto*/ 0x2c) if_chr_in_room(CHR_P1P2, 0x00, 0x002b, /*goto*/ 0x2c) @@ -2302,7 +2302,7 @@ u8 func1008_doorswitch[] = { // PA beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_DOORSWITCH, /*goto*/ 0x2c) label(0x06) endloop(0x04) @@ -2376,7 +2376,7 @@ u8 func100a_alarm_guard[] = { u8 func100b_lightswitch[] = { beginloop(0x04) - if_chr_activated_object(CHR_F3, OBJ_LIGHTSWITCH, /*goto*/ 0x2c) + if_chr_activated_object(CHR_ANY, OBJ_LIGHTSWITCH, /*goto*/ 0x2c) reloop(0x04) label(0x2c) @@ -3284,8 +3284,8 @@ u8 func1010_start_hub_humms[] = { u8 func1011_check_hubs_activated[] = { beginloop(0x04) - if_chr_activated_object(CHR_F3, OBJ_SECURITYHUB, /*goto*/ 0x08) - if_chr_activated_object(CHR_F3, OBJ_EXTCOMMSHUB, /*goto*/ 0x0a) + if_chr_activated_object(CHR_ANY, OBJ_SECURITYHUB, /*goto*/ 0x08) + if_chr_activated_object(CHR_ANY, OBJ_EXTCOMMSHUB, /*goto*/ 0x0a) reloop(0x04) label(0x08) @@ -3557,7 +3557,7 @@ u8 func1019_toggle_guards[] = { hide_chr(0x16) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_y(CHR_P1P2, -2000, OPERATOR_LESS_THAN, /*goto*/ 0x2c) endloop(0x04) @@ -3685,7 +3685,7 @@ u8 unregistered_function7[] = { u8 func101e_lift_door_sounds[] = { beginloop(0xc4) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_LIFT1DOOR1, /*goto*/ 0x2c) if_chr_activated_object(CHR_P1P2, OBJ_LIFT1DOOR2, /*goto*/ 0x2c) if_chr_activated_object(CHR_P1P2, OBJ_LIFT1DOOR3, /*goto*/ 0x2c) @@ -3726,7 +3726,7 @@ u8 func042e_init_surrendering_guard[] = { u8 func042f_surrendering_guard[] = { // Wait for player detection beginloop(0xc4) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x2c) if_enemy_distance_lt_and_los(500, /*goto*/ 0x2c) @@ -3774,7 +3774,7 @@ u8 func042f_surrendering_guard[] = { if_chr_distance_gt(300, /*goto*/ 0x06) if_chr_in_view(/*goto*/ 0x28) label(0x06) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x58) endloop(0x55) diff --git a/src/files/setup/setupark.c b/src/files/setup/setupark.c index 96bd3016a..2483df177 100644 --- a/src/files/setup/setupark.c +++ b/src/files/setup/setupark.c @@ -942,7 +942,7 @@ u8 func0406_general_combat[] = { set_view_distance(100) label(0x20) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_stage_flag_eq(STAGEFLAG_FOYER_LIGHTS_RESTORED, TRUE, /*goto*/ 0x00) if_target_chr_in_sight(/*goto*/ 0x15) @@ -1027,7 +1027,7 @@ u8 func0406_general_combat[] = { say_quip(CHR_BOND, 0x12, 0xff, 0x03, 0xff, BANK_0, 0x00, 0x00) beginloop(0x1c) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) call_rng if_target_chr_in_sight(/*goto*/ 0x19) @@ -1046,7 +1046,7 @@ u8 func0406_general_combat[] = { restart_timer beginloop(0x1b) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x19) if_timer_gt(300, /*goto*/ 0x00) @@ -1318,7 +1318,7 @@ u8 func0408_hovercopter[] = { u8 func1002_check_accessed_foyer_elevator[] = { beginloop(0x21) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_y(CHR_TARGET, -8155, OPERATOR_LESS_THAN, /*goto*/ 0x20) if_chr_distance_to_pad_lt(CHR_TARGET, 300, 0x021a, /*goto*/ 0x00) @@ -1334,7 +1334,7 @@ u8 func1002_check_accessed_foyer_elevator[] = { u8 func1003_check_end_level[] = { beginloop(0x21) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_distance_to_pad_lt(CHR_P1P2, 200, 0x0002, /*goto*/ 0x00) reloop(0x21) @@ -1381,7 +1381,7 @@ u8 func1004_elevator_unlocking[] = { set_function(CHR_SELF, GFUNC_IDLE) beginloop(0x1f) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_activated_object(CHR_TARGET, 0x01, /*goto*/ 0x20) if_object_in_good_condition(0x01, /*goto*/ 0x00) @@ -1578,7 +1578,7 @@ u8 func1009_init_top_room[] = { set_chr_flag_bank3(CHR_CASS, CHRFLAG3_INVINCIBLE_TO_GUNFIRE) beginloop(0x1f) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0039, /*goto*/ 0x00) if_chr_activated_object(CHR_P1P2, OBJ_TOPROOMDOOR, /*goto*/ 0x00) endloop(0x1f) @@ -1630,7 +1630,7 @@ u8 func0409_tech_conversation[] = { set_onshot_function(GFUNC_IDLE) beginloop(0x01) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_activated_object(CHR_TARGET, 0x11, /*goto*/ 0x00) if_door_state(0x11, DOORSTATEBIT_OPEN, /*goto*/ 0x00) @@ -1671,7 +1671,7 @@ u8 func0409_tech_conversation[] = { beginloop(0x21) if_shot_near_chr(0x00, /*goto*/ 0x33) if_saw_death(0x00, /*goto*/ 0x33) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x33) if_target_chr_in_sight(/*goto*/ 0x33) @@ -1692,7 +1692,7 @@ u8 func0409_tech_conversation[] = { beginloop(0x22) if_shot_near_chr(0x00, /*goto*/ 0x33) if_saw_death(0x00, /*goto*/ 0x33) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x33) if_target_chr_in_sight(/*goto*/ 0x33) @@ -1713,7 +1713,7 @@ u8 func0409_tech_conversation[] = { beginloop(0x23) if_shot_near_chr(0x00, /*goto*/ 0x33) if_saw_death(0x00, /*goto*/ 0x33) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x33) if_target_chr_in_sight(/*goto*/ 0x33) @@ -1734,7 +1734,7 @@ u8 func0409_tech_conversation[] = { beginloop(0x24) if_shot_near_chr(0x00, /*goto*/ 0x33) if_saw_death(0x00, /*goto*/ 0x33) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x33) if_target_chr_in_sight(/*goto*/ 0x33) @@ -1756,7 +1756,7 @@ u8 func0409_tech_conversation[] = { beginloop(0x25) if_shot_near_chr(0x00, /*goto*/ 0x33) if_saw_death(0x00, /*goto*/ 0x33) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x33) if_target_chr_in_sight(/*goto*/ 0x33) @@ -1776,7 +1776,7 @@ u8 func0409_tech_conversation[] = { beginloop(0x26) if_shot_near_chr(0x00, /*goto*/ 0x33) if_saw_death(0x00, /*goto*/ 0x33) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x33) if_chr_sees_player(/*goto*/ 0x20) @@ -1847,7 +1847,7 @@ u8 func040a_tech2[] = { stop_chr beginloop(0x1f) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_stage_flag_eq(STAGEFLAG_TECHS_FINISHED, TRUE, /*goto*/ 0x20) if_target_chr_in_sight(/*goto*/ 0x33) @@ -1858,7 +1858,7 @@ u8 func040a_tech2[] = { stop_chr beginloop(0x21) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x00) reloop(0x21) @@ -2077,7 +2077,7 @@ u8 func040d_cass[] = { // And not in sight label(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_within_units_of_sight(30, /*goto*/ 0x20) set_target_chr(CHR_ANTI) @@ -2102,7 +2102,7 @@ u8 func040d_cass[] = { u8 func101f_unlock_top_door[] = { beginloop(0x1f) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x003b, /*goto*/ 0x20) endloop(0x1f) @@ -2123,7 +2123,7 @@ u8 func040e_noop2[] = { u8 func100a_lightswitch[] = { beginloop(0x1f) - if_chr_activated_object(CHR_F3, OBJ_LIGHTSWITCH, /*goto*/ 0x20) + if_chr_activated_object(CHR_ANY, OBJ_LIGHTSWITCH, /*goto*/ 0x20) reloop(0x1f) label(0x20) @@ -2633,7 +2633,7 @@ u8 func0413_defend_pad[] = { set_onshot_function(FUNC_GENERAL_COMBAT) beginloop(0x1f) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x21) if_enemy_distance_lt_and_los(2540, /*goto*/ 0x21) @@ -2940,7 +2940,7 @@ u8 func101a_set_rocketlauncher_flag[] = { u8 func101b_lift_door_sounds[] = { beginloop(0x8d) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, 0x23, /*goto*/ 0x20) if_chr_activated_object(CHR_P1P2, 0x27, /*goto*/ 0x5e) if_chr_activated_object(CHR_P1P2, 0x20, /*goto*/ 0x20) diff --git a/src/files/setup/setupazt.c b/src/files/setup/setupazt.c index ae3338f53..b03d02922 100644 --- a/src/files/setup/setupazt.c +++ b/src/files/setup/setupazt.c @@ -784,7 +784,7 @@ u8 func0406_init_stripes[] = { u8 func1003_msg_therestheescapepod[] = { beginloop(0x06) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_distance_to_pad_lt(CHR_P1P2, 1000, 0x01d8, /*goto*/ 0x31) endloop(0x06) @@ -810,7 +810,7 @@ u8 func1005_msg_thejamming[] = { if_difficulty_lt(DIFF_PA, /*goto*/ 0x0f) beginloop(0x06) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_objective_complete(2, /*goto*/ 0x0f) if_chr_in_room(CHR_P1P2, 0x00, 0x0029, /*goto*/ 0x31) endloop(0x06) @@ -824,7 +824,7 @@ u8 func1005_msg_thejamming[] = { u8 func1006_msg_elvisbeable[] = { beginloop(0x06) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_distance_to_pad_lt(CHR_P1P2, 1000, 0x0105, /*goto*/ 0x31) endloop(0x06) @@ -1049,7 +1049,7 @@ u8 func0416_spawned_guard[] = { u8 func1008_escapepod[] = { beginloop(0x06) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_object_in_good_condition(OBJ_ESCAPEPOD, /*goto*/ 0x31) // Pod destroyed @@ -1270,7 +1270,7 @@ u8 func0418_robot[] = { beginloop(0x04) dprint 'P','A','R','T',' ','1','\n',0, - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x0d) if_target_chr_in_sight(/*goto*/ 0x0d) @@ -1324,10 +1324,10 @@ u8 func0418_robot[] = { if_chr_distance_gt(1000, /*goto*/ 0x15) dprint 'P','A','R','T',' ','2','\n',0, if_target_chr_in_sight(/*goto*/ 0x13) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x13) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) label(0x15) endloop(0x0a) @@ -1361,7 +1361,7 @@ u8 func0414_spawner[] = { set_self_flag_bank3(CHRFLAG3_00000002) beginloop(0x06) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x0a) // Room 0x0029 is the skedar shuttle area @@ -1416,7 +1416,7 @@ u8 func041a_pres_clone[] = { set_self_flag_bank3(CHRFLAG3_00080000) beginloop(0x06) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x31) if_player_looking_at_something_maybe(0x00, 0x00, 0x01, /*goto*/ 0x08) @@ -1475,7 +1475,7 @@ u8 func041c_president_waiting[] = { // Wait until trigger and can see player beginloop(0x06) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_stage_flag_eq(STAGEFLAG_TRIGGER_PRESIDENT_RUNNING, TRUE, /*goto*/ 0x31) goto_first(0x06) @@ -1711,7 +1711,7 @@ u8 func041e_trent_waiting[] = { set_chr_flag_bank2(CHR_SELF, CHRFLAG2_10000000) beginloop(0x06) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x08) endloop(0x06) @@ -1735,7 +1735,7 @@ u8 func041f_trent_shooting[] = { stop_chr beginloop(0x06) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) try_unset_chr_flag_bank3_02000000(CHR_SELF, /*goto*/ 0x31) if_target_chr_in_sight(/*goto*/ 0x08) @@ -1793,7 +1793,7 @@ u8 func0420_trent_running[] = { endloop(0x0a) label(0x31) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x31) goto_next(0x08) diff --git a/src/files/setup/setupcave.c b/src/files/setup/setupcave.c index 5e65ecde6..b6c853dbe 100644 --- a/src/files/setup/setupcave.c +++ b/src/files/setup/setupcave.c @@ -1179,7 +1179,7 @@ u8 func0407_stewardess[] = { restart_timer beginloop(0x11) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_stage_flag_eq(STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE, TRUE, /*goto*/ 0x75) if_chr_distance_gt(200, /*goto*/ 0x75) @@ -1208,7 +1208,7 @@ u8 func0407_stewardess[] = { // Walking beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_stage_flag_eq(STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE, TRUE, /*goto*/ 0x75) if_chr_distance_gt(200, /*goto*/ 0x75) @@ -1281,7 +1281,7 @@ u8 func0407_stewardess[] = { dprint 'W','A','L','K','F','A','I','L','\n',0, beginloop(0x49) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_stage_flag_eq(STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE, TRUE, /*goto*/ 0x75) if_chr_distance_gt(200, /*goto*/ 0x75) @@ -1303,7 +1303,7 @@ u8 func0407_stewardess[] = { restart_timer beginloop(0x4b) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_stage_flag_eq(STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE, TRUE, /*goto*/ 0x75) if_chr_distance_gt(200, /*goto*/ 0x75) @@ -1319,7 +1319,7 @@ u8 func0407_stewardess[] = { stop_chr beginloop(0x10) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_stage_flag_eq(STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE, TRUE, /*goto*/ 0x75) if_chr_distance_gt(200, /*goto*/ 0x75) @@ -1510,7 +1510,7 @@ u8 func0408_secretary[] = { // MAIN LOOP // beginloop(LABEL_MAIN_LOOP) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) set_view_distance(100) if_shot_near_chr(0x00, /*goto*/ LABEL_BECOME_ALERT1) @@ -1706,7 +1706,7 @@ u8 func0408_secretary[] = { u8 unregistered_function2[] = { beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_flag_bank2(CHR_P1P2, CHRFLAG2_DISGUISED, /*goto*/ 0x02) endloop(0x00) @@ -1722,7 +1722,7 @@ u8 unregistered_function2[] = { u8 func1007_console_activation[] = { beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_object_in_good_condition(OBJ_CONSOLE, /*goto*/ 0x31) goto_next(0x0c) @@ -1768,7 +1768,7 @@ u8 func1007_console_activation[] = { play_x_music(0x58, 88) // @bug? Invalid channel beginloop(0x06) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_y(CHR_P1P2, -2000, OPERATOR_LESS_THAN, /*goto*/ 0x02) endloop(0x06) @@ -1943,7 +1943,7 @@ u8 func1021_weapon_scanning_coop[] = { u8 func1009_carousel_activation[] = { beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_BAGGAGE_CARRIER, /*goto*/ 0x02) if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x31) reloop(0x00) @@ -2063,7 +2063,7 @@ u8 func0409_office1[] = { animation(ANIM_SITTING_DORMANT, 0, -1, 0x14, 0x10, CHR_SELF, 2) beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x02) if_shot_near_chr(0x00, /*goto*/ LABEL_RUN_TO_FOYER) @@ -2213,7 +2213,7 @@ u8 func040a_office2[] = { label(0x02) beginloop(0x09) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x02) if_shot_near_chr(0x00, /*goto*/ 0x02) @@ -2270,7 +2270,7 @@ u8 func040a_office2[] = { u8 func100c_check_end_level[] = { beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_objective_complete(0, /*goto*/ 0x31) goto_first(0x00) @@ -2347,7 +2347,7 @@ u8 func100c_check_end_level[] = { u8 func100d_laser_panel[] = { beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_LASER_PANEL, /*goto*/ 0x04) if_object_in_good_condition(OBJ_LASER_PANEL, /*goto*/ 0x02) goto_next(0x05) @@ -2434,7 +2434,7 @@ u8 func040f_nsa[] = { beginloop(0x06) dprint 'G','O',' ','F','O','R',' ','P','A','D','\n',0, - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_distance_lt(250, /*goto*/ 0x64) if_self_flag_bankx_eq(CHRFLAG0_00000080, TRUE, BANK_0, /*goto*/ 0x33) @@ -2465,7 +2465,7 @@ u8 func040f_nsa[] = { stop_chr beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) dprint 'W','A','I','T',' ','F','O','R',' ','C','H','R','\n',0, set_target_chr(CHR_P1P2) if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x0b) @@ -2614,7 +2614,7 @@ u8 func0411_takeover_lackey[] = { set_function(CHR_SELF, GFUNC_IDLE) beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_dying(0x0c, /*goto*/ 0x7b) if_chr_death_animation_finished(0x0c, /*goto*/ 0x7b) @@ -2686,7 +2686,7 @@ u8 func0414_officeworker[] = { animation(ANIM_SITTING_DORMANT, -1, 60, 0x14, 0x00, CHR_SELF, 2) beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x07) if_chr_idle(/*goto*/ 0x02) @@ -2730,7 +2730,7 @@ u8 func0414_officeworker[] = { animation(ANIM_COWER_0229, -1, 60, 0x14, 0x0a, CHR_SELF, 2) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x02) if_chr_idle(/*goto*/ 0x31) @@ -3144,7 +3144,7 @@ u8 func042a_foyer_spawner[] = { set_self_flag_bank3(CHRFLAG3_00040000) beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x02) if_chr_y(CHR_TARGET, -4800, OPERATOR_LESS_THAN, /*goto*/ 0x09) @@ -3369,7 +3369,7 @@ u8 func0419_ba8c[] = { restart_timer label(0x72) yield - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_saw_death(0x00, /*goto*/ 0x4f) if_shot_near_chr(0x00, /*goto*/ 0x0f) @@ -3491,7 +3491,7 @@ u8 func1018_safe_switch[] = { // Wait for player to activate switch beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_SAFE_SWITCH, /*goto*/ 0x31) endloop(0x00) @@ -3508,7 +3508,7 @@ u8 func1018_safe_switch[] = { // Wait for player to press button again beginloop(0x06) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_SAFE_SWITCH, /*goto*/ 0x31) endloop(0x06) @@ -3555,7 +3555,7 @@ u8 func1018_safe_switch_cover[] = { set_object_flag_bank0(OBJ_SAFE_SWITCH_COVER, OBJECTFLAG0_DEACTIVATED) beginloop(0x00) - if_chr_activated_object(CHR_F3, OBJ_SAFE_SWITCH_COVER, /*goto*/ 0x31) + if_chr_activated_object(CHR_ANY, OBJ_SAFE_SWITCH_COVER, /*goto*/ 0x31) endloop(0x00) label(0x31) @@ -3575,7 +3575,7 @@ u8 func1018_safe_switch_cover[] = { u8 func101a_check_disguise_used[] = { beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_flag_bank2(CHR_P1P2, CHRFLAG2_DISGUISED, /*goto*/ 0x31) endloop(0x00) @@ -3872,7 +3872,7 @@ u8 func101d_msg_usethatcase[] = { restart_timer beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_has_object(CHR_P1P2, OBJ_BRIEFCASE1, /*goto*/ 0x31) endloop(0x00) @@ -3915,7 +3915,7 @@ u8 func101e_msg_casewillgetstopped[] = { u8 func101f_msg_smallerthanithought[] = { beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0025, /*goto*/ 0x31) if_chr_in_room(CHR_P1P2, 0x00, 0x001c, /*goto*/ 0x31) endloop(0x00) @@ -3993,7 +3993,7 @@ u8 func0416_watch_flag[] = { u8 func101a_check_disguise_used2[] = { beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_has_object(CHR_P1P2, OBJ_UNIFORM, /*goto*/ 0x02) endloop(0x00) @@ -4139,7 +4139,7 @@ u8 func141b_setup_lifts_and_doors[] = { u8 func1029_lift_doors[] = { beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, 0x37, /*goto*/ 0x31) if_chr_activated_object(CHR_P1P2, 0x38, /*goto*/ 0x31) if_chr_activated_object(CHR_P1P2, 0x39, /*goto*/ 0x31) @@ -4235,7 +4235,7 @@ u8 func102d_check_console_destroyed[] = { u8 func102e_check_base_entered[] = { beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x002e, /*goto*/ 0x31) endloop(0x00) @@ -4311,7 +4311,7 @@ u8 func1032_unhide_guards_near_plane[] = { // elevator all the way to the bottom, then come out and turn left, you'll // walk through these rooms before reaching the stairs. beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0016, /*goto*/ 0x31) if_chr_in_room(CHR_P1P2, 0x00, 0x0017, /*goto*/ 0x31) endloop(0x00) diff --git a/src/files/setup/setupdam.c b/src/files/setup/setupdam.c index 024edc581..f0d6d3e10 100644 --- a/src/files/setup/setupdam.c +++ b/src/files/setup/setupdam.c @@ -1011,7 +1011,7 @@ u8 unregistered_function1[] = { u8 func1004_msg_controlledfrom[] = { restart_timer beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0027, /*goto*/ 0x07) endloop(0x00) @@ -1023,7 +1023,7 @@ u8 func1004_msg_controlledfrom[] = { u8 func1005_msg_withoutautopilot[] = { beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x007e, /*goto*/ 0x07) endloop(0x00) @@ -1035,7 +1035,7 @@ u8 func1005_msg_withoutautopilot[] = { u8 func1006_msg_conductoperations[] = { beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x007f, /*goto*/ 0x07) endloop(0x00) @@ -1068,7 +1068,7 @@ u8 unregistered_function2[] = { u8 func1009_open_reactor_hatch[] = { // Wait for all switches active beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_stage_flag_eq(STAGEFLAG_HATCHSWITCH1_ACTIVATED, TRUE, /*goto*/ 0x07) reloop(0x00) @@ -1095,7 +1095,7 @@ u8 func1009_open_reactor_hatch[] = { u8 func100a_reactor_switch[] = { beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_object_in_good_condition(OBJ_REACTOR_SWITCH, /*goto*/ 0x07) message(CHR_BOND, 0x1624) // "Critical mission object has been destroyed." set_stage_flag(STAGEFLAG_REACTOR_SWITCH_DESTROYED) @@ -1126,7 +1126,7 @@ u8 func100a_reactor_switch[] = { u8 func100b_check_diving_area_located[] = { beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_stage_flag_eq(STAGEFLAG_MET_ELVIS, TRUE, /*goto*/ 0x07) reloop(0x00) @@ -1179,7 +1179,7 @@ u8 func100c_check_end_level[] = { set_function(CHR_ELVIS, FUNC_ELVIS_AT_MOONPOOL) beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0064, /*goto*/ 0x07) reloop(0x00) @@ -1356,7 +1356,7 @@ u8 func040b_labtech1[] = { label(0x04) beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x0f) if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x0f) @@ -1431,7 +1431,7 @@ u8 func040c_labtech2[] = { label(0x04) beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x0f) if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x0f) @@ -1510,7 +1510,7 @@ u8 func040d_labtech3[] = { label(0x04) beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x0f) if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x10) @@ -1624,7 +1624,7 @@ u8 func0411_labtech_alerted[] = { animation(ANIM_COWER_0229, -1, -1, 0x10, 0x0a, CHR_SELF, 2) beginloop(0x11) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_timer_gt(1200, /*goto*/ 0x0d) if_chr_sees_player(/*goto*/ 0x07) @@ -1885,7 +1885,7 @@ u8 func0401_pilot[] = { // Alive - wait for player to arrive beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x07) if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x04) @@ -1901,7 +1901,7 @@ u8 func0401_pilot[] = { beginloop(0x0b) // Wait for Jo nearby - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_distance_lt(200, /*goto*/ 0x07) reloop(0x0b) @@ -2228,7 +2228,7 @@ u8 func0404_angry_pilot[] = { u8 func1013_lift_switch[] = { beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_LIFT_SWITCH, /*goto*/ 0x07) endloop(0x00) @@ -2245,7 +2245,7 @@ u8 func1013_lift_switch[] = { u8 func1014_moonpool_switch[] = { beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_object_in_good_condition(OBJ_MOONPOOL_SWITCH, /*goto*/ 0x08) if_difficulty_lt(DIFF_SA, /*goto*/ 0x10) message(CHR_P1P2, 0x1624) // "Critical mission object has been destroyed." @@ -2309,7 +2309,7 @@ u8 func1015_shuffle_hatchswitches[] = { yield \ \ beginloop(0x00) \ - consider_coop_for_p1p2_chr(CHR_SELF) \ + chr_toggle_p1p2(CHR_SELF) \ if_chr_activated_object(CHR_P1P2, switch, /*goto*/ 0x07) \ endloop(0x00) \ \ @@ -2682,7 +2682,7 @@ u8 func0418_elvis_at_moonpool[] = { set_onshot_function(FUNC_ELVIS_LEADING) beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x07) endloop(0x00) @@ -2801,7 +2801,7 @@ u8 func0417_elvis_prepare_leading[] = { u8 func101d_alarm_switches[] = { beginloop(0x00) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, 0x21, /*goto*/ 0x07) if_chr_activated_object(CHR_P1P2, 0x22, /*goto*/ 0x07) if_chr_activated_object(CHR_P1P2, 0x23, /*goto*/ 0x07) diff --git a/src/files/setup/setupdepo.c b/src/files/setup/setupdepo.c index ed1e27de0..fe625f195 100644 --- a/src/files/setup/setupdepo.c +++ b/src/files/setup/setupdepo.c @@ -533,7 +533,7 @@ u8 func040c_start_path03[] = { u8 func1008_check_generator[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_GENERATOR, /*goto*/ 0x08) if_object_in_good_condition(OBJ_GENERATOR, /*goto*/ 0x2c) if_stage_flag_eq(STAGEFLAG_GENERATOR_SHUT_DOWN, TRUE, /*goto*/ 0x2c) @@ -574,7 +574,7 @@ u8 func1003_laser_switch_1[] = { play_sound_from_object(CHANNEL_0, OBJ_LASER_1A, 0x012c, 0x0190) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_LASERSWITCH1, /*goto*/ 0x08) if_object_in_good_condition(OBJ_LASERSWITCH1, /*goto*/ 0x2c) if_stage_flag_eq(STAGEFLAG_LASERSET1_DISABLED, TRUE, /*goto*/ 0x2c) @@ -640,7 +640,7 @@ u8 func1004_laser_switch_2[] = { play_sound_from_object(CHANNEL_1, OBJ_LASER_2A, 0x012c, 0x0190) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_LASERSWITCH2, /*goto*/ 0x08) if_object_in_good_condition(OBJ_LASERSWITCH2, /*goto*/ 0x2c) if_stage_flag_eq(STAGEFLAG_LASERSET2_DISABLED, TRUE, /*goto*/ 0x2c) @@ -707,7 +707,7 @@ u8 func1005_laser_switch_3[] = { play_sound_from_object(CHANNEL_2, OBJ_LASER_3A, 0x012c, 0x0190) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_LASERSWITCH3, /*goto*/ 0x08) if_object_in_good_condition(OBJ_LASERSWITCH3, /*goto*/ 0x2c) if_stage_flag_eq(STAGEFLAG_LASERSET3_DISABLED, TRUE, /*goto*/ 0x2c) @@ -773,7 +773,7 @@ u8 func1006_laser_switch_4[] = { play_sound_from_object(CHANNEL_3, OBJ_LASER_4A, 0x012c, 0x0190) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_LASERSWITCH4, /*goto*/ 0x08) if_object_in_good_condition(OBJ_LASERSWITCH4, /*goto*/ 0x2c) if_stage_flag_eq(STAGEFLAG_LASERSET4_DISABLED, TRUE, /*goto*/ 0x2c) @@ -1068,7 +1068,7 @@ u8 func0401_init_swat1[] = { init_swat beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x2c) if_enemy_distance_lt_and_los(2540, /*goto*/ 0x2c) @@ -1092,7 +1092,7 @@ u8 func0402_init_swat2[] = { init_swat beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x2c) if_enemy_distance_lt_and_los(2540, /*goto*/ 0x2c) @@ -1212,7 +1212,7 @@ u8 func100a_give_keycards[] = { u8 func100b_check_backup_collected[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_has_object(CHR_P1P2, OBJ_BACKUPDISK, /*goto*/ 0x2c) endloop(0x04) @@ -1289,7 +1289,7 @@ u8 func100e_check_conspirators_alerted[] = { u8 func100f_alarm_switches[] = { // Wait until player activated alarm switch beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_ALARM1, /*goto*/ 0x2c) if_chr_activated_object(CHR_P1P2, OBJ_ALARM2, /*goto*/ 0x2c) reloop(0x04) @@ -1313,7 +1313,7 @@ u8 func100f_alarm_switches[] = { u8 func1010_safe_cracking[] = { // Wait for player to activate keypad or for it to be destroyed beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_object_in_good_condition(OBJ_SAFEKEYPAD, /*goto*/ 0x2c) message(CHR_BOND, 0x1840) // "Mission critical object destroyed." set_stage_flag(STAGEFLAG_SAFEKEYPAD_DESTROYED) @@ -1385,7 +1385,7 @@ u8 func1010_safe_cracking[] = { u8 func1012_check_for_end[] = { // Wait until player on ending catwalk beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0060, /*goto*/ 0x06) if_chr_in_room(CHR_P1P2, 0x00, 0x0061, /*goto*/ 0x06) reloop(0x08) @@ -1463,7 +1463,7 @@ u8 func1013_check_escape_doors[] = { u8 func1014_check_camspy_location[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(0x00, /*camspy*/ 0x02, 0x0094, /*goto*/ 0x06) endloop(0x04) @@ -2255,7 +2255,7 @@ u8 func0412_cloak_guard[] = { // Choose target label(0x03) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) label(0x06) restart_timer @@ -2329,7 +2329,7 @@ u8 func0413_cloak1_guard[] = { restart_timer beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_distance_lt(400, /*goto*/ 0x06) if_jo_front_direction_lt(30, /*goto*/ 0x06) @@ -2368,7 +2368,7 @@ u8 func0414_init_cloak2_guard[] = { u8 func101b_cloak2_entry[] = { // Wait until in glass area of second cloak room beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x001a, /*goto*/ 0x06) endloop(0x08) @@ -2524,7 +2524,7 @@ u8 func101c_check_visited_top_door[] = { // Wait until player gone near top fire escape door beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_distance_to_pad_lt(CHR_P1P2, 400, 0x0058, /*goto*/ 0x06) endloop(0x08) @@ -2588,7 +2588,7 @@ u8 func0408_init_cloak1_guard[] = { u8 func101e_msg_nowaythrough[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_stage_flag_eq(STAGEFLAG_LASERSET1_DISABLED, FALSE, /*goto*/ 0x2c) if_stage_flag_eq(STAGEFLAG_LASERSET2_DISABLED, FALSE, /*goto*/ 0x2c) if_stage_flag_eq(STAGEFLAG_LASERSET3_DISABLED, FALSE, /*goto*/ 0x2c) @@ -2611,7 +2611,7 @@ u8 func101f_msg_meetingroomahead[] = { beginloop(0x04) if_stage_flag_eq(STAGEFLAG_MEETING_HOLOGRAPHED, TRUE, /*goto*/ 0x0d) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x004c, /*goto*/ 0x2c) reloop(0x04) @@ -2631,7 +2631,7 @@ u8 func101f_msg_meetingroomahead[] = { u8 func1020_msg_heavilyencrypted[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0050, /*goto*/ 0x2c) endloop(0x04) @@ -2644,7 +2644,7 @@ u8 func1020_msg_heavilyencrypted[] = { u8 func1021_blow_mines[] = { // Wait for backup collected beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_stage_flag_eq(STAGEFLAG_BACKUP_COLLECTED, TRUE, /*goto*/ 0x2c) endloop(0x04) @@ -2695,7 +2695,7 @@ u8 func1021_blow_mines[] = { u8 func1022_light_switch[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_LIGHTSWITCH, /*goto*/ 0x2c) reloop(0x04) diff --git a/src/files/setup/setupdish.c b/src/files/setup/setupdish.c index 797f0c397..b45ee9429 100644 --- a/src/files/setup/setupdish.c +++ b/src/files/setup/setupdish.c @@ -983,7 +983,7 @@ u8 func1003_devicetraining_nightvision[] = { label(0x57) set_stage_flag(STAGEFLAG_TRIGGER_CANNOTEXIT_MSG) label(0x59) - if_chr_activated_object(CHR_F3, OBJ_LIGHTSWITCH, /*goto*/ 0x2f) + if_chr_activated_object(CHR_ANY, OBJ_LIGHTSWITCH, /*goto*/ 0x2f) endloop(0x82) label(0x2f) @@ -3548,7 +3548,7 @@ u8 func101c_holo1_main[] = { unset_object_flag_bank1(object, OBJECTFLAG1_00040000) \ \ beginloop(0x04) \ - if_chr_activated_object(CHR_F3, object, /*goto*/ 0x2f) \ + if_chr_activated_object(CHR_ANY, object, /*goto*/ 0x2f) \ reloop(0x04) \ \ label(0x2f) \ @@ -3590,7 +3590,7 @@ u8 func1020_holo1_monitor_switches[] = { unset_object_flag_bank1(0x4f, OBJECTFLAG1_00040000) beginloop(0x04) - if_chr_activated_object(CHR_F3, 0x4f, /*goto*/ 0x2f) + if_chr_activated_object(CHR_ANY, 0x4f, /*goto*/ 0x2f) reloop(0x04) label(0x2f) @@ -3889,7 +3889,7 @@ u8 func1022_holo2_main[] = { #define holo2_do_thing(object, function) \ restart_timer \ beginloop(0x04) \ - if_chr_activated_object(CHR_F3, object, /*goto*/ 0x2f) \ + if_chr_activated_object(CHR_ANY, object, /*goto*/ 0x2f) \ if_object_flag_bank1(object, OBJECTFLAG1_00000001, /*goto*/ 0x06) \ reloop(0x04) \ \ @@ -4273,7 +4273,7 @@ u8 func102b_holo3_part2[] = { u8 func102c_holo3_object1[] = { beginloop(0x04) - if_chr_activated_object(CHR_F3, 0x65, /*goto*/ 0x2f) + if_chr_activated_object(CHR_ANY, 0x65, /*goto*/ 0x2f) endloop(0x04) label(0x2f) @@ -4288,7 +4288,7 @@ u8 func102c_holo3_object1[] = { u8 func102d_holo3_object2[] = { beginloop(0x04) - if_chr_activated_object(CHR_F3, 0x66, /*goto*/ 0x2f) + if_chr_activated_object(CHR_ANY, 0x66, /*goto*/ 0x2f) endloop(0x04) label(0x2f) @@ -5684,7 +5684,7 @@ u8 func1035_manage_music[] = { #define do_gun_msg(object, text) \ beginloop(0x03) \ - if_chr_activated_object(CHR_F3, object, /*goto*/ 0x2f) \ + if_chr_activated_object(CHR_ANY, object, /*goto*/ 0x2f) \ reloop(0x03) \ \ label(0x2f) \ @@ -5818,7 +5818,7 @@ u8 func1040_lift_door_sounds[] = { // Play sounds when lift doors activated beginloop(0x8f) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, 0x80, /*goto*/ 0x2f) if_chr_activated_object(CHR_P1P2, 0x81, /*goto*/ 0x2f) if_chr_activated_object(CHR_P1P2, 0x82, /*goto*/ 0x2f) diff --git a/src/files/setup/setupear.c b/src/files/setup/setupear.c index 2378b4384..3b98de21c 100644 --- a/src/files/setup/setupear.c +++ b/src/files/setup/setupear.c @@ -938,7 +938,7 @@ u8 func0404_scientist[] = { stop_chr beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x2f) if_chr_distance_lt(500, /*goto*/ 0x2f) @@ -1296,7 +1296,7 @@ u8 func0406_nasty_scientist[] = { u8 func1009_weaponscache[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_activated_object(CHR_TARGET, OBJ_CACHETERMINAL, /*goto*/ 0x2f) endloop(0x04) @@ -1343,7 +1343,7 @@ u8 func1002_bot_activation_terminal[] = { set_function(CHR_SELF, GFUNC_IDLE) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_activated_object(CHR_TARGET, OBJ_BOT_ACTIVATION_TERMINAL, /*goto*/ 0x2f) reloop(0x04) @@ -1421,7 +1421,7 @@ u8 func1003_bot_programming_terminal[] = { set_function(CHR_SELF, GFUNC_IDLE) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_activated_object(CHR_TARGET, OBJ_BOT_PROGRAMMING_TERMINAL, /*goto*/ 0x2f) reloop(0x04) @@ -1505,7 +1505,7 @@ u8 func1018_item_pickup_messages[] = { if_difficulty_lt(DIFF_PA, /*goto*/ 0x0d) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_stage_flag_eq(STAGEFLAG_HAS_K7AVENGER, TRUE, /*goto*/ 0x2f) if_chr_has_object(CHR_P1P2, OBJ_K7AVENGER, /*goto*/ 0x06) goto_next(0x2f) @@ -1596,7 +1596,7 @@ u8 func1005_check_unacceptable_casualties[] = { u8 func1006_terminal_activation[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_activated_object(CHR_TARGET, OBJ_GOODTERM1, /*goto*/ 0x08) if_chr_activated_object(CHR_TARGET, OBJ_ALARMTERM1, /*goto*/ 0x09) @@ -1783,7 +1783,7 @@ u8 func1007_uplink[] = { goto_next(0x0d) label(0x30) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_activated_object(CHR_TARGET, OBJ_UPLINKPC, /*goto*/ 0x2f) reloop(0x04) @@ -2602,7 +2602,7 @@ u8 func1415_outro_audio[] = { u8 func100f_check_for_end_level[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0063, /*goto*/ 0x2f) if_chr_in_room(CHR_P1P2, 0x00, 0x0065, /*goto*/ 0x2f) reloop(0x04) @@ -2722,7 +2722,7 @@ u8 func1012_start_laser_sound[] = { u8 func1013_hatch_pc[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_activated_object(CHR_TARGET, OBJ_HATCHPC, /*goto*/ 0x06) reloop(0x04) @@ -2823,7 +2823,7 @@ u8 func0402_k7_guard[] = { set_onshot_function(GFUNC_ALERTED) beginloop(0x0f) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) set_follow_chr(CHR_P1P2) if_chr_in_room(CHR_TARGET, 0x00, 0x0036, /*goto*/ 0x03) @@ -2840,7 +2840,7 @@ u8 func0402_k7_guard[] = { label(0x06) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x0c) if_near_miss(/*goto*/ 0x0c) @@ -2858,7 +2858,7 @@ u8 func0402_k7_guard[] = { say_quip(CHR_BOND, 0x00, 0x32, 0x02, 0xff, BANK_0, 0x00, 0x00) beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x0c) if_near_miss(/*goto*/ 0x0c) @@ -2894,7 +2894,7 @@ u8 func0402_k7_guard[] = { restart_timer beginloop(0x09) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x0c) if_near_miss(/*goto*/ 0x0c) @@ -2908,7 +2908,7 @@ u8 func0402_k7_guard[] = { restart_timer beginloop(0x0a) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x0c) if_near_miss(/*goto*/ 0x0c) @@ -2928,7 +2928,7 @@ u8 func0402_k7_guard[] = { u8 func0403_k7_scientist[] = { beginloop(0x14) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_in_room(CHR_TARGET, 0x00, 0x0035, /*goto*/ 0x03) if_chr_in_room(CHR_TARGET, 0x00, 0x0036, /*goto*/ 0x03) @@ -2941,7 +2941,7 @@ u8 func0403_k7_scientist[] = { restart_timer beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x0c) if_near_miss(/*goto*/ 0x0c) @@ -2971,7 +2971,7 @@ u8 func0403_k7_scientist[] = { goto_next(0x0f) beginloop(0x0f) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x0c) if_near_miss(/*goto*/ 0x0c) @@ -3040,7 +3040,7 @@ u8 func040b_init_shock_guard[] = { u8 func1019_msg_securitysector[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0052, /*goto*/ 0x2f) endloop(0x04) @@ -3052,7 +3052,7 @@ u8 func1019_msg_securitysector[] = { u8 func101a_msg_lotofpower[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0031, /*goto*/ 0x2f) if_chr_in_room(CHR_P1P2, 0x00, 0x0042, /*goto*/ 0x2f) endloop(0x04) @@ -3067,7 +3067,7 @@ u8 func101b_msg_reprogram[] = { if_difficulty_lt(DIFF_SA, /*goto*/ 0x08) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0026, /*goto*/ 0x2f) if_chr_in_room(CHR_P1P2, 0x00, 0x0024, /*goto*/ 0x2f) endloop(0x04) @@ -3082,7 +3082,7 @@ u8 func101b_msg_reprogram[] = { u8 func101c_msg_radioactive[] = { beginloop(0x04) if_objective_complete(0, /*goto*/ 0x06) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0014, /*goto*/ 0x2f) endloop(0x04) diff --git a/src/files/setup/setupeld.c b/src/files/setup/setupeld.c index 72d2eabc2..35dcc2aa9 100644 --- a/src/files/setup/setupeld.c +++ b/src/files/setup/setupeld.c @@ -1549,7 +1549,7 @@ u8 func0402_taker[] = { try_aim_and_shoot_thing1(0x0220, 0x0000, /*goto*/ 0x04) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) dprint 'A','I','M','I','N','G',' ','A','T',' ','M','E','\n',0, if_chr_distance_to_pad_lt(CHR_P1P2, 200, 0x0236, /*goto*/ 0x06) label(0x2d) @@ -1704,7 +1704,7 @@ u8 func1005_toggle_snipers[] = { hide_chr(CHR_SNIPER8) beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x002b, /*goto*/ 0x06) endloop(0x08) @@ -1723,7 +1723,7 @@ u8 func1005_toggle_snipers[] = { // @bug: When using small characters or play as Elvis cheats, the height // criteria is not met so the snipers cannot be unhidden. beginloop(0x09) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_y(CHR_P1P2, -500, OPERATOR_LESS_THAN, /*goto*/ 0x2d) if_chr_in_room(CHR_P1P2, 0x00, 0x004e, /*goto*/ 0x06) label(0x2d) @@ -1791,7 +1791,7 @@ u8 func0404_sniper[] = { endloop(0x11) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) dprint 'S','T','A','R','T','\n',0, if_target_chr_in_sight(/*goto*/ 0x58) @@ -1823,7 +1823,7 @@ u8 func0404_sniper[] = { restart_timer beginloop(0x0a) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x58) if_saw_death(0x00, /*goto*/ 0x58) @@ -1858,7 +1858,7 @@ u8 func0404_sniper[] = { label(0x0b) yield - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x58) if_saw_death(0x00, /*goto*/ 0x58) @@ -1957,7 +1957,7 @@ u8 func1006_check_snipers_dead[] = { u8 func1007_cooling_switch[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_COOLING_SWITCH, /*goto*/ 0x06) reloop(0x04) @@ -2007,7 +2007,7 @@ u8 func1007_cooling_switch[] = { u8 func1008_power_switch[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_POWER_SWITCH, /*goto*/ 0x06) reloop(0x04) @@ -2057,7 +2057,7 @@ u8 func1008_power_switch[] = { u8 func1009_windmill_switch[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_WINDMILL_SWITCH, /*goto*/ 0x06) reloop(0x04) @@ -2211,7 +2211,7 @@ u8 func0405_hacker[] = { animation(ANIM_SITTING_TYPING, 0, -1, 0x14, 0x00, CHR_SELF, 2) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_stage_flag_eq(STAGEFLAG_HACKERS_SUCCEEDED, TRUE, /*goto*/ 0x2d) if_chr_sees_player(/*goto*/ 0x09) @@ -2222,7 +2222,7 @@ u8 func0405_hacker[] = { run_to_pad(0x0070) beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x09) if_chr_stopped(/*goto*/ 0x06) @@ -2290,7 +2290,7 @@ u8 func100e_check_objectives_complete[] = { // player to enter the cellar while closing the door behind them and then // mess with Carrington. beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_door_state(0x09, DOORSTATEBIT_OPEN, /*goto*/ 0x2d) if_door_state(0x08, DOORSTATEBIT_OPEN, /*goto*/ 0x2d) endloop(0x04) @@ -2532,7 +2532,7 @@ u8 func040b_init_basement_guard[] = { u8 func1016_msg_generator[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0077, /*goto*/ 0x2d) endloop(0x04) @@ -2578,7 +2578,7 @@ u8 func1018_msg_hidingdaniel[] = { endloop(0x04) beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0088, /*goto*/ 0x2d) endloop(0x08) @@ -2637,7 +2637,7 @@ u8 func101b_toggle_basement_chrs[] = { // Not sure which room 0x0087 is beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0087, /*goto*/ 0x2d) endloop(0x04) @@ -2836,7 +2836,7 @@ u8 func101c_toggle_villa_guards[] = { // @bug: It is possible to cross room 0x002a in a single frame on coop if // hugging the corner tightly, which means the guards will not be unhidden. beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x002a, /*goto*/ 0x2d) endloop(0x04) @@ -3201,7 +3201,7 @@ u8 func1025_check_basement_entered_without_subdue[] = { beginloop(0x04) if_objective_complete(4, /*goto*/ 0x0c) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0087, /*goto*/ 0x06) label(0x0c) endloop(0x04) diff --git a/src/files/setup/setupimp.c b/src/files/setup/setupimp.c index 1e493a7a1..99ad449e8 100644 --- a/src/files/setup/setupimp.c +++ b/src/files/setup/setupimp.c @@ -803,7 +803,7 @@ u8 func1005_check_safeinfo_destroyed[] = { if_difficulty_lt(DIFF_SA, /*goto*/ 0x0e) \ \ beginloop(0x04) \ - consider_coop_for_p1p2_chr(CHR_SELF) \ + chr_toggle_p1p2(CHR_SELF) \ if_object_in_good_condition(switch, /*goto*/ 0x2e) \ goto_next(0x0b) \ \ @@ -1650,7 +1650,7 @@ u8 func100e_setup_firingrange[] = { // Wait until guns complete or failed, or skip this check if Agent beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_difficulty_lt(DIFF_SA, /*goto*/ 0x2e) if_objective_complete(0, /*goto*/ 0x2e) if_stage_flag_eq(STAGEFLAG_AUTOGUN_SWITCH_DESTROYED, TRUE, /*goto*/ 0x2e) @@ -1673,7 +1673,7 @@ u8 func100e_setup_firingrange[] = { // Wait until player in firing range entrance or door is opening beginloop(0x0a) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0007, /*goto*/ 0x08) if_door_state(0x23, (DOORSTATEBIT_OPEN | DOORSTATEBIT_CLOSING | DOORSTATEBIT_OPENING), /*goto*/ 0x2f) endloop(0x0a) @@ -1683,7 +1683,7 @@ u8 func100e_setup_firingrange[] = { restart_timer beginloop(0x71) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0007, /*goto*/ 0x08) if_timer_gt(600, /*goto*/ 0x08) endloop(0x71) @@ -1728,7 +1728,7 @@ u8 func041a_hostage_holo[] = { // Alive - wait until holo room door opened beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_door_state(0x43, (DOORSTATEBIT_OPEN | DOORSTATEBIT_OPENING), /*goto*/ 0x2e) if_door_state(0x44, (DOORSTATEBIT_OPEN | DOORSTATEBIT_OPENING), /*goto*/ 0x2e) endloop(0x04) @@ -2250,7 +2250,7 @@ u8 func042e_taker_device_m[] = { set_self_flag_bank3(CHRFLAG3_00020000) beginloop(0x0a) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x08) if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x08) @@ -2302,7 +2302,7 @@ u8 func0430_taker_device_f[] = { set_self_flag_bank3(CHRFLAG3_00020000) beginloop(0x0a) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x08) if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x08) @@ -2892,7 +2892,7 @@ u8 func1014_carrington_messages[] = { endloop(0xca) beginloop(0xcb) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_all_objectives_complete(/*goto*/ 0x2e) reloop(0xcb) @@ -2928,7 +2928,7 @@ u8 func1014_carrington_messages[] = { u8 func1015_firingrange_pc[] = { beginloop(0x0a) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_FR_PC, /*goto*/ 0x08) if_object_in_good_condition(OBJ_FR_PC, /*goto*/ 0x2e) goto_next(0x2f) @@ -3108,7 +3108,7 @@ u8 func0410_spawner6[] = { set_self_flag_bank3(CHRFLAG3_00040000) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_objective_complete(2, /*goto*/ 0x2e) reloop(0x04) @@ -3477,7 +3477,7 @@ u8 func101c_msg_fosterworkingon[] = { reloop(0x04) label(0x2f) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0009, /*goto*/ 0x2e) endloop(0x0a) @@ -3652,7 +3652,7 @@ u8 func1024_setup_lifts[] = { u8 func1025_lift_door_sounds[] = { beginloop(0xe4) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, 0x46, /*goto*/ 0x2e) if_chr_activated_object(CHR_P1P2, 0x47, /*goto*/ 0x2e) if_chr_activated_object(CHR_P1P2, 0x48, /*goto*/ 0x2e) @@ -3698,7 +3698,7 @@ u8 func1027_uplink[] = { goto_next(0x0f) label(0x2f) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_activated_object(CHR_TARGET, OBJ_SKEDAR_SHUTTLE, /*goto*/ 0x2e) reloop(0x04) @@ -3796,7 +3796,7 @@ u8 func1027_uplink[] = { u8 func1028_shuttle_immunity[] = { beginloop(0xe4) if_stage_flag_eq(STAGEFLAG_TRIGGER_SHUTTLE_TAKEOFF, TRUE, /*goto*/ 0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0045, /*goto*/ 0x2e) if_chr_in_room(CHR_P1P2, 0x00, 0x0046, /*goto*/ 0x2e) if_chr_in_room(CHR_P1P2, 0x00, 0x0047, /*goto*/ 0x2e) diff --git a/src/files/setup/setuplee.c b/src/files/setup/setuplee.c index 9921842b8..f6ccc24ff 100644 --- a/src/files/setup/setuplee.c +++ b/src/files/setup/setuplee.c @@ -581,7 +581,7 @@ u8 func1004_check_hangar_doors_opened[] = { set_object_flag_bank0(OBJ_HANGARDOOR4, OBJECTFLAG0_02000000) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_difficulty_lt(DIFF_PA, /*goto*/ 0x2c) if_chr_activated_object(CHR_P1P2, OBJ_HANGARDOORCONSOLE, /*goto*/ 0x06) if_object_in_good_condition(OBJ_HANGARDOORCONSOLE, /*goto*/ 0x2d) @@ -711,7 +711,7 @@ u8 func040e_elvis_give_ar34[] = { // Wait until player in sight beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) set_follow_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x2c) @@ -1157,7 +1157,7 @@ u8 func0410_wake_suspendedanim_skedar[] = { u8 func1006_wake_slayer_skedar[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0033, /*goto*/ 0x2c) endloop(0x04) @@ -1202,7 +1202,7 @@ u8 func1006_wake_slayer_skedar[] = { label(0x2c) beginloop(0x0a) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_stage_flag_eq(STAGEFLAG_ENTERED_SLAYER_AREA, TRUE, /*goto*/ 0x2c) reloop(0x0a) @@ -1297,7 +1297,7 @@ u8 func1008_hangar_lifts[] = { beginloop(0x67) dprint 'T','R','\n',0, - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_death_animation_finished(CHR_BOND, /*goto*/ 0x2c) if_chr_in_room(CHR_BOND, 0x00, 0x0018, /*goto*/ 0x2c) if_door_state(0x39, (DOORSTATEBIT_CLOSED | DOORSTATEBIT_CLOSING), /*goto*/ 0x2d) @@ -1327,7 +1327,7 @@ u8 func1008_hangar_lifts[] = { // Wait until Y coordinate >= 400 beginloop(0x09) dprint 'P','U','\n',0, - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_death_animation_finished(CHR_P1P2, /*goto*/ 0x2c) if_chr_y(CHR_P1P2, 400, OPERATOR_LESS_THAN, /*goto*/ 0x2c) goto_next(0x0a) @@ -1407,7 +1407,7 @@ u8 func1008_hangar_lifts[] = { // For buddy or counterop who might still be in the hangar, // wait for lift to be called from hangar beginloop(0x68) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, 0x3b, /*goto*/ 0x2c) if_chr_activated_object(CHR_P1P2, 0x3c, /*goto*/ 0x2c) if_chr_activated_object(CHR_ANTI, 0x3b, /*goto*/ 0x2c) @@ -1483,7 +1483,7 @@ u8 func0408_knifeable_skedar[] = { try_face_entity(0x0200, 0x0000, /*goto*/ 0x04) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_stage_flag_eq(STAGEFLAG_CASS_AT_PAD, TRUE, /*goto*/ 0x06) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x0c) @@ -1505,7 +1505,7 @@ u8 func0408_knifeable_skedar[] = { jog_to_pad(0x00dd) beginloop(0x0a) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_stopped(/*goto*/ 0x06) if_target_chr_in_sight(/*goto*/ 0x0c) @@ -1519,7 +1519,7 @@ u8 func0408_knifeable_skedar[] = { try_face_entity(ENTITYTYPE_PAD, 0x00ef, /*goto*/ 0x0b) beginloop(0x0b) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_timer_gt(600, /*goto*/ 0x06) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x0c) @@ -1533,7 +1533,7 @@ u8 func0408_knifeable_skedar[] = { jog_to_pad(0x00d9) beginloop(0x0a) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_just_injured(CHR_SELF, /*goto*/ 0x0c) dprint 'W','A','I','T','I','N','G',' ','T','W','O','\n',0, @@ -1958,7 +1958,7 @@ u8 func100c_engineroom[] = { u8 func100d_prebridgelift[] = { // Wait until Y >= 2600 beginloop(0x09) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_y(CHR_P1P2, 2600, OPERATOR_LESS_THAN, /*goto*/ 0x2c) goto_next(0x0a) @@ -1979,7 +1979,7 @@ u8 func100d_prebridgelift[] = { // Wait until lift called at bottom by buddy or counterop beginloop(0x68) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, 0x3d, /*goto*/ 0x2c) if_chr_activated_object(CHR_P1P2, 0x3e, /*goto*/ 0x2c) if_chr_activated_object(CHR_ANTI, 0x3d, /*goto*/ 0x2c) @@ -2038,7 +2038,7 @@ u8 func100d_prebridgelift[] = { u8 func100e_bridgelift[] = { // Wait until Y >= 3600 beginloop(0x09) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_y(CHR_P1P2, 3600, OPERATOR_LESS_THAN, /*goto*/ 0x2c) goto_next(0x0a) @@ -2061,7 +2061,7 @@ u8 func100e_bridgelift[] = { // Wait until lift called from below by buddy or counterop beginloop(0x68) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, 0x2f, /*goto*/ 0x2c) if_chr_activated_object(CHR_P1P2, 0x30, /*goto*/ 0x2c) if_chr_activated_object(CHR_ANTI, 0x2f, /*goto*/ 0x2c) @@ -2986,7 +2986,7 @@ u8 func0421_bridge_skedar[] = { kneel beginloop(0xc7) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) label(0x2c) set_target_chr(CHR_P1P2) if_player_looking_at_something_maybe(0x00, 0x00, 0x01, /*goto*/ 0x06) @@ -3042,7 +3042,7 @@ u8 func0421_bridge_skedar[] = { label(0xcd) call_rng - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_player_looking_at_something_maybe(0x00, 0x00, 0x01, /*goto*/ 0x06) if_target_chr_in_sight(/*goto*/ 0xce) @@ -3062,7 +3062,7 @@ u8 func0421_bridge_skedar[] = { restart_timer beginloop(0xd1) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0xce) if_timer_gt(300, /*goto*/ 0x06) @@ -3137,7 +3137,7 @@ u8 func1014_msg_hangarbaydoors[] = { u8 func1015_msg_starmaps[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x003e, /*goto*/ 0x2c) endloop(0x04) @@ -3149,7 +3149,7 @@ u8 func1015_msg_starmaps[] = { u8 func1016_msg_ifwecontrolthebridge[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x006f, /*goto*/ 0x2c) endloop(0x04) @@ -3234,7 +3234,7 @@ u8 func0423_shy_skedar[] = { run_to_pad(0x00da) beginloop(0x09) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x2d) if_chr_distance_to_pad_lt(CHR_SELF, 200, 0x00da, /*goto*/ 0x2d) @@ -3401,7 +3401,7 @@ u8 func101a_kill_maian[] = { u8 func101c_lift_door_sounds[] = { beginloop(0xc2) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, 0x2f, /*goto*/ 0x2c) if_chr_activated_object(CHR_P1P2, 0x30, /*goto*/ 0x2c) if_chr_activated_object(CHR_P1P2, 0x31, /*goto*/ 0x2c) @@ -3454,7 +3454,7 @@ u8 func101d_unlock_doors[] = { u8 func101e_bridge_music[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_BOND, 0x00, 0x006e, /*goto*/ 0x2c) endloop(0x04) @@ -3534,7 +3534,7 @@ u8 func1020_engine_hum_noise[] = { u8 func1021_check_ammo_wasted[] = { beginloop(0x04) if_stage_flag_eq(STAGEFLAG_SHIELDS_DISABLED, TRUE, /*goto*/ 0x0d) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_weapon_equipped(CHR_P1P2, WEAPON_MAULER, /*goto*/ 0x65) endloop(0x04) @@ -3650,7 +3650,7 @@ u8 func1025_toggle_chrs[] = { hide_chr(CHR_BRIDGESPAWNER2) beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_y(CHR_P1P2, 450, OPERATOR_LESS_THAN, /*goto*/ 0x2c) goto_next(0x06) @@ -3724,7 +3724,7 @@ u8 func1025_toggle_chrs[] = { rebuild_squadrons beginloop(0x09) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_y(CHR_P1P2, 550, OPERATOR_LESS_THAN, /*goto*/ 0x2c) goto_next(0x06) diff --git a/src/files/setup/setuplip.c b/src/files/setup/setuplip.c index 87d26c6ea..42bb8d0a4 100644 --- a/src/files/setup/setuplip.c +++ b/src/files/setup/setuplip.c @@ -858,7 +858,7 @@ u8 func1400_give_datauplinks[] = { u8 func1007_check_disguise_collected[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_has_object(CHR_P1P2, OBJ_LABCOAT1, /*goto*/ 0x06) if_chr_has_object(CHR_P1P2, OBJ_LABCOAT2, /*goto*/ 0x06) if_chr_has_object(CHR_P1P2, OBJ_LABCOAT3, /*goto*/ 0x06) @@ -893,7 +893,7 @@ u8 func1026_check_records_destroyed[] = { u8 func1003_uplink_doors[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, 0x02, /*goto*/ 0x2d) reloop(0x04) @@ -970,7 +970,7 @@ u8 func1003_uplink_doors[] = { u8 func1004_uplink_lights[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, 0x01, /*goto*/ 0x2d) reloop(0x04) @@ -1061,7 +1061,7 @@ u8 func1004_uplink_lights[] = { u8 func1005_uplink_autoguns[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, 0x03, /*goto*/ 0x2d) reloop(0x04) @@ -1142,7 +1142,7 @@ u8 func1005_uplink_autoguns[] = { u8 func1006_check_lab_accessed[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x008f, /*goto*/ 0x06) endloop(0x04) @@ -1342,7 +1342,7 @@ u8 func0410_labtech_showers_sa_pa[] = { stop_chr beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x2d) if_chr_distance_lt(500, /*goto*/ 0x03) @@ -1716,7 +1716,7 @@ u8 func0418_doorman[] = { stop_chr beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x03) if_chr_distance_lt(500, /*goto*/ 0x03) @@ -1850,7 +1850,7 @@ u8 func0418_doorman[] = { u8 func100b_check_doorman_dead[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_dying(CHR_DOORMAN, /*goto*/ 0x2d) if_chr_death_animation_finished(CHR_DOORMAN, /*goto*/ 0x2d) if_chr_unloaded(CHR_DOORMAN, /*goto*/ 0x2d) @@ -1944,7 +1944,7 @@ u8 func041a_labtech_harrysmate[] = { stop_chr beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_in_room(CHR_P1P2, 0x00, 0x0083, /*goto*/ 0x08) endloop(0x04) @@ -2045,7 +2045,7 @@ u8 func041b_labtech_keycardguy[] = { // Not injured, or recovered // Waiting to detect Jo beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x2d) if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x2d) @@ -2103,7 +2103,7 @@ u8 func100c_keycardguy_lights[] = { u8 func100d_check_entered_lab[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0083, /*goto*/ 0x06) if_chr_in_room(CHR_P1P2, 0x00, 0x0084, /*goto*/ 0x06) if_chr_in_room(CHR_P1P2, 0x00, 0x0085, /*goto*/ 0x06) @@ -2153,7 +2153,7 @@ u8 func100e_elvis_timer[] = { u8 func100f_check_end_level[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_distance_to_pad_lt(CHR_P1P2, 300, 0x02a1, /*goto*/ 0x06) reloop(0x04) @@ -2298,7 +2298,7 @@ u8 func0413_mechanic[] = { // Wait for player to attempt to open door beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x0a) if_chr_activated_object(CHR_P1P2, 0x14, /*goto*/ 0x2d) @@ -2319,7 +2319,7 @@ u8 func0413_mechanic[] = { open_door(0x15) beginloop(0x0a) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x06) endloop(0x0a) @@ -2370,7 +2370,7 @@ u8 func0413_mechanic[] = { u8 func1011_unhide_warehouse_spawner[] = { // Wait until player near second elevator beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x00f8, /*goto*/ 0x06) if_chr_in_room(CHR_P1P2, 0x00, 0x00f7, /*goto*/ 0x06) if_chr_in_room(CHR_P1P2, 0x00, 0x00f6, /*goto*/ 0x06) @@ -2391,7 +2391,7 @@ u8 func0415_warehouse_spawner[] = { restart_timer beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x08) if_chr_in_room(CHR_TARGET, 0x00, 0x00f8, /*goto*/ 0x08) @@ -2545,7 +2545,7 @@ u8 func041e_unused_041e[] = { u8 func1016_check_undisguised[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_stage_flag_eq(STAGEFLAG_DISGUISE_UNCOVERED, TRUE, /*goto*/ 0x06) if_chr_dying(CHR_LABTECH_HARRYSMATE, /*goto*/ 0x06) if_chr_dying(CHR_LABTECH_KEYCARDGUY, /*goto*/ 0x06) @@ -2615,7 +2615,7 @@ u8 func041f_labtech_lights[] = { goto_next(0x04) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_self_flag_bankx_eq(CHRFLAG0_00002000, TRUE, BANK_0, /*goto*/ 0x53) if_target_chr_in_sight(/*goto*/ 0x03) @@ -2701,7 +2701,7 @@ u8 func041f_labtech_lights[] = { walk_to_pad(0x020d) beginloop(0x0d) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x2d) if_shot_near_chr(0x00, /*goto*/ 0x0f) @@ -2739,7 +2739,7 @@ u8 func041f_labtech_lights[] = { animation(ANIM_OPERATE_0223, -1, -1, 0x10, 0x0a, CHR_SELF, 2) beginloop(0x0e) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x2d) if_shot_near_chr(0x00, /*goto*/ 0x0f) @@ -2822,7 +2822,7 @@ u8 func0420_labtech_doors[] = { label(0x6f) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) set_target_chr(CHR_BOND) if_chr_flag_bank2(CHR_TARGET, CHRFLAG2_DISGUISE_UNCOVERED, /*goto*/ 0x06) @@ -3063,7 +3063,7 @@ u8 func0422_labtech_records[] = { goto_first(0x5e) label(0x2d) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x03) if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x03) @@ -3152,7 +3152,7 @@ u8 func1018_disable_chambers[] = { #define chamber_logic(switch, chamber, stageflag) \ /* Wait for player to activate chamber switch */ \ beginloop(0x04) \ - consider_coop_for_p1p2_chr(CHR_SELF) \ + chr_toggle_p1p2(CHR_SELF) \ if_chr_activated_object(CHR_P1P2, switch, /*goto*/ 0x06) \ reloop(0x04) \ \ @@ -3214,7 +3214,7 @@ u8 func1018_disable_chambers[] = { u8 func1019_chamber1[] = { // Wait for player to activate chamber switch beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_CHAMBER1_SWITCH, /*goto*/ 0x06) reloop(0x04) @@ -3285,7 +3285,7 @@ u8 func1019_chamber1[] = { u8 func101a_chamber2[] = { // Wait for player to activate chamber switch beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_CHAMBER2_SWITCH, /*goto*/ 0x06) reloop(0x04) @@ -3371,7 +3371,7 @@ u8 func1020_chamber8[] = { // Wait for player to activate chamber switch beginloop(0x04) // Likely @bug: Chamber 8 is the only chamber that doesn't call - // consider_coop_for_p1p2_chr here. + // chr_toggle_p1p2 here. // Co-op player might not be able to activate chamber 8. if_chr_activated_object(CHR_P1P2, OBJ_CHAMBER8_SWITCH, /*goto*/ 0x06) reloop(0x04) @@ -3488,7 +3488,7 @@ u8 func1021_xray_scanning[] = { beginloop(0x04) // @bug? In co-op, the player wearing the xray may be the player who is // not looking at the alien. - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_has_weapon_equipped(CHR_P1P2, WEAPON_XRAYSCANNER, /*goto*/ 0x06) reloop(0x04) @@ -3528,7 +3528,7 @@ u8 unregistered_function1[] = { restart_timer beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_timer_gt(600, /*goto*/ 0x08) pause_timer if_chr_in_room(CHR_P1P2, 0x00, 0x010d, /*goto*/ 0x06) @@ -3591,7 +3591,7 @@ u8 func0427_shock_clone[] = { label(0x04) yield - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x010d, /*goto*/ 0x06) if_chr_in_room(CHR_P1P2, 0x00, 0x0102, /*goto*/ 0x06) if_chr_in_room(CHR_P1P2, 0x00, 0x0103, /*goto*/ 0x06) @@ -3967,7 +3967,7 @@ u8 func1025_toggle_guards[] = { set_chr_flag_bank3(0x32, CHRFLAG3_INVINCIBLE_TO_GUNFIRE) beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_has_object(CHR_P1P2, OBJ_KEYCARD, /*goto*/ 0x2d) endloop(0x08) @@ -4022,14 +4022,14 @@ u8 func0429_spawn_while_xraying[] = { restart_timer beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_flag_bank2(CHR_P1P2, CHRFLAG2_DISGUISED, /*goto*/ 0x0d) if_timer_gt(1800, /*goto*/ 0x2d) reloop(0x04) // 30 seconds passed and not disguised label(0x2d) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_flag_bank2(CHR_P1P2, CHRFLAG2_DISGUISED, /*goto*/ 0x0d) // Xray area @@ -4403,7 +4403,7 @@ u8 func102f_shuffle_disguise[] = { u8 func1030_lift_door_sounds[] = { beginloop(0x5e) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, 0x46, /*goto*/ 0x2d) if_chr_activated_object(CHR_P1P2, 0x47, /*goto*/ 0x2d) if_chr_activated_object(CHR_P1P2, 0x48, /*goto*/ 0x2d) @@ -4497,7 +4497,7 @@ u8 func1032_count_last_room_guards[] = { */ u8 func1033_update_buddy_placed_flag[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_flag_bank2(CHR_P1P2, CHRFLAG2_BUDDY_PLACED, /*goto*/ 0x2d) endloop(0x04) diff --git a/src/files/setup/setuplue.c b/src/files/setup/setuplue.c index eee611941..358daa3ae 100644 --- a/src/files/setup/setuplue.c +++ b/src/files/setup/setuplue.c @@ -964,7 +964,7 @@ u8 func140e_check_interceptors_destroyed[] = { u8 func100c_maingate_switch[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_door_state(OBJ_MAINGATE1, DOORSTATEBIT_CLOSING, /*goto*/ 0x2e) goto_next(0x06) @@ -1107,7 +1107,7 @@ u8 func1405_antenna_switch[] = { set_object_flag_bank0(OBJ_ANTENNA, OBJECTFLAG0_DEACTIVATED) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_ANTENNA_SWITCH, /*goto*/ 0x2e) reloop(0x04) @@ -1163,7 +1163,7 @@ u8 func1405_antenna_switch[] = { u8 func1006_lift_switches[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_LIFT1_SWITCH, /*goto*/ 0x09) if_chr_activated_object(CHR_P1P2, OBJ_LIFT2_SWITCH, /*goto*/ 0x0a) reloop(0x04) @@ -1229,7 +1229,7 @@ u8 func1006_lift_switches[] = { u8 func1007_check_hangar_accessed[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0042, /*goto*/ 0x06) if_chr_in_room(CHR_P1P2, 0x00, 0x0043, /*goto*/ 0x06) endloop(0x04) @@ -1248,7 +1248,7 @@ u8 func1008_check_end_level[] = { endloop(0x04) beginloop(0x09) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0060, /*goto*/ 0x06) endloop(0x09) @@ -1296,7 +1296,7 @@ u8 func1009_check_radar_shut_down[] = { u8 func100b_final_hangar[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_objective_complete(0, /*goto*/ 0x2e) reloop(0x04) @@ -1521,9 +1521,9 @@ u8 func0417_traitor[] = { goto_next(0x0c) beginloop(0x0b) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_y(CHR_P1P2, -1373, OPERATOR_LESS_THAN, /*goto*/ 0x10) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_y(CHR_P1P2, -1373, OPERATOR_LESS_THAN, /*goto*/ 0x10) if_chr_stopped(/*goto*/ 0x0c) endloop(0x0b) @@ -1593,7 +1593,7 @@ u8 func0416_mechanic[] = { animation(ANIM_STANDING_TYPE_ONE_HAND, 0, 193, 0x10, 0x10, CHR_SELF, 2) beginloop(0x09) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_stage_flag_eq(STAGEFLAG_TRIGGER_INTERCEPTOR, TRUE, /*goto*/ 0x2f) if_just_injured(CHR_SELF, /*goto*/ 0x2e) @@ -1616,7 +1616,7 @@ u8 func0416_mechanic[] = { animation(ANIM_STANDING_TYPE_ONE_HAND, 0, 193, 0x10, 0x10, CHR_SELF, 2) beginloop(0x0d) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_shot_at_close_range(/*goto*/ 0x2e) if_target_chr_in_sight(/*goto*/ 0x2e) @@ -1680,7 +1680,7 @@ u8 func040a_top_interceptor[] = { set_chr_health(CHR_SELF, 5000) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x59) endloop(0x04) @@ -1691,7 +1691,7 @@ u8 func040a_top_interceptor[] = { begin_hovercar_path(0x22) beginloop(0x0a) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) label(0x06) if_chr_sees_player(/*goto*/ 0x59) @@ -2364,7 +2364,7 @@ u8 func1013_bunker_lasers[] = { u8 func1011_bunker_explosives[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_RADAR_TERMINAL, /*goto*/ 0x2e) reloop(0x04) @@ -2597,7 +2597,7 @@ u8 func1018_unhide_guards[] = { // Wait until player in room 0x0044 (first hangar ramp) beginloop(0x09) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0044, /*goto*/ 0x2e) endloop(0x09) @@ -2823,7 +2823,7 @@ u8 func101a_check_mechanic_dead[] = { */ u8 func101b_msg_airinterceptradar[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0001, /*goto*/ 0x2e) endloop(0x04) @@ -2838,7 +2838,7 @@ u8 func101c_msg_cantthrow[] = { restart_timer beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0013, /*goto*/ 0x2e) endloop(0x04) @@ -2855,7 +2855,7 @@ u8 func101c_msg_cantthrow[] = { u8 func101d_msg_hangarlift[] = { // Wait for radar shut down and player in room 0x0001 (which is impossible) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_objective_complete(0, /*goto*/ 0x2e) reloop(0x04) @@ -2871,7 +2871,7 @@ u8 func101d_msg_hangarlift[] = { u8 func101e_msg_triggerfinger[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0051, /*goto*/ 0x2e) endloop(0x04) @@ -2885,7 +2885,7 @@ u8 func0421_activate_autogun[] = { set_onshot_function(GFUNC_ALERTED) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x2e) if_shot_at_close_range(/*goto*/ 0x2e) @@ -2983,7 +2983,7 @@ u8 func1022_check_lift_switches_destroyed[] = { u8 func1024_lift_door_sounds[] = { beginloop(0x7e) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, 0x3c, /*goto*/ 0x0a) if_chr_activated_object(CHR_P1P2, 0x3e, /*goto*/ 0x0b) if_chr_activated_object(CHR_P1P2, 0x3d, /*goto*/ 0x41) diff --git a/src/files/setup/setuppam.c b/src/files/setup/setuppam.c index 142606a1b..f5368023f 100644 --- a/src/files/setup/setuppam.c +++ b/src/files/setup/setuppam.c @@ -3117,7 +3117,7 @@ u8 func041b_sniper_wait_for_detection[] = { restart_timer beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x2e) if_enemy_distance_lt_and_los(1000, /*goto*/ 0x2e) @@ -3162,7 +3162,7 @@ u8 func041d_sniper[] = { cmd0139(70, 0x02, TRUE) beginloop(0x63) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_sees_player(/*goto*/ 0x2e) dprint 'N','O',' ','P','L','A','Y','E','R',' ','T','A','R','G','E','T','\n',0, if_enemy_distance_lt_and_los(1000, /*goto*/ 0x2f) @@ -3251,7 +3251,7 @@ u8 func041d_sniper[] = { u8 func040c_blonde[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x004c, /*goto*/ 0x06) endloop(0x04) @@ -3285,7 +3285,7 @@ u8 func100c_countdown_timer[] = { start_countdown_timer beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_countdown_timer_lt(1, /*goto*/ 0x06) if_chr_in_room(CHR_P1P2, 0x00, 0x000c, /*goto*/ 0x2e) endloop(0x04) @@ -3516,7 +3516,7 @@ u8 func1010_agent_hallway_spawner[] = { // Wait until player in a certain room beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0054, /*goto*/ 0x2e) endloop(0x04) @@ -3529,7 +3529,7 @@ u8 func1010_agent_hallway_spawner[] = { // Wait until player in a certain room beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_P1P2) + chr_toggle_p1p2(CHR_P1P2) if_chr_in_room(CHR_P1P2, 0x00, 0x005a, /*goto*/ 0x2e) endloop(0x08) @@ -3542,7 +3542,7 @@ u8 func1010_agent_hallway_spawner[] = { // Wait until player in a certain room beginloop(0x09) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0067, /*goto*/ 0x2e) endloop(0x09) @@ -3990,7 +3990,7 @@ u8 func040a_check_pa_canisters_destroyed[] = { */ u8 func101f_pa_circleroom_spawner[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_door_state(0x09, (DOORSTATEBIT_OPEN | DOORSTATEBIT_CLOSING | DOORSTATEBIT_OPENING), /*goto*/ 0x2e) if_chr_in_room(CHR_P1P2, 0x00, 0x008b, /*goto*/ 0x2e) endloop(0x04) @@ -4007,7 +4007,7 @@ u8 func101f_pa_circleroom_spawner[] = { restart_timer beginloop(0x20) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x008c, /*goto*/ 0x58) dprint 'T','I','M','E','\n',0, if_timer_lt(300, /*goto*/ 0x21) @@ -4045,7 +4045,7 @@ u8 func041f_init_pa_circleroom_miniskedar[] = { u8 func1020_pa_deadendroom_spawner[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x00b4, /*goto*/ 0x2e) if_chr_in_room(CHR_P1P2, 0x00, 0x00b8, /*goto*/ 0x2e) endloop(0x04) @@ -4193,7 +4193,7 @@ u8 func1022_control_room[] = { // SA and PA beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x004c, /*goto*/ 0x2e) endloop(0x04) @@ -4228,7 +4228,7 @@ u8 func1023_check_drcaroll_restored[] = { if_chr_death_animation_finished(CHR_ELVIS, /*goto*/ 0x0d) if_chr_dying(CHR_ELVIS, /*goto*/ 0x0d) if_chr_unloaded(CHR_ELVIS, /*goto*/ 0x0d) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_distance_to_pad_lt(CHR_P1P2, 200, 0x0193, /*goto*/ 0x2e) reloop(0x04) @@ -4516,7 +4516,7 @@ u8 func040f_miniskedar_unalerted[] = { rebuild_squadrons beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x2e) endloop(0x04) @@ -4583,7 +4583,7 @@ u8 func042c_elvis_stop[] = { u8 func102f_unlock_drcaroll_door[] = { // Wait until player in Dr Caroll room beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x004c, /*goto*/ 0x2e) endloop(0x08) @@ -4693,7 +4693,7 @@ u8 func1034_enable_blondes[] = { hide_chr(CHR_BLONDE2) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x004c, /*goto*/ 0x2e) endloop(0x04) diff --git a/src/files/setup/setuppete.c b/src/files/setup/setuppete.c index 535bff067..12aba24b8 100644 --- a/src/files/setup/setuppete.c +++ b/src/files/setup/setuppete.c @@ -710,7 +710,7 @@ u8 func100f_check_mine[] = { // SA and PA yield beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_has_object(CHR_P1P2, OBJ_BRIEFCASE1, /*goto*/ 0x03) reloop(0x08) @@ -800,7 +800,7 @@ u8 func100f_check_mine[] = { u8 func1026_uplink[] = { beginloop(0x10) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_TAXI, /*goto*/ 0x03) reloop(0x10) @@ -888,7 +888,7 @@ u8 func040d_limo[] = { // Wait until not in room beginloop(0x2d) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0002, /*goto*/ 0x03) if_chr_in_room(CHR_P1P2, 0x00, 0x0010, /*goto*/ 0x03) if_chr_in_room(CHR_P1P2, 0x00, 0x0012, /*goto*/ 0x03) @@ -1131,7 +1131,7 @@ u8 func1005_check_things_destroyed[] = { u8 func1006_check_for_end[] = { beginloop(0x05) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_objective_complete(0, /*goto*/ 0x03) reloop(0x05) @@ -1335,7 +1335,7 @@ u8 func0412_cia[] = { // Not shot, not a patroller, or patroller who has started his path label(0x10) yield - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_self_flag_bankx_eq(CHRFLAG0_00004000, TRUE, BANK_0, /*goto*/ 0x37) call_rng @@ -1395,7 +1395,7 @@ u8 func0412_cia[] = { go_to_target_pad(SPEED_WALK) beginloop(0x36) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_saw_death(0x00, /*goto*/ 0x1d) if_shot_near_chr(0x00, /*goto*/ 0x1e) @@ -1572,7 +1572,7 @@ u8 func0413_bugspotter[] = { // Wait until player in sight (mainly) beginloop(0x10) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x04) if_stage_flag_eq(STAGEFLAG_LIMO_READY_TO_LEAVE, TRUE, /*goto*/ LABEL_RUN_AWAY) @@ -1613,10 +1613,10 @@ u8 func0413_bugspotter[] = { goto_next(LABEL_RUN_AWAY) label(0x03) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x03) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x03) goto_next(0x0a) @@ -1683,10 +1683,10 @@ u8 func0413_bugspotter[] = { if_object_in_good_condition(OBJ_LIMO, /*goto*/ 0x03) goto_next(LABEL_RUN_AWAY) label(0x03) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_within_units_of_sight(30, /*goto*/ 0x03) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_within_units_of_sight(30, /*goto*/ 0x03) goto_next(0x04) @@ -1701,7 +1701,7 @@ u8 func0413_bugspotter[] = { endloop(0x0e) label(0x03) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_within_units_of_sight(30, /*goto*/ 0x03) goto_next(0x04) @@ -1822,7 +1822,7 @@ u8 func041d_fbi[] = { label(0x19) set_action(ACTION_SCAN, TRUE) yield - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_alertness(100, OPERATOR_LESS_THAN, /*goto*/ 0x04) goto_next(0x16) @@ -1853,10 +1853,10 @@ u8 func041d_fbi[] = { beginloop(0x06) if_chr_distance_lt(500, /*goto*/ 0x18) if_target_chr_in_sight(/*goto*/ 0x18) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x18) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) endloop(0x06) @@ -1974,7 +1974,7 @@ u8 func041a_robot[] = { set_stage_flag(STAGEFLAG_ROBOT_NEAR_HOME) label(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_stage_flag_eq(STAGEFLAG_TRIGGER_CRASH, TRUE, /*goto*/ 0x01) if_target_chr_in_sight(/*goto*/ 0x08) @@ -2096,7 +2096,7 @@ u8 func041e_sealer1[] = { set_onshot_function(GFUNC_IDLE) beginloop(0x19) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_stage_flag_eq(STAGEFLAG_CRASH_FINISHED, TRUE, /*goto*/ 0x03) if_alertness(100, OPERATOR_LESS_THAN, /*goto*/ 0x04) @@ -2460,7 +2460,7 @@ u8 func1010_elevator_switch[] = { yield beginloop(0x10) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_SWITCH, /*goto*/ 0x03) if_stage_flag_eq(STAGEFLAG_ELEVATOR_SEALED, TRUE, /*goto*/ 0x04) label(0x04) @@ -2949,7 +2949,7 @@ u8 func0411_60f4[] = { u8 func101a_msg_onlyplace[] = { beginloop(0x10) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0014, /*goto*/ 0x03) if_chr_in_room(CHR_P1P2, 0x00, 0x0026, /*goto*/ 0x03) endloop(0x10) @@ -2970,7 +2970,7 @@ u8 func101b_msg_blockedupdoors[] = { endloop(0x10) beginloop(0x05) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x003a, /*goto*/ 0x03) endloop(0x05) @@ -2993,7 +2993,7 @@ u8 func101c_msg_reprogramthattaxi[] = { label(0x03) if_stage_flag_eq(STAGEFLAG_TAXI_REPROGRAMMED, TRUE, /*goto*/ 0x0a) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x004a, /*goto*/ 0x03) endloop(0x05) @@ -3006,7 +3006,7 @@ u8 func101c_msg_reprogramthattaxi[] = { u8 func101d_msg_pointofingress[] = { beginloop(0x10) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0059, /*goto*/ 0x03) endloop(0x10) @@ -3074,7 +3074,7 @@ u8 func1020_elevator_doors[] = { */ u8 func1021_check_topstairs_guy[] = { beginloop(0x10) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_y(CHR_P1P2, 500, OPERATOR_LESS_THAN, /*goto*/ 0x03) goto_next(0x04) label(0x03) @@ -3097,7 +3097,7 @@ u8 func040d_limo_flags[] = { // Wait until player not in certain rooms beginloop(0x2f) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0002, /*goto*/ 0x03) if_chr_in_room(CHR_P1P2, 0x00, 0x0010, /*goto*/ 0x03) if_chr_in_room(CHR_P1P2, 0x00, 0x0012, /*goto*/ 0x03) diff --git a/src/files/setup/setuprit.c b/src/files/setup/setuprit.c index 3a1cd44ea..a7b434643 100644 --- a/src/files/setup/setuprit.c +++ b/src/files/setup/setuprit.c @@ -581,7 +581,7 @@ u8 func1024_give_objects[] = { set_object_flag_bank0(OBJ_REMOTEMINE_COOP, OBJECTFLAG0_00100000) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_has_object(CHR_P1P2, OBJ_EQUIPMENT, /*goto*/ 0x06) endloop(0x04) @@ -599,7 +599,7 @@ u8 func1024_give_objects[] = { u8 func1004_reassign_ailists_during_conversation[] = { // Wait until player in president's room beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0055, /*goto*/ 0x06) if_chr_in_room(CHR_P1P2, 0x00, 0x0056, /*goto*/ 0x06) if_chr_in_room(CHR_P1P2, 0x00, 0x0057, /*goto*/ 0x06) @@ -1121,7 +1121,7 @@ u8 func1009_check_end_level[] = { u8 func100a_autopilot_switch[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_object_in_good_condition(OBJ_AUTOPILOT_SWITCH, /*goto*/ 0x2d) goto_next(0x08) @@ -1678,7 +1678,7 @@ u8 func100c_cockpit_stripes[] = { set_self_flag_bank3(CHRFLAG3_00000040) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x06) if_enemy_distance_lt_and_los(2540, /*goto*/ 0x06) @@ -2204,7 +2204,7 @@ u8 func1010_dumbwaiter1[] = { set_object_image(OBJ_DUMBWAITER1_SWITCH, 0x00, 0x12) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_DUMBWAITER1_SWITCH, /*goto*/ 0x2d) endloop(0x04) @@ -2265,7 +2265,7 @@ u8 func1011_dumbwaiter2[] = { set_object_image(OBJ_DUMBWAITER2_SWITCH, 0x00, 0x12) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_DUMBWAITER2_SWITCH, /*goto*/ 0x2d) endloop(0x04) @@ -2436,7 +2436,7 @@ u8 func0415_cloner1[] = { beginloop(0x04) if_stage_flag_eq(STAGEFLAG_UFO_ATTACHMENT_DAMAGED, TRUE, /*goto*/ 0x0e) // These rooms are the attachment area - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0017, /*goto*/ 0x2d) if_chr_in_room(CHR_P1P2, 0x00, 0x0018, /*goto*/ 0x2d) if_chr_in_room(CHR_P1P2, 0x00, 0x0019, /*goto*/ 0x2d) @@ -2532,7 +2532,7 @@ u8 func0418_cloner2[] = { beginloop(0x04) if_stage_flag_eq(STAGEFLAG_UFO_ATTACHMENT_DAMAGED, TRUE, /*goto*/ 0x0e) // These rooms are the attachment area - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0017, /*goto*/ 0x2d) if_chr_in_room(CHR_P1P2, 0x00, 0x0018, /*goto*/ 0x2d) if_chr_in_room(CHR_P1P2, 0x00, 0x0019, /*goto*/ 0x2d) @@ -2631,7 +2631,7 @@ u8 func041b_cloner3[] = { beginloop(0x04) if_stage_flag_eq(STAGEFLAG_UFO_ATTACHMENT_DAMAGED, TRUE, /*goto*/ 0x0e) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0017, /*goto*/ 0x2d) if_chr_in_room(CHR_P1P2, 0x00, 0x0018, /*goto*/ 0x2d) if_chr_in_room(CHR_P1P2, 0x00, 0x0019, /*goto*/ 0x2d) @@ -2753,7 +2753,7 @@ u8 func041e_blonde[] = { beginloop(0x75) label(0x2d) - consider_coop_for_p1p2_chr(CHR_P1P2) + chr_toggle_p1p2(CHR_P1P2) set_target_chr(CHR_BOND) if_target_chr_in_sight(/*goto*/ 0x6a) if_near_miss(/*goto*/ 0x6b) @@ -2865,7 +2865,7 @@ u8 func0421_trent_waiting[] = { set_chr_flag_bank3(CHR_TRENT, CHRFLAG3_INVINCIBLE_TO_GUNFIRE) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x06) endloop(0x04) @@ -2889,7 +2889,7 @@ u8 func0420_trent_attacking[] = { stop_chr beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) try_unset_chr_flag_bank3_02000000(CHR_SELF, /*goto*/ 0x2d) set_target_chr(CHR_PRESIDENT) @@ -3001,7 +3001,7 @@ u8 func1013_unhide_trent_and_blondes[] = { hide_chr(CHR_BLONDE2) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_stage_flag_eq(STAGEFLAG_PRESIDENT_STARTED_RUNNING, TRUE, /*goto*/ 0x2d) reloop(0x04) @@ -3128,7 +3128,7 @@ u8 func0407_steward[] = { set_onshot_function(FUNC_STEWARD_SHOT) beginloop(0x03) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_idle(/*goto*/ 0x2d) call_rng @@ -3203,7 +3203,7 @@ u8 func0407_steward[] = { goto_first(0x79) beginloop(0x87) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x89) if_shot_near_chr(0x00, /*goto*/ 0x89) @@ -3357,7 +3357,7 @@ u8 func1016_msg_onthislevel[] = { restart_timer beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_y(CHR_P1P2, 440, OPERATOR_LESS_THAN, /*goto*/ 0x06) goto_next(0x2d) @@ -3400,7 +3400,7 @@ u8 func1017_msg_gettothecockpit[] = { u8 func1018_msg_maybeamine[] = { beginloop(0x04) if_stage_flag_eq(STAGEFLAG_ALL_OBJECTIVES_COMPLETE, TRUE, /*goto*/ 0x0e) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_objective_complete(2, /*goto*/ 0x2d) reloop(0x04) @@ -3617,7 +3617,7 @@ u8 func101a_equipment_switch[] = { set_object_image(OBJ_EQUIPMENT_SWITCH, 0x00, 0x12) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_EQUIPMENT_SWITCH, /*goto*/ 0x2d) reloop(0x04) @@ -3678,7 +3678,7 @@ u8 func101b_hoverbike_switch[] = { open_door(0x20) beginloop(0x09) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_door_state(0x20, DOORSTATEBIT_CLOSING, /*goto*/ 0x2d) if_chr_activated_object(CHR_P1P2, OBJ_HOVERBIKE_SWITCH, /*goto*/ 0x0a) reloop(0x09) diff --git a/src/files/setup/setupsev.c b/src/files/setup/setupsev.c index 858e64404..3c0ece994 100644 --- a/src/files/setup/setupsev.c +++ b/src/files/setup/setupsev.c @@ -1166,7 +1166,7 @@ u8 func1005_check_experiemnt_destroyed_pointless[] = { u8 func1006_activate_alarm[] = { // Wait until player is in crate room beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x003f, /*goto*/ 0x2c) endloop(0x04) @@ -1309,7 +1309,7 @@ u8 func1007_disable_pods[] = { u8 func1008_check_console[] = { // Wait for console activated or destroyed beginloop(0x04) - if_chr_activated_object(CHR_F3, OBJ_CONSOLE, /*goto*/ 0x2c) + if_chr_activated_object(CHR_ANY, OBJ_CONSOLE, /*goto*/ 0x2c) if_object_in_good_condition(OBJ_CONSOLE, /*goto*/ 0x06) goto_next(0x08) label(0x06) @@ -1383,7 +1383,7 @@ u8 func1009_check_for_exit[] = { u8 func100a_vertical_door_sounds[] = { // Wait for player to activate vertical doors beginloop(0x5d) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, 0x46, /*goto*/ 0x2c) if_chr_activated_object(CHR_P1P2, 0x47, /*goto*/ 0x2c) if_chr_activated_object(CHR_P1P2, 0x48, /*goto*/ 0x2c) @@ -1835,7 +1835,7 @@ u8 func100f_init_lighting[] = { u8 func1010_unload_part1_chrs[] = { // Wait until player is in room 0x0067 - probably crate room or so beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0067, /*goto*/ 0x2c) endloop(0x04) diff --git a/src/files/setup/setupsho.c b/src/files/setup/setupsho.c index 7afb48c36..2e76c2b1b 100644 --- a/src/files/setup/setupsho.c +++ b/src/files/setup/setupsho.c @@ -852,7 +852,7 @@ u8 func0407_init_cloaked_skedar[] = { beginloop(0x04) // Wait until clone dead - which it would be immediately? - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) label(0x4f) if_chr_death_animation_finished(CHR_CLONE, /*goto*/ 0x4f) reloop(0x04) @@ -886,7 +886,7 @@ u8 func0408_cloaked_skedar[] = { if_objective_complete(4, /*goto*/ 0x0e) // King is alive - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_distance_to_pad_lt(CHR_P1P2, 300, TARGET_PAD, /*goto*/ 0x2d) // 1 in 256 chance of making skedar roar sound @@ -919,7 +919,7 @@ u8 func0404_miniskedar_spawner[] = { // Wait until player near trigger pad beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_distance_to_pad_lt(CHR_P1P2, 300, TARGET_PAD, /*goto*/ 0x4f) endloop(0x04) @@ -1065,7 +1065,7 @@ u8 func1005_5e0c[] = { yield beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_object_distance_to_pad_lt(OBJ_PUZZLEROCK, 50, 0x00d4, /*goto*/ 0x2d) if_chr_distance_to_pad_lt(CHR_P1P2, 50, 0x00d4, /*goto*/ 0x2d) if_chr_in_room(CHR_P1P2, 0x00, 0x005f, /*goto*/ 0x2e) @@ -1440,7 +1440,7 @@ u8 func1009_altar[] = { if_difficulty_lt(DIFF_SA, /*goto*/ 0x0f) beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_object_flag_bank1(OBJ_ALTAR, OBJECTFLAG1_00002000, /*goto*/ 0x2d) if_chr_distance_to_pad_lt(CHR_P1P2, 300, 0x0137, /*goto*/ 0x2e) label(0x2d) @@ -1688,7 +1688,7 @@ u8 func0409_reaper_slayer_skedar[] = { kneel beginloop(0x5f) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) label(0x2d) set_target_chr(CHR_P1P2) if_self_flag_bankx_eq(CHRFLAG0_AIVSAI, FALSE, BANK_0, /*goto*/ 0x2e) @@ -1756,7 +1756,7 @@ u8 func0409_reaper_slayer_skedar[] = { label(0x6a) call_rng - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_player_looking_at_something_maybe(0x00, 0x00, 0x01, /*goto*/ 0x06) if_target_chr_in_sight(/*goto*/ 0x6b) @@ -1776,7 +1776,7 @@ u8 func0409_reaper_slayer_skedar[] = { restart_timer beginloop(0x6e) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x6b) if_timer_gt(300, /*goto*/ 0x06) @@ -1814,7 +1814,7 @@ u8 func100a_army_room[] = { set_lights_state(0x0087, 0x01, 0x06, 0x00, 0x00) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0082, /*goto*/ 0x2d) endloop(0x04) @@ -1851,7 +1851,7 @@ u8 func100a_army_room[] = { u8 func100b_check_sanctum_accessed[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x007a, /*goto*/ 0x2d) endloop(0x04) @@ -1929,7 +1929,7 @@ u8 func040c_king_waiting[] = { set_morale(0) beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0088, /*goto*/ 0x2d) endloop(0x08) @@ -1961,7 +1961,7 @@ u8 func040d_king_combat[] = { #define LABEL_LOW_SHIELD 0x7c beginloop(0x59) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_in_disarm_range(/*goto*/ 0x03) if_chr_shield_lt(CHR_SELF, 20, /*goto*/ LABEL_LOW_SHIELD) @@ -1969,7 +1969,7 @@ u8 func040d_king_combat[] = { // Main loop label(LABEL_MAINLOOP) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) try_face_entity(0x0200, 0x0000, /*goto*/ 0x04) @@ -2991,7 +2991,7 @@ u8 func0413_hide[] = { u8 func1015_msg_specialpillars[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0026, /*goto*/ 0x91) if_chr_in_room(CHR_P1P2, 0x00, 0x0031, /*goto*/ 0x92) if_chr_in_room(CHR_P1P2, 0x00, 0x0035, /*goto*/ 0x93) @@ -3039,7 +3039,7 @@ u8 func1016_msg_powersmoreconstant[] = { restart_timer beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0077, /*goto*/ 0x2d) endloop(0x04) @@ -3051,7 +3051,7 @@ u8 func1016_msg_powersmoreconstant[] = { u8 func1017_msg_skedararmy[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0082, /*goto*/ 0x2d) endloop(0x04) @@ -3063,7 +3063,7 @@ u8 func1017_msg_skedararmy[] = { u8 func1018_msg_cutoffthehead[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0088, /*goto*/ 0x2d) endloop(0x04) diff --git a/src/files/setup/setuptra.c b/src/files/setup/setuptra.c index dc8a61513..e151be536 100644 --- a/src/files/setup/setuptra.c +++ b/src/files/setup/setuptra.c @@ -816,7 +816,7 @@ u8 func0402_jonathan_waiting_for_meetup[] = { set_self_flag_bank3(CHRFLAG3_00080000) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x06) endloop(0x04) @@ -1496,7 +1496,7 @@ u8 func0406_unused_0406[] = { u8 func1008_spawngroup1[] = { // Wait until meeting done and player in the T-junction corridor beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_stage_flag_eq(STAGEFLAG_MET_JON, TRUE, /*goto*/ 0x06) reloop(0x04) @@ -1852,7 +1852,7 @@ u8 func1009_blow_up_wall[] = { u8 func100a_check_hangar_accessed[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x00e7, /*goto*/ 0x06) endloop(0x04) @@ -1900,7 +1900,7 @@ u8 func100c_medpack_activation[] = { endloop(0x67) beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_difficulty_lt(DIFF_SA, /*goto*/ 0x0c) if_chr_activated_object(CHR_P1P2, OBJ_HOVERBED, /*goto*/ 0x06) reloop(0x04) @@ -1938,7 +1938,7 @@ u8 func100c_medpack_activation[] = { yield beginloop(0x0c) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x00df, /*goto*/ 0x32) endloop(0x0c) @@ -2030,7 +2030,7 @@ u8 func040b_elvis_follow[] = { u8 func100f_terminals[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, OBJ_TERMINAL1, /*goto*/ 0x08) if_chr_activated_object(CHR_P1P2, OBJ_TERMINAL2, /*goto*/ 0x0a) reloop(0x04) @@ -2222,7 +2222,7 @@ u8 func1011_unlock_doors_when_jo_escaping[] = { u8 func1012_hoverbike_auto_doors[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_stage_flag_eq(STAGEFLAG_JO_ESCAPE_STARTED, TRUE, /*goto*/ 0x06) reloop(0x04) @@ -3133,7 +3133,7 @@ u8 func1021_jo_escaping[] = { set_stage_flag(STAGEFLAG_TRIGGER_JETBIKE_MESSAGE) beginloop(0x0a) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x0014, /*goto*/ 0x06) endloop(0x0a) @@ -3288,7 +3288,7 @@ u8 func041a_init_superdragon_guard[] = { u8 func101a_medpack_switch[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_object_in_good_condition(OBJ_MEDPACK_SWITCH, /*goto*/ 0x32) if_difficulty_lt(DIFF_PA, /*goto*/ 0x06) set_stage_flag(STAGEFLAG_MEDPACK_SWITCH_DESTROYED) @@ -3321,7 +3321,7 @@ u8 unregistered_function1[] = { // Wait until player in mine room beginloop(0x08) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x00dc, /*goto*/ 0x32) if_chr_in_room(CHR_P1P2, 0x00, 0x00dd, /*goto*/ 0x32) endloop(0x08) @@ -3354,7 +3354,7 @@ u8 func040f_warp_jon_to_catwalk[] = { u8 func101d_msg_medpackaroundhere[] = { beginloop(0x04) if_difficulty_lt(DIFF_PA, /*goto*/ 0x06) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x00d2, /*goto*/ 0x32) endloop(0x04) @@ -3391,7 +3391,7 @@ u8 func101e_msg_hookup[] = { u8 func101f_msg_oil[] = { beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_stage_flag_eq(STAGEFLAG_JON_SAID_MAINT_HATCH, TRUE, /*goto*/ 0x32) reloop(0x04) diff --git a/src/files/setup/setupwax.c b/src/files/setup/setupwax.c index 0fa9117f2..99f3010fd 100644 --- a/src/files/setup/setupwax.c +++ b/src/files/setup/setupwax.c @@ -1157,7 +1157,7 @@ u8 func040d_start_path37[] = { u8 func1002_lightswitch[] = { // Wait until switch activated beginloop(0x04) - if_chr_activated_object(CHR_F3, OBJ_LIGHTSWITCH, /*goto*/ 0x2c) + if_chr_activated_object(CHR_ANY, OBJ_LIGHTSWITCH, /*goto*/ 0x2c) reloop(0x04) label(0x2c) @@ -1303,7 +1303,7 @@ u8 func0411_cass_in_office[] = { animation(0x00a0, 0, 193, 0x18, 0x10, CHR_SELF, 2) beginloop(0x54) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x55) endloop(0x54) @@ -1340,7 +1340,7 @@ u8 func0411_cass_in_office[] = { // Wait until player in disarm range beginloop(0x5a) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_in_disarm_range(/*goto*/ 0x83) reloop(0x5a) @@ -1417,7 +1417,7 @@ u8 func0413_cass_running[] = { stop_chr beginloop(0x09) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x2c) endloop(0x09) @@ -1505,7 +1505,7 @@ u8 func1006_lift_disabling[] = { // Wait until player Y above -4300 beginloop(0x03) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_y(CHR_P1P2, -4300, OPERATOR_LESS_THAN, /*goto*/ 0x2c) goto_next(0x06) label(0x2c) @@ -1573,7 +1573,7 @@ u8 func0415_chief[] = { // Wait until player in sight beginloop(0x03) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_player_looking_at_something_maybe(0x00, 0x00, 0x01, /*goto*/ 0x06) if_target_chr_in_sight(/*goto*/ 0x2c) @@ -1602,7 +1602,7 @@ u8 func100f_disable_chiefs_lift[] = { // Wait until player above -4400 beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_y(CHR_P1P2, -4400, OPERATOR_LESS_THAN, /*goto*/ 0x2c) goto_next(0x06) label(0x2c) @@ -1636,7 +1636,7 @@ u8 func100f_disable_chiefs_lift[] = { u8 func1007_bomb_logic[] = { // Wait until in lab elevator and has bomb equipped beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_in_room(CHR_P1P2, 0x00, 0x002b, /*goto*/ 0x2c) reloop(0x04) @@ -1731,7 +1731,7 @@ u8 func1008_check_bomb_unplantable[] = { // Door is closed label(0xb2) yield - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_stage_flag_eq(STAGEFLAG_BOMB_PLANTED, TRUE, /*goto*/ 0x0d) if_chr_in_room(CHR_BOND, 0x00, 0x002b, /*goto*/ 0x06) if_chr_in_room(CHR_COOP, 0x00, 0x002b, /*goto*/ 0x06) @@ -1778,7 +1778,7 @@ u8 func1009_toggle_top_guards[] = { // Wait until player above -4100 beginloop(0x04) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_y(CHR_P1P2, -4100, OPERATOR_LESS_THAN, /*goto*/ 0x2c) goto_next(0x06) label(0x2c) @@ -1837,7 +1837,7 @@ u8 func100a_check_for_completion[] = { // Wait until player at helipad label(0x2c) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_y(CHR_P1P2, 0, OPERATOR_LESS_THAN, /*goto*/ 0x2d) // Wait 1 second @@ -1889,7 +1889,7 @@ u8 func100b_start_lifts[] = { u8 func100c_lift_doors[] = { // Wait until player activated a lift door beginloop(0xc1) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_activated_object(CHR_P1P2, 0x57, /*goto*/ 0xb1) if_chr_activated_object(CHR_P1P2, 0x58, /*goto*/ 0xb1) if_chr_activated_object(CHR_P1P2, 0x59, /*goto*/ 0xb1) diff --git a/src/game/chr/chr.c b/src/game/chr/chr.c index 21f4f4933..b94f565bf 100644 --- a/src/game/chr/chr.c +++ b/src/game/chr/chr.c @@ -50201,37 +50201,37 @@ glabel chrResolveId //{ // if (ref) { // switch (id) { -// case 0xfa: +// case CHR_SEESHOT: // id = ref->chrseeshot; // break; -// case 0xfb: +// case CHR_SEEDIE: // id = ref->chrseedie; // break; -// case 0xfc: +// case CHR_PRESET: // id = ref->chrpreset1; // break; -// case 0xfd: +// case CHR_SELF: // id = ref->chrnum; // break; -// case 0xf9: +// case CHR_CLONE: // id = ref->chrdup; // break; -// case 0xf8: +// case CHR_BOND: // if (g_Vars.bond && g_Vars.bond->targetpos && g_Vars.bond->targetpos->chr) { // id = g_Vars.bond->targetpos->chr->chrnum; // } // break; -// case 0xf5: +// case CHR_COOP: // if (g_Vars.coop && g_Vars.coop->targetpos && g_Vars.coop->targetpos->chr) { // id = g_Vars.coop->targetpos->chr->chrnum; // } // break; -// case 0xf4: +// case CHR_ANTI: // if (g_Vars.anti && g_Vars.anti->targetpos && g_Vars.anti->targetpos->chr) { // id = g_Vars.anti->targetpos->chr->chrnum; // } // break; -// case 0xf2: +// case CHR_P1P2: // { // u32 index = g_Vars.coopplayernum >= 0 ? ref->p1p2 : g_Vars.bondplayernum; // struct player *player = g_Vars.players[index]; @@ -50240,7 +50240,7 @@ glabel chrResolveId // } // } // break; -// case 0xf1: +// case CHR_P1P2_OPPOSITE: // if (g_Vars.coopplayernum >= 0) { // struct player *player = g_Vars.players[1 - ref->p1p2]; // if (player && player->targetpos && player->targetpos->chr) { @@ -50248,7 +50248,7 @@ glabel chrResolveId // } // } // break; -// case 0xf6: +// case CHR_TARGET: // { // struct position *target = chrGetTargetPosition(ref); // if ((target->unk00 == 3 || target->unk00 == 6) && target->chr) { @@ -50259,22 +50259,22 @@ glabel chrResolveId // } // } else { // ref is NULL // switch (id) { -// case 0xf8: +// case CHR_BOND: // if (g_Vars.bond && g_Vars.bond->targetpos && g_Vars.bond->targetpos->chr) { // id = g_Vars.bond->targetpos->chr->chrnum; // } // break; -// case 0xf5: +// case CHR_COOP: // if (g_Vars.coop && g_Vars.coop->targetpos && g_Vars.coop->targetpos->chr) { // id = g_Vars.coop->targetpos->chr->chrnum; // } // break; -// case 0xf4: +// case CHR_ANTI: // if (g_Vars.anti && g_Vars.anti->targetpos && g_Vars.anti->targetpos->chr) { // id = g_Vars.anti->targetpos->chr->chrnum; // } // break; -// case 0xf2: // P1/P2 +// case CHR_P1P2: // { // struct player *player = g_Vars.players[g_Vars.bondplayernum]; // if (player && player->targetpos && player->targetpos->chr) { @@ -50282,7 +50282,7 @@ glabel chrResolveId // } // } // break; -// case 0xf1: // P1/P2 inverse? +// case CHR_P1P2_OPPOSITE: // if (g_Vars.coopplayernum >= 0) { // struct player *player = g_Vars.players[g_Vars.coopplayernum]; // if (player && player->targetpos && player->targetpos->chr) { diff --git a/src/game/chr/chraicommands.c b/src/game/chr/chraicommands.c index 895d08b50..4a5e28343 100644 --- a/src/game/chr/chraicommands.c +++ b/src/game/chr/chraicommands.c @@ -3252,7 +3252,7 @@ glabel aiIfChrActivatedObject // bool pass = false; // // if (obj && obj->pos) { -// if (cmd[2] == CHR_F3) { +// if (cmd[2] == CHR_ANY) { // if (obj->hidden & (OBJHIDDENFLAG_ACTIVATED_BY_BOND | OBJHIDDENFLAG_ACTIVATED_BY_COOP)) { // pass = true; // obj->hidden &= ~(OBJHIDDENFLAG_ACTIVATED_BY_BOND | OBJHIDDENFLAG_ACTIVATED_BY_COOP); @@ -13618,7 +13618,7 @@ bool aiToggleP1P2(void) /** * @cmd 01b5 */ -bool ai01b5(void) +bool aiChrSetP1P2(void) { u8 *cmd = g_Vars.ailist + g_Vars.aioffset; diff --git a/src/include/commands.h b/src/include/commands.h index f5bcea6dd..229ad163b 100644 --- a/src/include/commands.h +++ b/src/include/commands.h @@ -1770,7 +1770,14 @@ mkshort(0x01b2), \ value, -#define consider_coop_for_p1p2_chr(chr) \ +/** + * Toggle which player (Bond or Coop) is referenced by the chr's CHR_P1P2 + * identifier. This should be called inside a loop to give the illusion of + * referencing both players. + * + * This is safe to use in solo mode; it will not set it to coop if they don't exist. + */ +#define chr_toggle_p1p2(chr) \ mkshort(0x01b3), \ chr, @@ -1778,6 +1785,11 @@ mkshort(0x01b4), \ label, +#define chr_set_p1p2(chr, p1p2_chr) \ + mkshort(0x01b5), \ + chr, \ + p1p2_chr, + #define enable_snow(bool) \ mkshort(0x01b6), \ bool, diff --git a/src/include/constants.h b/src/include/constants.h index 1aeacd4a2..c07325a38 100644 --- a/src/include/constants.h +++ b/src/include/constants.h @@ -82,16 +82,18 @@ #define CHANNEL_9 9 #define CHANNEL_10 10 -#define CHR_P1P2 0xf2 -#define CHR_F3 0xf3 -#define CHR_ANTI 0xf4 -#define CHR_COOP 0xf5 -#define CHR_TARGET 0xf6 -#define CHR_BOND 0xf8 -#define CHR_CLONE 0xf9 -#define CHR_SEEDIE 0xfb -#define CHR_PRESET 0xfc -#define CHR_SELF 0xfd +#define CHR_P1P2_OPPOSITE 0xf1 +#define CHR_P1P2 0xf2 +#define CHR_ANY 0xf3 // Only supported by if_chr_activated_object command +#define CHR_ANTI 0xf4 +#define CHR_COOP 0xf5 +#define CHR_TARGET 0xf6 +#define CHR_BOND 0xf8 +#define CHR_CLONE 0xf9 +#define CHR_SEESHOT 0xfa +#define CHR_SEEDIE 0xfb +#define CHR_PRESET 0xfc +#define CHR_SELF 0xfd // Character flags - bank 0 (chr struct offset 0x114 - chr->flags) #define CHRFLAG0_CANT_ALERT_GROUP 0x00000001 // Don't set group alertness when becoming aware diff --git a/src/include/game/chr/chraicommands.h b/src/include/game/chr/chraicommands.h index 355f55ab6..9eb8df46a 100644 --- a/src/include/game/chr/chraicommands.h +++ b/src/include/game/chr/chraicommands.h @@ -400,7 +400,7 @@ /*0x01b2*/ bool ai01b2(void); /*0x01b3*/ bool aiToggleP1P2(void); /*0x01b4*/ bool ai01b4(void); -/*0x01b5*/ bool ai01b5(void); +/*0x01b5*/ bool aiChrSetP1P2(void); /*0x01b6*/ bool aiConfigureSnow(void); /*0x01b7*/ bool aiChrSetCloaked(void); /*0x01b8*/ bool aiSetAutogunType(void); diff --git a/src/setup/ailists.c b/src/setup/ailists.c index 42ca42416..f8604cbdc 100644 --- a/src/setup/ailists.c +++ b/src/setup/ailists.c @@ -145,7 +145,7 @@ u8 func0006_unalerted[] = { set_action(ACTION_SCAN, TRUE) yield dprint 'S','2',0, - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) label(0x13) if_alertness(100, OPERATOR_LESS_THAN, /*goto*/ 0x16) @@ -540,7 +540,7 @@ u8 func0006_unalerted[] = { dprint 'S','9',0, dprint 'W','A','L','K','I','N','G','\n',0, if_shot_near_chr(0x00, /*goto*/ 0x16) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_player_looking_at_something_maybe(0x00, 0x00, 0x01, /*goto*/ 0x13) if_target_chr_in_sight(/*goto*/ 0x16) @@ -562,7 +562,7 @@ u8 func0006_unalerted[] = { dprint 'E','X','A','M',' ','B','O','D','Y','\n',0, if_shot_near_chr(0x00, /*goto*/ 0x16) set_hear_distance(10000) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_hears_gunfire(/*goto*/ 0x16) if_player_looking_at_something_maybe(0x00, 0x00, 0x01, /*goto*/ 0x13) @@ -1178,12 +1178,12 @@ u8 func0007_alerted[] = { goto_next(0xef) label(0xee) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_target_eq(CHR_SELF, CHR_P1P2, FALSE, /*goto*/ 0xee) set_target_chr(CHR_P1P2) if_in_disarm_range(/*goto*/ 0x9a) label(0xee) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) label(0xef) endloop(0x03) @@ -1215,7 +1215,7 @@ u8 func0007_alerted[] = { dprint 'A','M','B','1','\n',0, if_distance_from_target_to_pad_lt(200, TARGET_PAD, /*goto*/ 0x13) dprint 'A','M','B','2','\n',0, - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_enemy_distance_lt_and_los(1200, /*goto*/ 0xee) endloop(0xa2) @@ -1265,7 +1265,7 @@ u8 func0007_alerted[] = { try_aim_and_shoot_thing1(0x0220, 0x0000, /*goto*/ 0xa9) beginloop(0xa9) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_near_miss(/*goto*/ 0x13) if_shot_near_chr(0x00, /*goto*/ 0x13) @@ -1347,12 +1347,12 @@ u8 func0007_alerted[] = { goto_next(0xef) label(0xee) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_target_eq(CHR_SELF, CHR_P1P2, FALSE, /*goto*/ 0xee) set_target_chr(CHR_P1P2) if_in_disarm_range(/*goto*/ 0x13) label(0xee) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) label(0xef) goto_first(LABEL_SNIPE) @@ -1531,7 +1531,7 @@ u8 func0007_alerted[] = { beginloop(0x59) cmd013d_if_grenade_thrown_nearby_maybe(ACTION_GRENADE_STOP, /*goto*/ LABEL_FLEE_GRENADE) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_within_units_of_sight(30, /*goto*/ 0x5f) if_timer_gt(240, /*goto*/ 0x61) @@ -1885,13 +1885,13 @@ u8 func0007_alerted[] = { goto_next(0xef) label(0xee) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_target_eq(CHR_SELF, CHR_P1P2, FALSE, /*goto*/ 0xee) set_target_chr(CHR_P1P2) if_within_units_of_sight(30, /*goto*/ 0x42) if_chr_in_view(/*goto*/ 0x42) label(0xee) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) label(0xef) if_timer_gt(240, /*goto*/ 0x49) @@ -1921,12 +1921,12 @@ u8 func0007_alerted[] = { if_chr_target_eq(CHR_SELF, CHR_P1P2, FALSE, /*goto*/ 0xee) goto_next(0xef) label(0xee) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) if_chr_target_eq(CHR_SELF, CHR_P1P2, FALSE, /*goto*/ 0xee) set_target_chr(CHR_P1P2) if_within_units_of_sight(30, /*goto*/ 0x42) label(0xee) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) label(0xef) if_timer_gt(600, /*goto*/ 0x3d) @@ -2178,7 +2178,7 @@ u8 func0007_alerted[] = { set_function(CHR_SELF, GFUNC_HAND_COMBAT) label(0x13) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_distance_gt(1300, /*goto*/ 0x13) if_self_flag_bankx_eq(CHRFLAG1_01000000, TRUE, BANK_1, /*goto*/ 0x16) @@ -2491,7 +2491,7 @@ u8 func0007_alerted[] = { beginloop(0x6e) cmd013d_if_grenade_thrown_nearby_maybe(ACTION_GRENADE_STOP, /*goto*/ LABEL_FLEE_GRENADE) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_distance_lt(3000, /*goto*/ 0x6f) endloop(0x6e) @@ -2514,7 +2514,7 @@ u8 func0007_alerted[] = { beginloop(0x71) if_chr_dying(CHR_SELF, /*goto*/ 0x88) if_timer_gt(300, /*goto*/ 0x16) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_in_view(/*goto*/ 0x72) if_bitcheck_in_position_struct(/*goto*/ 0x13) @@ -2696,7 +2696,7 @@ u8 func000a_do_idle_animation[] = { // Nothing jumps to here or below beginloop(0x15) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x13) if_self_flag_bankx_eq(CHRFLAG0_AIVSAI, FALSE, BANK_0, /*goto*/ 0x16) @@ -3515,7 +3515,7 @@ u8 func000e_see_then_attack[] = { set_onshot_function(GFUNC_ALERTED) beginloop(0x0c) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_chr_sees_player(/*goto*/ 0x16) endloop(0x0c) @@ -4153,7 +4153,7 @@ u8 func001b_observe_camspy[] = { beginloop(0x0c) if_timer_gt(60, /*goto*/ 0x0b) if_chr_distance_lt(300, /*goto*/ 0x13) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_player_looking_at_something_maybe(0x00, 0x00, 0x01, /*goto*/ 0x16) if_target_chr_in_sight(/*goto*/ 0x0b) @@ -4173,7 +4173,7 @@ u8 func001b_observe_camspy[] = { beginloop(0x03) if_timer_gt(300, /*goto*/ 0x04) if_chr_distance_gt(400, /*goto*/ 0x13) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_player_looking_at_something_maybe(0x00, 0x00, 0x01, /*goto*/ 0x16) if_target_chr_in_sight(/*goto*/ 0x0b) @@ -4195,7 +4195,7 @@ u8 func001b_observe_camspy[] = { if_chr_idle(/*goto*/ 0x13) if_timer_gt(300, /*goto*/ 0x06) label(0x13) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_player_looking_at_something_maybe(0x00, 0x00, 0x01, /*goto*/ 0x16) if_target_chr_in_sight(/*goto*/ 0x0b) @@ -4291,7 +4291,7 @@ u8 func001d_search_for_player[] = { beginloop(0x03) dprint 'S','E','A','R','C','H','I','N','I','T','\n',0, - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_target_chr_in_sight(/*goto*/ 0x12) if_self_flag_bankx_eq(CHRFLAG0_AIVSAI, FALSE, BANK_0, /*goto*/ 0x13) @@ -4319,7 +4319,7 @@ u8 func001d_search_for_player[] = { goto_next(0x05) label(0x13) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_player_looking_at_something_maybe(0x00, 0x00, 0x01, /*goto*/ 0x15) if_target_chr_in_sight(/*goto*/ 0x12) @@ -4384,7 +4384,7 @@ u8 func001d_search_for_player[] = { if_self_flag_bankx_eq(CHRFLAG1_00000400, FALSE, BANK_1, /*goto*/ 0x13) if_chr_distance_lt(500, /*goto*/ 0x13) label(0x13) - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) dprint '1','\n',0, if_timer_gt(600, /*goto*/ 0x0b) @@ -4470,7 +4470,7 @@ u8 func001f_related_to_spawning[] = { label(0x1a) set_action(ACTION_SCAN, TRUE) yield - consider_coop_for_p1p2_chr(CHR_SELF) + chr_toggle_p1p2(CHR_SELF) set_target_chr(CHR_P1P2) if_alertness(100, OPERATOR_LESS_THAN, /*goto*/ 0x16) goto_next(0x78) diff --git a/src/setup/setup_000000.c b/src/setup/setup_000000.c index f11a9837f..1432b6789 100644 --- a/src/setup/setup_000000.c +++ b/src/setup/setup_000000.c @@ -14569,7 +14569,7 @@ bool (*g_CommandPointers[])(void) = { /*0x01b2*/ ai01b2, /*0x01b3*/ aiToggleP1P2, /*0x01b4*/ ai01b4, - /*0x01b5*/ ai01b5, + /*0x01b5*/ aiChrSetP1P2, /*0x01b6*/ aiConfigureSnow, /*0x01b7*/ aiChrSetCloaked, /*0x01b8*/ aiSetAutogunType,