Rename hudmsg functions
This commit is contained in:
parent
a551473111
commit
fadd2e9606
|
|
@ -2002,23 +2002,23 @@ u8 func100e_check_ecm_mines[] = {
|
|||
|
||||
label(0x08)
|
||||
reset_timer
|
||||
message(CHR_BOND, L_AME(29)) // "ECM Mine placed correctly."
|
||||
show_hudmsg(CHR_BOND, L_AME(29)) // "ECM Mine placed correctly."
|
||||
yield
|
||||
mute_channel(CHANNEL_0)
|
||||
assign_sound(0x8113, CHANNEL_0)
|
||||
control_sound_from_object(CHANNEL_0, OBJ_SECURITYHUB, TRUE)
|
||||
message(CHR_BOND, L_AME(76)) // "Internal security system temporarily disabled."
|
||||
show_hudmsg(CHR_BOND, L_AME(76)) // "Internal security system temporarily disabled."
|
||||
set_stage_flag(STAGEFLAG_SECURITYHUB_COMPLETE)
|
||||
reloop(0x00)
|
||||
|
||||
label(0x0a)
|
||||
reset_timer
|
||||
message(CHR_BOND, L_AME(29)) // "ECM Mine placed correctly."
|
||||
show_hudmsg(CHR_BOND, L_AME(29)) // "ECM Mine placed correctly."
|
||||
yield
|
||||
mute_channel(CHANNEL_1)
|
||||
assign_sound(0x8113, CHANNEL_1)
|
||||
control_sound_from_object(CHANNEL_1, OBJ_EXTCOMMSHUB, TRUE)
|
||||
message(CHR_BOND, L_AME(77)) // "External communications hub disabled."
|
||||
show_hudmsg(CHR_BOND, L_AME(77)) // "External communications hub disabled."
|
||||
set_stage_flag(STAGEFLAG_EXTCOMMSHUB_COMPLETE)
|
||||
reloop(0x00)
|
||||
|
||||
|
|
@ -2087,13 +2087,13 @@ u8 func100e_check_ecm_mines[] = {
|
|||
set_stage_flag(STAGEFLAG_EXTCOMMSHUB_MINES_WASTED)
|
||||
|
||||
label(0x8c)
|
||||
message(CHR_BOND, L_AME(28)) // "Badly placed ECM Mine."
|
||||
show_hudmsg(CHR_BOND, L_AME(28)) // "Badly placed ECM Mine."
|
||||
reloop(0x00)
|
||||
|
||||
// Mines wasted with both hubs remaining
|
||||
label(0x8d)
|
||||
message(CHR_BOND, L_AME(28)) // "Badly placed ECM Mine."
|
||||
message(CHR_BOND, L_AME(32)) // "CANNOT complete all objectives."
|
||||
show_hudmsg(CHR_BOND, L_AME(28)) // "Badly placed ECM Mine."
|
||||
show_hudmsg(CHR_BOND, L_AME(32)) // "CANNOT complete all objectives."
|
||||
set_stage_flag(STAGEFLAG_SECURITYHUB_MINES_WASTED)
|
||||
set_stage_flag(STAGEFLAG_EXTCOMMSHUB_MINES_WASTED)
|
||||
reloop(0x00)
|
||||
|
|
@ -2118,7 +2118,7 @@ u8 func1004_check_lab_lift_located[] = {
|
|||
|
||||
label(0x2c)
|
||||
if_stage_flag_eq(STAGEFLAG_LAB_LIFT_LOCATED, TRUE, /*goto*/ 0x2c)
|
||||
message(CHR_P1P2, L_AME(78)) // "Laboratory lift located."
|
||||
show_hudmsg(CHR_P1P2, L_AME(78)) // "Laboratory lift located."
|
||||
set_stage_flag(STAGEFLAG_LAB_LIFT_LOCATED)
|
||||
label(0x2c)
|
||||
yield
|
||||
|
|
@ -2157,7 +2157,7 @@ u8 func1006_check_programmer_dead[] = {
|
|||
|
||||
label(0x2c)
|
||||
if_stage_flag_eq(STAGEFLAG_PROGRAMMER_LOGGED_IN, TRUE, /*goto*/ 0x06)
|
||||
message(CHR_BOND, L_AME(57)) // "Critical mission personnel killed."
|
||||
show_hudmsg(CHR_BOND, L_AME(57)) // "Critical mission personnel killed."
|
||||
set_stage_flag(STAGEFLAG_PROGRAMMER_DEAD)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
|
|
@ -2188,7 +2188,7 @@ u8 func1007_uplinking[] = {
|
|||
|
||||
label(0xc0)
|
||||
if_chr_weapon_equipped(CHR_TARGET, WEAPON_DATAUPLINK, /*goto*/ 0x2c)
|
||||
message(CHR_TARGET, L_AME(49)) // "Unable to download - Data Uplink needed."
|
||||
show_hudmsg(CHR_TARGET, L_AME(49)) // "Unable to download - Data Uplink needed."
|
||||
call_rng
|
||||
if_rand_lt(60, /*goto*/ 0x0d)
|
||||
if_rand_lt(120, /*goto*/ 0x0e)
|
||||
|
|
@ -2222,7 +2222,7 @@ u8 func1007_uplinking[] = {
|
|||
label(0x2c)
|
||||
if_stage_flag_eq(STAGEFLAG_PROGRAMMER_LOGGED_IN, TRUE, /*goto*/ 0xae)
|
||||
restart_timer
|
||||
message(CHR_TARGET, L_AME(46)) // "ACCESS DENIED - password needed."
|
||||
show_hudmsg(CHR_TARGET, L_AME(46)) // "ACCESS DENIED - password needed."
|
||||
assign_sound(0x01c0, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_PC, FALSE)
|
||||
|
||||
|
|
@ -2235,7 +2235,7 @@ u8 func1007_uplinking[] = {
|
|||
goto_first(0x04)
|
||||
|
||||
label(0xae)
|
||||
message(CHR_TARGET, L_AME(44)) // "File download initiated."
|
||||
show_hudmsg(CHR_TARGET, L_AME(44)) // "File download initiated."
|
||||
assign_sound(0x01bf, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_PC, TRUE)
|
||||
restart_timer
|
||||
|
|
@ -2251,13 +2251,13 @@ u8 func1007_uplinking[] = {
|
|||
mute_channel(CHANNEL_7)
|
||||
assign_sound(0x01c1, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_PC, TRUE)
|
||||
message(CHR_TARGET, L_AME(45)) // "File download completed."
|
||||
show_hudmsg(CHR_TARGET, L_AME(45)) // "File download completed."
|
||||
yield
|
||||
set_stage_flag(STAGEFLAG_DOWNLOAD_COMPLETE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
label(0x2c)
|
||||
message(CHR_TARGET, L_AME(74)) // "Datalink broken - connection terminated."
|
||||
show_hudmsg(CHR_TARGET, L_AME(74)) // "Datalink broken - connection terminated."
|
||||
mute_channel(CHANNEL_7)
|
||||
assign_sound(0x01c0, CHANNEL_6)
|
||||
play_sound_from_object(CHANNEL_6, OBJ_PC, 0x012c, 0x0190)
|
||||
|
|
@ -2272,7 +2272,7 @@ u8 func1007_uplinking[] = {
|
|||
reloop(0x04)
|
||||
|
||||
label(0x12)
|
||||
message(CHR_TARGET, L_AME(75)) // "Datalink error - incomplete file download."
|
||||
show_hudmsg(CHR_TARGET, L_AME(75)) // "Datalink error - incomplete file download."
|
||||
mute_channel(CHANNEL_7)
|
||||
assign_sound(0x01c0, CHANNEL_6)
|
||||
play_sound_from_object(CHANNEL_6, OBJ_PC, 0x012c, 0x0190)
|
||||
|
|
@ -2309,7 +2309,7 @@ u8 func1008_doorswitch[] = {
|
|||
|
||||
label(0x2c)
|
||||
play_sound(0x00ba, -1)
|
||||
message(CHR_P1P2, L_AME(47)) // "Door unlocked."
|
||||
show_hudmsg(CHR_P1P2, L_AME(47)) // "Door unlocked."
|
||||
set_stage_flag(STAGEFLAG_OFFICE_DOOR_UNLOCKED)
|
||||
unlock_door(OBJ_OFFICEDOOR1, 0x01)
|
||||
unlock_door(OBJ_OFFICEDOOR2, 0x01)
|
||||
|
|
@ -2337,12 +2337,12 @@ u8 func1009_check_civilians_killed[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x2c)
|
||||
message(CHR_BOND, L_AME(55)) // "Unacceptable civilian casualties."
|
||||
show_hudmsg(CHR_BOND, L_AME(55)) // "Unacceptable civilian casualties."
|
||||
set_stage_flag(STAGEFLAG_CIVILIANS_KILLED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
label(0x09)
|
||||
message(CHR_BOND, L_AME(57)) // "Critical mission personnel killed."
|
||||
show_hudmsg(CHR_BOND, L_AME(57)) // "Critical mission personnel killed."
|
||||
set_stage_flag(STAGEFLAG_CIVILIANS_KILLED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -2437,7 +2437,7 @@ u8 func100d_check_objects_destroyed[] = {
|
|||
if_object_in_good_condition(OBJ_SECURITYHUB, /*goto*/ 0x2c)
|
||||
set_stage_flag(STAGEFLAG_SECURITYHUB_DESTROYED)
|
||||
mute_channel(CHANNEL_0)
|
||||
message(CHR_BOND, L_AME(54)) // "Critical mission object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_AME(54)) // "Critical mission object destroyed."
|
||||
|
||||
// PA only - check door switch
|
||||
label(0x2c)
|
||||
|
|
@ -2446,7 +2446,7 @@ u8 func100d_check_objects_destroyed[] = {
|
|||
if_stage_flag_eq(STAGEFLAG_DOORSWITCH_DESTROYED, TRUE, /*goto*/ 0x2c)
|
||||
if_object_in_good_condition(OBJ_DOORSWITCH, /*goto*/ 0x2c)
|
||||
set_stage_flag(STAGEFLAG_DOORSWITCH_DESTROYED)
|
||||
message(CHR_BOND, L_AME(54)) // "Critical mission object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_AME(54)) // "Critical mission object destroyed."
|
||||
|
||||
// PA only - check PC
|
||||
label(0x2c)
|
||||
|
|
@ -2456,7 +2456,7 @@ u8 func100d_check_objects_destroyed[] = {
|
|||
if_objective_failed(2, /*goto*/ 0x2c)
|
||||
if_object_in_good_condition(OBJ_PC, /*goto*/ 0x2c)
|
||||
set_stage_flag(STAGEFLAG_PC_DESTROYED)
|
||||
message(CHR_BOND, L_AME(54)) // "Critical mission object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_AME(54)) // "Critical mission object destroyed."
|
||||
|
||||
// Check comms hub
|
||||
label(0x2c)
|
||||
|
|
@ -2464,7 +2464,7 @@ u8 func100d_check_objects_destroyed[] = {
|
|||
if_object_in_good_condition(OBJ_EXTCOMMSHUB, /*goto*/ 0x2c)
|
||||
set_stage_flag(STAGEFLAG_EXTCOMMSHUB_DESTROYED)
|
||||
mute_channel(CHANNEL_1)
|
||||
message(CHR_BOND, L_AME(54)) // "Critical mission object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_AME(54)) // "Critical mission object destroyed."
|
||||
label(0x2c)
|
||||
endloop(0x04)
|
||||
|
||||
|
|
@ -3289,7 +3289,7 @@ u8 func1011_check_hubs_activated[] = {
|
|||
reloop(0x04)
|
||||
|
||||
label(0x08)
|
||||
message(CHR_BOND, L_AME(80)) // "ECM Mine needed to disable security hub."
|
||||
show_hudmsg(CHR_BOND, L_AME(80)) // "ECM Mine needed to disable security hub."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x09)
|
||||
|
|
@ -3297,7 +3297,7 @@ u8 func1011_check_hubs_activated[] = {
|
|||
endloop(0x09)
|
||||
|
||||
label(0x0a)
|
||||
message(CHR_BOND, L_AME(81)) // "ECM Mine needed to disable comms hub."
|
||||
show_hudmsg(CHR_BOND, L_AME(81)) // "ECM Mine needed to disable comms hub."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x0b)
|
||||
|
|
@ -3669,7 +3669,7 @@ u8 func101d_disable_cameras[] = {
|
|||
unset_object_flag(OBJ_CAMERA6, OBJFLAG_DEACTIVATED)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_BOND, L_AME(97)) // "Security system is now back online."
|
||||
show_hudmsg(CHR_BOND, L_AME(97)) // "Security system is now back online."
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
|
@ -3678,7 +3678,7 @@ u8 func101d_disable_cameras[] = {
|
|||
* @unregistered
|
||||
*/
|
||||
u8 unregistered_function7[] = {
|
||||
message(CHR_BOND, L_AME(99)) // "2023 AD, 2214 Hours Lucerne Tower - dataDyne HQ"
|
||||
show_hudmsg(CHR_BOND, L_AME(99)) // "2023 AD, 2214 Hours Lucerne Tower - dataDyne HQ"
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1327,7 +1327,7 @@ u8 func1002_check_accessed_foyer_elevator[] = {
|
|||
|
||||
label(0x00)
|
||||
set_stage_flag(STAGEFLAG_ACCESSED_FOYER_ELEVATOR)
|
||||
message(CHR_TARGET, L_ARK(33)) // "Foyer elevator accessed."
|
||||
show_hudmsg(CHR_TARGET, L_ARK(33)) // "Foyer elevator accessed."
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
|
@ -1393,13 +1393,13 @@ u8 func1004_elevator_unlocking[] = {
|
|||
label(0x28)
|
||||
if_stage_flag_eq(STAGEFLAG_ELEVATOR_UNLOCKED, TRUE, /*goto*/ 0x00)
|
||||
set_stage_flag(STAGEFLAG_ELEVATOR_PC_DESTROYED)
|
||||
message(CHR_BOND, L_ARK(45)) // "Critical mission object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_ARK(45)) // "Critical mission object destroyed."
|
||||
label(0x00)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
// Computer activated
|
||||
label(0x20)
|
||||
message(CHR_TARGET, L_ARK(14)) // "Accessing elevator controls..."
|
||||
show_hudmsg(CHR_TARGET, L_ARK(14)) // "Accessing elevator controls..."
|
||||
assign_sound(0x8116, CHANNEL_6)
|
||||
control_sound_from_object(CHANNEL_6, 0x01, TRUE)
|
||||
restart_timer
|
||||
|
|
@ -1438,7 +1438,7 @@ u8 func1004_elevator_unlocking[] = {
|
|||
play_sound(0x81b0, -1)
|
||||
unlock_door(0x02, 0x01)
|
||||
unlock_door(0x03, 0x01)
|
||||
message(CHR_TARGET, L_ARK(34)) // "Office elevator door has been unlocked."
|
||||
show_hudmsg(CHR_TARGET, L_ARK(34)) // "Office elevator door has been unlocked."
|
||||
set_stage_flag(STAGEFLAG_ELEVATOR_UNLOCKED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -1482,7 +1482,7 @@ u8 func1005_check_bodyguards_dead[] = {
|
|||
|
||||
label(0x20)
|
||||
label(0x26)
|
||||
message(CHR_BOND, L_ARK(36)) // "Cassandra's bodyguards have been defeated."
|
||||
show_hudmsg(CHR_BOND, L_ARK(36)) // "Cassandra's bodyguards have been defeated."
|
||||
set_stage_flag(STAGEFLAG_OBJECTIVE_BODYGUARDS_DEAD)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -1493,7 +1493,7 @@ u8 func1006_check_hovercopter_destroyed[] = {
|
|||
|
||||
beginloop(0x1f)
|
||||
if_object_in_good_condition(OBJ_HOVERCOPTER, /*goto*/ 0x00)
|
||||
message(CHR_BOND, L_ARK(35)) // "DataDyne Hovercopter eliminated."
|
||||
show_hudmsg(CHR_BOND, L_ARK(35)) // "DataDyne Hovercopter eliminated."
|
||||
set_stage_flag(STAGEFLAG_HOVERCOPTER_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
label(0x00)
|
||||
|
|
@ -1526,18 +1526,18 @@ u8 func100e_drcaroll_warnings[] = {
|
|||
// Dead
|
||||
label(0x21)
|
||||
label(0x00)
|
||||
message(CHR_BOND, L_ARK(16)) // "Dr. Caroll has been killed!"
|
||||
show_hudmsg(CHR_BOND, L_ARK(16)) // "Dr. Caroll has been killed!"
|
||||
set_stage_flag(STAGEFLAG_DRCAROLL_DEAD)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
// Shield under 100
|
||||
label(0x30)
|
||||
message(CHR_BOND, L_ARK(17)) // "Dr. Caroll is under attack!"
|
||||
show_hudmsg(CHR_BOND, L_ARK(17)) // "Dr. Caroll is under attack!"
|
||||
set_stage_flag(STAGEFLAG_DRCAROLL_ATTACKED)
|
||||
reloop(0x1f)
|
||||
|
||||
label(0x31)
|
||||
message(CHR_BOND, L_ARK(18)) // "Dr. Caroll has been damaged!"
|
||||
show_hudmsg(CHR_BOND, L_ARK(18)) // "Dr. Caroll has been damaged!"
|
||||
set_stage_flag(STAGEFLAG_DRCAROLL_DAMAGED)
|
||||
endloop(0x1f)
|
||||
|
||||
|
|
|
|||
|
|
@ -102,10 +102,10 @@ u8 func1002_first_walk[] = {
|
|||
unset_chr_chrflag(CHR_BOND, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE)
|
||||
set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000)
|
||||
display_text(0x00, COLOR_02_WHITE, L_ATE(7)) // "THE DUEL"
|
||||
show_hudmsg_middle(0x00, COLOR_02_WHITE, L_ATE(7)) // "THE DUEL"
|
||||
chr_do_animation(ANIM_RELOAD, -1, -1, 0x06, 0x00, CHR_GUARD, 2)
|
||||
label(0x2d)
|
||||
message(CHR_BOND, L_ATE(12)) // "Opponent skill level: AGENT"
|
||||
show_hudmsg(CHR_BOND, L_ATE(12)) // "Opponent skill level: AGENT"
|
||||
|
||||
// Wait for camera to stop animating
|
||||
restart_timer
|
||||
|
|
@ -118,7 +118,7 @@ u8 func1002_first_walk[] = {
|
|||
|
||||
// Start walking
|
||||
label(0x06)
|
||||
remove_displayed_text
|
||||
remove_hudmsgs
|
||||
revoke_control(CHR_BOND, 0)
|
||||
enter_firstperson
|
||||
force_walk(CHR_BOND, 0x0275, 40, 5, 0, 100)
|
||||
|
|
@ -169,7 +169,7 @@ u8 func1007_second_walk[] = {
|
|||
chr_do_animation(ANIM_GRAB_CROTCH, -1, -1, 0x06, 0x00, CHR_JONATHAN, 2)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_BOND, L_ATE(13)) // "Opponent skill level: SPECIAL AGENT"
|
||||
show_hudmsg(CHR_BOND, L_ATE(13)) // "Opponent skill level: SPECIAL AGENT"
|
||||
restart_timer
|
||||
|
||||
beginloop(0x08)
|
||||
|
|
@ -181,7 +181,7 @@ u8 func1007_second_walk[] = {
|
|||
// Start force walk
|
||||
label(0x06)
|
||||
label(0x2d)
|
||||
remove_displayed_text
|
||||
remove_hudmsgs
|
||||
revoke_control(CHR_BOND, 0)
|
||||
enter_firstperson
|
||||
yield
|
||||
|
|
@ -249,7 +249,7 @@ u8 func1008_third_walk[] = {
|
|||
set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000)
|
||||
chr_do_animation(ANIM_HEAD_ROLL, -1, -1, 0x06, 0x00, CHR_TRENT, 2)
|
||||
label(0x2d)
|
||||
message(CHR_BOND, L_ATE(14)) // "Opponent skill level: PERFECT AGENT"
|
||||
show_hudmsg(CHR_BOND, L_ATE(14)) // "Opponent skill level: PERFECT AGENT"
|
||||
|
||||
// Wait for cutscene to finish
|
||||
restart_timer
|
||||
|
|
@ -262,7 +262,7 @@ u8 func1008_third_walk[] = {
|
|||
|
||||
// Begin force walk
|
||||
label(0x06)
|
||||
remove_displayed_text
|
||||
remove_hudmsgs
|
||||
revoke_control(CHR_BOND, 0)
|
||||
enter_firstperson
|
||||
force_walk(CHR_BOND, 0x0275, 40, 5, 0, 100)
|
||||
|
|
@ -295,7 +295,7 @@ u8 func1005_main[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_BOND, L_ATE(9)) // "Well done! You were too quick for him!"
|
||||
show_hudmsg(CHR_BOND, L_ATE(9)) // "Well done! You were too quick for him!"
|
||||
set_stage_flag(STAGEFLAG_GUARD_DEAD)
|
||||
restart_timer
|
||||
|
||||
|
|
@ -322,7 +322,7 @@ u8 func1005_main[] = {
|
|||
endloop(0x09)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_BOND, L_ATE(10)) // "Well done! You were too quick for him!"
|
||||
show_hudmsg(CHR_BOND, L_ATE(10)) // "Well done! You were too quick for him!"
|
||||
set_stage_flag(STAGEFLAG_JONATHAN_DEAD)
|
||||
restart_timer
|
||||
|
||||
|
|
@ -349,7 +349,7 @@ u8 func1005_main[] = {
|
|||
endloop(0x0c)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_BOND, L_ATE(11)) // "Well done! You were too quick for him!"
|
||||
show_hudmsg(CHR_BOND, L_ATE(11)) // "Well done! You were too quick for him!"
|
||||
set_stage_flag(STAGEFLAG_TRENT_DEAD)
|
||||
restart_timer
|
||||
|
||||
|
|
|
|||
|
|
@ -1054,7 +1054,7 @@ u8 func1008_escapepod[] = {
|
|||
|
||||
// Pod destroyed
|
||||
mute_channel(CHANNEL_0)
|
||||
message(CHR_BOND, L_AZT(15)) // "Critical mission object has been destroyed."
|
||||
show_hudmsg(CHR_BOND, L_AZT(15)) // "Critical mission object has been destroyed."
|
||||
set_stage_flag(STAGEFLAG_ESCAPEPOD_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
|
|
@ -1068,7 +1068,7 @@ u8 func1008_escapepod[] = {
|
|||
label(0x31)
|
||||
assign_sound(0x8115, CHANNEL_0)
|
||||
play_sound_from_object(CHANNEL_0, OBJ_ESCAPEPOD, 0x0320, 0x0640)
|
||||
message(CHR_P1P2, L_AZT(14)) // "Distress beacon has been activated."
|
||||
show_hudmsg(CHR_P1P2, L_AZT(14)) // "Distress beacon has been activated."
|
||||
set_stage_flag(STAGEFLAG_BEACON_ACTIVATED)
|
||||
endloop(0x06)
|
||||
|
||||
|
|
@ -1085,7 +1085,7 @@ u8 func1009_check_shuttle_destroyed[] = {
|
|||
|
||||
beginloop(0x06)
|
||||
if_object_in_good_condition(OBJ_SKEDAR_SHUTTLE, /*goto*/ 0x31)
|
||||
message(CHR_BOND, L_AZT(21)) // "Jamming device has been shut down."
|
||||
show_hudmsg(CHR_BOND, L_AZT(21)) // "Jamming device has been shut down."
|
||||
set_stage_flag(STAGEFLAG_SKEDAR_SHUTTLE_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
label(0x31)
|
||||
|
|
@ -1102,7 +1102,7 @@ u8 func100a_check_president_dead[] = {
|
|||
endloop(0x06)
|
||||
|
||||
label(0x31)
|
||||
message(CHR_BOND, L_AZT(22)) // "President has been killed."
|
||||
show_hudmsg(CHR_BOND, L_AZT(22)) // "President has been killed."
|
||||
set_stage_flag(STAGEFLAG_PRESIDENT_DEAD)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -1116,7 +1116,7 @@ u8 func100b_check_clone_dead[] = {
|
|||
endloop(0x06)
|
||||
|
||||
label(0x31)
|
||||
message(CHR_BOND, L_AZT(23)) // "Presidential clone has been eliminated."
|
||||
show_hudmsg(CHR_BOND, L_AZT(23)) // "Presidential clone has been eliminated."
|
||||
set_stage_flag(STAGEFLAG_CLONE_DEAD)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -1638,7 +1638,7 @@ u8 func041d_president_running[] = {
|
|||
rebuild_teams
|
||||
rebuild_squadrons
|
||||
if_stage_flag_eq(STAGEFLAG_PRESIDENT_RESCUED, TRUE, /*goto*/ 0x31)
|
||||
message(CHR_TARGET, L_AZT(25)) // "President has been rescued."
|
||||
show_hudmsg(CHR_TARGET, L_AZT(25)) // "President has been rescued."
|
||||
set_stage_flag(STAGEFLAG_PRESIDENT_RESCUED)
|
||||
label(0x31)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
|
|
|||
|
|
@ -1372,7 +1372,7 @@ u8 func1005_check_civilians_killed[] = {
|
|||
endloop(0x00)
|
||||
|
||||
label(0x31)
|
||||
message(CHR_BOND, L_CAVE(26)) // "Innocent civilians have been killed."
|
||||
show_hudmsg(CHR_BOND, L_CAVE(26)) // "Innocent civilians have been killed."
|
||||
set_stage_flag(STAGEFLAG_CIVILIANS_KILLED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
|
|
@ -1735,7 +1735,7 @@ u8 func1007_console_activation[] = {
|
|||
set_object_image(OBJ_CONSOLE, 0x00, 0x0f)
|
||||
set_object_image(OBJ_CONSOLE, 0x01, 0x0f)
|
||||
set_chr_flag_bankx(0x12, CHRFLAG0_00002000, BANK_0)
|
||||
message(CHR_P1P2, L_CAVE(35)) // "System shutdown initiated..."
|
||||
show_hudmsg(CHR_P1P2, L_CAVE(35)) // "System shutdown initiated..."
|
||||
mute_channel(CHANNEL_1)
|
||||
assign_sound(0x01b9, CHANNEL_1)
|
||||
control_sound_from_object(CHANNEL_1, OBJ_CONSOLE, TRUE)
|
||||
|
|
@ -1754,7 +1754,7 @@ u8 func1007_console_activation[] = {
|
|||
mute_channel(CHANNEL_1)
|
||||
assign_sound(0x0479, CHANNEL_1)
|
||||
control_sound_from_object(CHANNEL_1, OBJ_CONSOLE, TRUE)
|
||||
message(CHR_P1P2, L_CAVE(36)) // "Security systems have been shut down."
|
||||
show_hudmsg(CHR_P1P2, L_CAVE(36)) // "Security systems have been shut down."
|
||||
set_stage_flag(STAGEFLAG_SECURITY_SHUT_DOWN)
|
||||
unset_chr_hiddenflag(CHR_BOND, CHRHFLAG_DISGUISED)
|
||||
restart_timer
|
||||
|
|
@ -1907,7 +1907,7 @@ u8 func1007_console_activation[] = {
|
|||
endloop(0x07) \
|
||||
\
|
||||
label(0x02) \
|
||||
message(chr, 0x0e25) /* "Weapons have been detected." */ \
|
||||
show_hudmsg(chr, 0x0e25) /* "Weapons have been detected." */ \
|
||||
set_stage_flag(STAGEFLAG_WEAPONS_DETECTED) \
|
||||
label(0x31) \
|
||||
mute_channel(CHANNEL_6) \
|
||||
|
|
@ -1951,10 +1951,10 @@ u8 func1009_carousel_activation[] = {
|
|||
// Shut down without depositing
|
||||
label(0x31)
|
||||
if_difficulty_lt(DIFF_SA, /*goto*/ 0x09)
|
||||
message(CHR_BOND, L_CAVE(66)) // "Hover trolley has been shut down."
|
||||
show_hudmsg(CHR_BOND, L_CAVE(66)) // "Hover trolley has been shut down."
|
||||
set_stage_flag(STAGEFLAG_TROLLEY_SHUT_DOWN_WITHOUT_BRIEFCASE)
|
||||
yield
|
||||
message(CHR_BOND, L_CAVE(67)) // "Equipment cannot be checked in."
|
||||
show_hudmsg(CHR_BOND, L_CAVE(67)) // "Equipment cannot be checked in."
|
||||
label(0x09)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
|
|
@ -1964,7 +1964,7 @@ u8 func1009_carousel_activation[] = {
|
|||
endloop(0x00)
|
||||
|
||||
label(0x02)
|
||||
message(CHR_P1P2, L_CAVE(38)) // "Suitcase has been deposited."
|
||||
show_hudmsg(CHR_P1P2, L_CAVE(38)) // "Suitcase has been deposited."
|
||||
chr_draw_weapon_in_cutscene(CHR_P1P2, WEAPON_UNARMED)
|
||||
set_stage_flag(STAGEFLAG_SUITCASE_DEPOSITED)
|
||||
play_sound(0x80aa, CHANNEL_7)
|
||||
|
|
@ -2028,7 +2028,7 @@ u8 func100b_suitcase_scanning[] = {
|
|||
|
||||
// Scanned
|
||||
label(0x02)
|
||||
message(CHR_BOND, L_CAVE(39)) // "Suitcase has been scanned."
|
||||
show_hudmsg(CHR_BOND, L_CAVE(39)) // "Suitcase has been scanned."
|
||||
set_stage_flag(STAGEFLAG_SUITCASE_SCANNED)
|
||||
|
||||
// Agent
|
||||
|
|
@ -2358,12 +2358,12 @@ u8 func100d_laser_panel[] = {
|
|||
label(0x04)
|
||||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_LASER_PANEL, TRUE)
|
||||
message(CHR_P1P2, L_CAVE(45)) // "Laser grid access denied."
|
||||
show_hudmsg(CHR_P1P2, L_CAVE(45)) // "Laser grid access denied."
|
||||
endloop(0x00)
|
||||
|
||||
label(0x05)
|
||||
set_stage_flag(STAGEFLAG_LASERS_OVERLOADED)
|
||||
message(CHR_P1P2, L_CAVE(46)) // "Laser grid system has been overloaded."
|
||||
show_hudmsg(CHR_P1P2, L_CAVE(46)) // "Laser grid system has been overloaded."
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
|
@ -2392,7 +2392,7 @@ u8 func100e_check_alaskans_killed[] = {
|
|||
endloop(0x00)
|
||||
|
||||
label(0x31)
|
||||
message(CHR_BOND, L_CAVE(47)) // "Too many neutral casualties inflicted."
|
||||
show_hudmsg(CHR_BOND, L_CAVE(47)) // "Too many neutral casualties inflicted."
|
||||
set_stage_flag(STAGEFLAG_TOO_MANY_NEUTRALS_KILLED)
|
||||
label(0x02)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
|
@ -3580,7 +3580,7 @@ u8 func101a_check_disguise_used[] = {
|
|||
endloop(0x00)
|
||||
|
||||
label(0x31)
|
||||
message(CHR_P1P2, L_CAVE(49)) // "Disguise worn."
|
||||
show_hudmsg(CHR_P1P2, L_CAVE(49)) // "Disguise worn."
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
|
@ -4158,7 +4158,7 @@ u8 func1029_lift_doors[] = {
|
|||
|
||||
label(0x31)
|
||||
if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x05)
|
||||
message(CHR_P1P2, L_CAVE(61)) // "Lift inoperative - security system is active."
|
||||
show_hudmsg(CHR_P1P2, L_CAVE(61)) // "Lift inoperative - security system is active."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x04)
|
||||
|
|
@ -4196,7 +4196,7 @@ u8 func102b_check_secretary_dead[] = {
|
|||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
label(0x31)
|
||||
message(CHR_BOND, L_CAVE(62)) // "Critical mission personnel disabled."
|
||||
show_hudmsg(CHR_BOND, L_CAVE(62)) // "Critical mission personnel disabled."
|
||||
set_stage_flag(STAGEFLAG_SECRETARY_DEAD)
|
||||
label(0x09)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
|
@ -4227,7 +4227,7 @@ u8 func102d_check_console_destroyed[] = {
|
|||
mute_channel(CHANNEL_1)
|
||||
if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x31)
|
||||
set_stage_flag(STAGEFLAG_CONSOLE_DESTROYED)
|
||||
message(CHR_BOND, L_CAVE(63)) // "Critical mission object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_CAVE(63)) // "Critical mission object destroyed."
|
||||
label(0x31)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -4240,7 +4240,7 @@ u8 func102e_check_base_entered[] = {
|
|||
endloop(0x00)
|
||||
|
||||
label(0x31)
|
||||
message(CHR_BOND, L_CAVE(64)) // "Entrance to base secured."
|
||||
show_hudmsg(CHR_BOND, L_CAVE(64)) // "Entrance to base secured."
|
||||
set_stage_flag(STAGEFLAG_ENTERED_BASE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
|
|||
|
|
@ -1059,7 +1059,7 @@ u8 unregistered_function2[] = {
|
|||
endloop(0x00)
|
||||
|
||||
label(0x04)
|
||||
message(CHR_BOND, L_DAM(16)) // "Critical mission object has been destroyed."
|
||||
show_hudmsg(CHR_BOND, L_DAM(16)) // "Critical mission object has been destroyed."
|
||||
set_stage_flag(STAGEFLAG_00000400)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -1087,7 +1087,7 @@ u8 func1009_open_reactor_hatch[] = {
|
|||
label(0x07)
|
||||
hide_object(OBJ_REACTOR_HATCH)
|
||||
set_object_flag2(OBJ_REACTOR_HATCH, OBJFLAG2_INVISIBLE)
|
||||
message(CHR_P1P2, L_DAM(17)) // "Reactor shutdown control hatch opened."
|
||||
show_hudmsg(CHR_P1P2, L_DAM(17)) // "Reactor shutdown control hatch opened."
|
||||
set_stage_flag(STAGEFLAG_REACTOR_HATCH_OPEN)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -1097,7 +1097,7 @@ u8 func100a_reactor_switch[] = {
|
|||
beginloop(0x00)
|
||||
chr_toggle_p1p2(CHR_SELF)
|
||||
if_object_in_good_condition(OBJ_REACTOR_SWITCH, /*goto*/ 0x07)
|
||||
message(CHR_BOND, L_DAM(36)) // "Critical mission object has been destroyed."
|
||||
show_hudmsg(CHR_BOND, L_DAM(36)) // "Critical mission object has been destroyed."
|
||||
set_stage_flag(STAGEFLAG_REACTOR_SWITCH_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
|
|
@ -1118,7 +1118,7 @@ u8 func100a_reactor_switch[] = {
|
|||
set_object_image(OBJ_REACTOR_SWITCH, 0x00, 0x12)
|
||||
set_object_image(OBJ_REACTOR_SWITCH, 0x01, 0x12)
|
||||
set_object_image(OBJ_REACTOR_SWITCH, 0x02, 0x12)
|
||||
message(CHR_P1P2, L_DAM(18)) // "Reactor has been shut down."
|
||||
show_hudmsg(CHR_P1P2, L_DAM(18)) // "Reactor has been shut down."
|
||||
set_stage_flag(STAGEFLAG_REACTOR_SHUT_DOWN)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -1140,7 +1140,7 @@ u8 func100b_check_diving_area_located[] = {
|
|||
endloop(0x00)
|
||||
|
||||
label(0x07)
|
||||
message(CHR_P1P2, L_DAM(19)) // "Diving control center has been located."
|
||||
show_hudmsg(CHR_P1P2, L_DAM(19)) // "Diving control center has been located."
|
||||
set_stage_flag(STAGEFLAG_LOCATED_DIVING_AREA)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -1257,7 +1257,7 @@ u8 func100e_check_labtech_dead[] = {
|
|||
endloop(0x00)
|
||||
|
||||
label(0x07)
|
||||
message(CHR_BOND, L_DAM(20)) // "Critical mission personnel killed."
|
||||
show_hudmsg(CHR_BOND, L_DAM(20)) // "Critical mission personnel killed."
|
||||
set_stage_flag(STAGEFLAG_LABTECH_DEAD)
|
||||
label(0x0b)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
|
@ -1281,7 +1281,7 @@ u8 func100f_check_researchdata_collected[] = {
|
|||
endloop(0x00)
|
||||
|
||||
label(0x07)
|
||||
message(CHR_BOND, L_DAM(21)) // "Research data has been secured."
|
||||
show_hudmsg(CHR_BOND, L_DAM(21)) // "Research data has been secured."
|
||||
set_stage_flag(STAGEFLAG_COLLECTED_RESEARCH_DATA)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -1999,7 +1999,7 @@ u8 func0401_pilot[] = {
|
|||
|
||||
label(0x07)
|
||||
if_stage_flag_eq(STAGEFLAG_AUTOPILOT_DISABLED, TRUE, /*goto*/ 0x07)
|
||||
message(CHR_TARGET, L_DAM(14)) // "Autopilot system has been deactivated."
|
||||
show_hudmsg(CHR_TARGET, L_DAM(14)) // "Autopilot system has been deactivated."
|
||||
set_stage_flag(STAGEFLAG_TRIGGER_ANGRY_PILOT)
|
||||
yield
|
||||
yield
|
||||
|
|
@ -2016,7 +2016,7 @@ u8 func0401_pilot[] = {
|
|||
goto_first(0x0b)
|
||||
|
||||
label(0x07)
|
||||
message(CHR_TARGET, L_DAM(15)) // "GPS system has been deactivated."
|
||||
show_hudmsg(CHR_TARGET, L_DAM(15)) // "GPS system has been deactivated."
|
||||
set_stage_flag(STAGEFLAG_GPS_DISABLED)
|
||||
surrender
|
||||
goto_first(0x0b)
|
||||
|
|
@ -2055,7 +2055,7 @@ u8 func1011_check_pilots_dead[] = {
|
|||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
label(0x07)
|
||||
message(CHR_BOND, L_DAM(27)) // "Critical mission personnel have been killed."
|
||||
show_hudmsg(CHR_BOND, L_DAM(27)) // "Critical mission personnel have been killed."
|
||||
set_stage_flag(STAGEFLAG_PILOT_DEAD)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -2111,7 +2111,7 @@ u8 func1012_choose_angry_pilot[] = {
|
|||
|
||||
// Killed a pilot
|
||||
label(0x08)
|
||||
message(CHR_BOND, L_DAM(35)) // "Civilians have been killed."
|
||||
show_hudmsg(CHR_BOND, L_DAM(35)) // "Civilians have been killed."
|
||||
set_stage_flag(STAGEFLAG_JO_KILLED_A_PILOT)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -2233,7 +2233,7 @@ u8 func1013_lift_switch[] = {
|
|||
endloop(0x00)
|
||||
|
||||
label(0x07)
|
||||
message(CHR_P1P2, L_DAM(28)) // "Lift door has been unlocked."
|
||||
show_hudmsg(CHR_P1P2, L_DAM(28)) // "Lift door has been unlocked."
|
||||
unlock_door(0x18, 0x02)
|
||||
unlock_door(0x19, 0x02)
|
||||
open_door(0x18)
|
||||
|
|
@ -2248,7 +2248,7 @@ u8 func1014_moonpool_switch[] = {
|
|||
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, L_DAM(36)) // "Critical mission object has been destroyed."
|
||||
show_hudmsg(CHR_P1P2, L_DAM(36)) // "Critical mission object has been destroyed."
|
||||
set_stage_flag(STAGEFLAG_MOONPOOL_SWITCH_DESTROYED)
|
||||
|
||||
label(0x10)
|
||||
|
|
@ -2260,7 +2260,7 @@ u8 func1014_moonpool_switch[] = {
|
|||
|
||||
label(0x07)
|
||||
label(0x07)
|
||||
message(CHR_P1P2, L_DAM(29)) // "Lift has been activated."
|
||||
show_hudmsg(CHR_P1P2, L_DAM(29)) // "Lift has been activated."
|
||||
set_stage_flag(STAGEFLAG_MOONPOOL_ACTIVATED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -2410,7 +2410,7 @@ u8 func101a_badhatchswitches[] = {
|
|||
goto_next(0x04)
|
||||
|
||||
label(0x04)
|
||||
message(CHR_P1P2, L_DAM(31)) // "Unlocking sequence has been reset."
|
||||
show_hudmsg(CHR_P1P2, L_DAM(31)) // "Unlocking sequence has been reset."
|
||||
set_stage_flag(STAGEFLAG_HATCHSWITCHES_RESETTING)
|
||||
restart_timer
|
||||
|
||||
|
|
@ -2668,7 +2668,7 @@ u8 func101c_check_elvis_dead[] = {
|
|||
endloop(0x00)
|
||||
|
||||
label(0x07)
|
||||
message(CHR_BOND, L_DAM(33)) // "Elvis has been killed."
|
||||
show_hudmsg(CHR_BOND, L_DAM(33)) // "Elvis has been killed."
|
||||
set_stage_flag(STAGEFLAG_ELVIS_DEAD)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -2812,12 +2812,12 @@ u8 func101d_alarm_switches[] = {
|
|||
label(0x07)
|
||||
if_alarm_active(/*goto*/ 0x07)
|
||||
activate_alarm
|
||||
message(CHR_P1P2, L_DAM(37)) // "Alarm has been activated."
|
||||
show_hudmsg(CHR_P1P2, L_DAM(37)) // "Alarm has been activated."
|
||||
goto_next(0x0c)
|
||||
|
||||
label(0x07)
|
||||
deactivate_alarm
|
||||
message(CHR_BOND, L_DAM(38)) // "Alarm has been deactivated."
|
||||
show_hudmsg(CHR_BOND, L_DAM(38)) // "Alarm has been deactivated."
|
||||
goto_next(0x0c)
|
||||
|
||||
label(0x0c)
|
||||
|
|
|
|||
|
|
@ -541,7 +541,7 @@ u8 func1008_check_generator[] = {
|
|||
// Destroyed
|
||||
mute_channel(CHANNEL_4)
|
||||
if_difficulty_lt(DIFF_PA, /*goto*/ 0x06)
|
||||
message(CHR_BOND, L_DEPO(24)) // "Mission critical object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_DEPO(24)) // "Mission critical object destroyed."
|
||||
set_stage_flag(STAGEFLAG_GENERATOR_DESTROYED)
|
||||
label(0x06)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
|
@ -557,13 +557,13 @@ u8 func1008_check_generator[] = {
|
|||
mute_channel(CHANNEL_0)
|
||||
assign_sound(0x8147, CHANNEL_0)
|
||||
control_sound_from_object(CHANNEL_0, OBJ_GENERATOR, TRUE)
|
||||
message(CHR_P1P2, L_DEPO(25)) // "Damping field generator shut down."
|
||||
show_hudmsg(CHR_P1P2, L_DEPO(25)) // "Damping field generator shut down."
|
||||
set_stage_flag(STAGEFLAG_GENERATOR_SHUT_DOWN2)
|
||||
set_stage_flag(STAGEFLAG_GENERATOR_SHUT_DOWN)
|
||||
reloop(0x04)
|
||||
|
||||
label(0x09)
|
||||
message(CHR_P1P2, L_DEPO(26)) // "Generator cannot be restarted."
|
||||
show_hudmsg(CHR_P1P2, L_DEPO(26)) // "Generator cannot be restarted."
|
||||
endloop(0x04)
|
||||
|
||||
endlist
|
||||
|
|
@ -578,7 +578,7 @@ u8 func1003_laser_switch_1[] = {
|
|||
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)
|
||||
message(CHR_BOND, L_DEPO(24)) // "Mission critical object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_DEPO(24)) // "Mission critical object destroyed."
|
||||
set_stage_flag(STAGEFLAG_LASERSWITCH1_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
label(0x2c)
|
||||
|
|
@ -590,7 +590,7 @@ u8 func1003_laser_switch_1[] = {
|
|||
|
||||
// Deactivated
|
||||
set_object_image(OBJ_LASERSWITCH1, 0x00, 0x14)
|
||||
message(CHR_P1P2, L_DEPO(27)) // "Laser grid unit shut down."
|
||||
show_hudmsg(CHR_P1P2, L_DEPO(27)) // "Laser grid unit shut down."
|
||||
set_stage_flag(STAGEFLAG_LASERSET1_DISABLED)
|
||||
open_door(OBJ_LASER_1A)
|
||||
open_door(OBJ_LASER_1B)
|
||||
|
|
@ -610,7 +610,7 @@ u8 func1003_laser_switch_1[] = {
|
|||
|
||||
// Activated
|
||||
label(0x09)
|
||||
message(CHR_P1P2, L_DEPO(28)) // "Laser grid unit activated."
|
||||
show_hudmsg(CHR_P1P2, L_DEPO(28)) // "Laser grid unit activated."
|
||||
unset_stage_flag(STAGEFLAG_LASERSET1_DISABLED)
|
||||
set_object_image(OBJ_LASERSWITCH1, 0x00, 0x13)
|
||||
close_door(OBJ_LASER_1A)
|
||||
|
|
@ -644,7 +644,7 @@ u8 func1004_laser_switch_2[] = {
|
|||
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)
|
||||
message(CHR_BOND, L_DEPO(24)) // "Mission critical object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_DEPO(24)) // "Mission critical object destroyed."
|
||||
set_stage_flag(STAGEFLAG_LASERSWITCH2_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
label(0x2c)
|
||||
|
|
@ -657,7 +657,7 @@ u8 func1004_laser_switch_2[] = {
|
|||
|
||||
// Deactivated
|
||||
set_object_image(OBJ_LASERSWITCH2, 0x00, 0x14)
|
||||
message(CHR_P1P2, L_DEPO(27)) // "Laser grid unit shut down."
|
||||
show_hudmsg(CHR_P1P2, L_DEPO(27)) // "Laser grid unit shut down."
|
||||
set_stage_flag(STAGEFLAG_LASERSET2_DISABLED)
|
||||
open_door(OBJ_LASER_2A)
|
||||
open_door(OBJ_LASER_2B)
|
||||
|
|
@ -678,7 +678,7 @@ u8 func1004_laser_switch_2[] = {
|
|||
// Activated
|
||||
label(0x09)
|
||||
set_object_image(OBJ_LASERSWITCH2, 0x00, 0x13)
|
||||
message(CHR_P1P2, L_DEPO(28)) // "Laser grid unit activated."
|
||||
show_hudmsg(CHR_P1P2, L_DEPO(28)) // "Laser grid unit activated."
|
||||
unset_stage_flag(STAGEFLAG_LASERSET2_DISABLED)
|
||||
close_door(OBJ_LASER_2A)
|
||||
close_door(OBJ_LASER_2B)
|
||||
|
|
@ -711,7 +711,7 @@ u8 func1005_laser_switch_3[] = {
|
|||
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)
|
||||
message(CHR_BOND, L_DEPO(24)) // "Mission critical object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_DEPO(24)) // "Mission critical object destroyed."
|
||||
set_stage_flag(STAGEFLAG_LASERSWITCH3_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
label(0x2c)
|
||||
|
|
@ -723,7 +723,7 @@ u8 func1005_laser_switch_3[] = {
|
|||
|
||||
// Deactivated
|
||||
set_object_image(OBJ_LASERSWITCH3, 0x00, 0x14)
|
||||
message(CHR_P1P2, L_DEPO(27)) // "Laser grid unit shut down."
|
||||
show_hudmsg(CHR_P1P2, L_DEPO(27)) // "Laser grid unit shut down."
|
||||
set_stage_flag(STAGEFLAG_LASERSET3_DISABLED)
|
||||
open_door(OBJ_LASER_3A)
|
||||
open_door(OBJ_LASER_3B)
|
||||
|
|
@ -744,7 +744,7 @@ u8 func1005_laser_switch_3[] = {
|
|||
// Activated
|
||||
label(0x09)
|
||||
set_object_image(OBJ_LASERSWITCH3, 0x00, 0x13)
|
||||
message(CHR_P1P2, L_DEPO(28)) // "Laser grid unit activated."
|
||||
show_hudmsg(CHR_P1P2, L_DEPO(28)) // "Laser grid unit activated."
|
||||
unset_stage_flag(STAGEFLAG_LASERSET3_DISABLED)
|
||||
close_door(OBJ_LASER_3A)
|
||||
close_door(OBJ_LASER_3B)
|
||||
|
|
@ -777,7 +777,7 @@ u8 func1006_laser_switch_4[] = {
|
|||
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)
|
||||
message(CHR_BOND, L_DEPO(24)) // "Mission critical object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_DEPO(24)) // "Mission critical object destroyed."
|
||||
set_stage_flag(STAGEFLAG_LASERSWITCH4_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
label(0x2c)
|
||||
|
|
@ -789,7 +789,7 @@ u8 func1006_laser_switch_4[] = {
|
|||
|
||||
// Deactivated
|
||||
set_object_image(OBJ_LASERSWITCH4, 0x00, 0x14)
|
||||
message(CHR_P1P2, L_DEPO(27)) // "Laser grid unit shut down."
|
||||
show_hudmsg(CHR_P1P2, L_DEPO(27)) // "Laser grid unit shut down."
|
||||
set_stage_flag(STAGEFLAG_LASERSET4_DISABLED)
|
||||
open_door(OBJ_LASER_4A)
|
||||
open_door(OBJ_LASER_4B)
|
||||
|
|
@ -810,7 +810,7 @@ u8 func1006_laser_switch_4[] = {
|
|||
// Activated
|
||||
label(0x09)
|
||||
set_object_image(OBJ_LASERSWITCH4, 0x00, 0x13)
|
||||
message(CHR_P1P2, L_DEPO(28)) // "Laser grid unit activated."
|
||||
show_hudmsg(CHR_P1P2, L_DEPO(28)) // "Laser grid unit activated."
|
||||
unset_stage_flag(STAGEFLAG_LASERSET4_DISABLED)
|
||||
close_door(OBJ_LASER_4A)
|
||||
close_door(OBJ_LASER_4B)
|
||||
|
|
@ -872,7 +872,7 @@ u8 func1007_init_lasers[] = {
|
|||
if_stage_flag_eq(STAGEFLAG_LASERSET3_DISABLED, FALSE, /*goto*/ 0x2c)
|
||||
if_stage_flag_eq(STAGEFLAG_LASERSET4_DISABLED, FALSE, /*goto*/ 0x2c)
|
||||
if_stage_flag_eq(STAGEFLAG_ALL_LASERS_DISABLED, TRUE, /*goto*/ 0x2c)
|
||||
message(CHR_BOND, L_DEPO(29)) // "All laser grid systems shut down."
|
||||
show_hudmsg(CHR_BOND, L_DEPO(29)) // "All laser grid systems shut down."
|
||||
set_stage_flag(STAGEFLAG_ALL_LASERS_DISABLED)
|
||||
label(0x2c)
|
||||
endloop(0x04)
|
||||
|
|
@ -1267,7 +1267,7 @@ u8 func100e_check_conspirators_alerted[] = {
|
|||
set_ailist(CHR_CASS, AILIST_RUN_FROM_MEETING)
|
||||
set_ailist(0x1c, AILIST_RUN_FROM_MEETING) // chr doesn't exist
|
||||
set_ailist(CHR_BLONDE, AILIST_RUN_FROM_MEETING)
|
||||
message(CHR_BOND, L_DEPO(41)) // "Conspirators have been alerted."
|
||||
show_hudmsg(CHR_BOND, L_DEPO(41)) // "Conspirators have been alerted."
|
||||
|
||||
// Wait until alarm not active
|
||||
label(0x06)
|
||||
|
|
@ -1296,13 +1296,13 @@ u8 func100f_alarm_switches[] = {
|
|||
|
||||
label(0x2c)
|
||||
if_stage_flag_eq(STAGEFLAG_ALARM_SOUNDING, TRUE, /*goto*/ 0x06)
|
||||
message(CHR_P1P2, L_DEPO(42)) // "Alarm activated."
|
||||
show_hudmsg(CHR_P1P2, L_DEPO(42)) // "Alarm activated."
|
||||
set_stage_flag(STAGEFLAG_ALARM_SOUNDING)
|
||||
activate_alarm
|
||||
reloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_P1P2, L_DEPO(43)) // "Alarm deactivated."
|
||||
show_hudmsg(CHR_P1P2, L_DEPO(43)) // "Alarm deactivated."
|
||||
unset_stage_flag(STAGEFLAG_ALARM_SOUNDING)
|
||||
deactivate_alarm
|
||||
endloop(0x04)
|
||||
|
|
@ -1315,7 +1315,7 @@ u8 func1010_safe_cracking[] = {
|
|||
beginloop(0x04)
|
||||
chr_toggle_p1p2(CHR_SELF)
|
||||
if_object_in_good_condition(OBJ_SAFEKEYPAD, /*goto*/ 0x2c)
|
||||
message(CHR_BOND, L_DEPO(64)) // "Mission critical object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_DEPO(64)) // "Mission critical object destroyed."
|
||||
set_stage_flag(STAGEFLAG_SAFEKEYPAD_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
label(0x2c)
|
||||
|
|
@ -1324,11 +1324,11 @@ u8 func1010_safe_cracking[] = {
|
|||
|
||||
label(0x2c)
|
||||
if_chr_weapon_equipped(CHR_P1P2, WEAPON_DOORDECODER, /*goto*/ 0x2c)
|
||||
message(CHR_P1P2, L_DEPO(44)) // "Safe door is locked."
|
||||
show_hudmsg(CHR_P1P2, L_DEPO(44)) // "Safe door is locked."
|
||||
endloop(0x04)
|
||||
|
||||
label(0x2c)
|
||||
message(CHR_P1P2, L_DEPO(45)) // "Door Decoder attached."
|
||||
show_hudmsg(CHR_P1P2, L_DEPO(45)) // "Door Decoder attached."
|
||||
remove_weapon_from_inventory(WEAPON_DOORDECODER)
|
||||
move_object_to_pad(OBJ_DECODER, 0x0075)
|
||||
set_stage_flag(STAGEFLAG_DECODER_ATTACHED)
|
||||
|
|
@ -1345,7 +1345,7 @@ u8 func1010_safe_cracking[] = {
|
|||
play_x_music(CHANNEL_10, 180)
|
||||
yield
|
||||
set_countdown_timer(60)
|
||||
message(CHR_P1P2, L_DEPO(36)) // "Initiating cracking routines."
|
||||
show_hudmsg(CHR_P1P2, L_DEPO(36)) // "Initiating cracking routines."
|
||||
yield
|
||||
show_countdown_timer
|
||||
start_countdown_timer
|
||||
|
|
@ -1360,7 +1360,7 @@ u8 func1010_safe_cracking[] = {
|
|||
|
||||
beginloop(0x08)
|
||||
if_object_in_good_condition(OBJ_SAFEKEYPAD, /*goto*/ 0x2c)
|
||||
message(CHR_BOND, L_DEPO(64)) // "Mission critical object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_DEPO(64)) // "Mission critical object destroyed."
|
||||
set_stage_flag(STAGEFLAG_SAFEKEYPAD_DESTROYED)
|
||||
hide_countdown_timer
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
|
@ -1373,7 +1373,7 @@ u8 func1010_safe_cracking[] = {
|
|||
mute_channel(CHANNEL_1)
|
||||
assign_sound(0x8145, CHANNEL_1)
|
||||
control_sound_from_object(CHANNEL_1, OBJ_SAFEKEYPAD, TRUE)
|
||||
message(CHR_P1P2, L_DEPO(37)) // "Door Decoder finished - door unlocked."
|
||||
show_hudmsg(CHR_P1P2, L_DEPO(37)) // "Door Decoder finished - door unlocked."
|
||||
unlock_door(OBJ_SAFEDOOR, 0x40)
|
||||
unset_object_flag2(OBJ_SAFEDOOR, OBJFLAG2_AICANNOTUSE)
|
||||
open_door(OBJ_SAFEDOOR)
|
||||
|
|
@ -1408,7 +1408,7 @@ u8 func1012_check_for_end[] = {
|
|||
hide_countdown_timer
|
||||
stop_countdown_timer
|
||||
if_all_objectives_complete(/*goto*/ 0x53)
|
||||
message(CHR_BOND, L_DEPO(51)) // "Objectives incomplete - MISSION FAILED."
|
||||
show_hudmsg(CHR_BOND, L_DEPO(51)) // "Objectives incomplete - MISSION FAILED."
|
||||
label(0x2c)
|
||||
restart_timer
|
||||
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -1087,7 +1087,7 @@ u8 func0404_scientist[] = {
|
|||
if_self_flag_bankx_eq(CHRFLAG0_00004000, TRUE, BANK_0, /*goto*/ 0x2f)
|
||||
if_object_in_good_condition(OBJ_GOODTERM3, /*goto*/ 0x19)
|
||||
say_quip(CHR_TARGET, 0x10, 0xff, 0x00, 0xff, 0x81, 0x09, 0x08)
|
||||
display_text_top_middle(CHR_TARGET, L_EAR(44), COLOR_00_GREEN) // "It appears someone has broken my PC."
|
||||
show_hudmsg_top_middle(CHR_TARGET, L_EAR(44), COLOR_00_GREEN) // "It appears someone has broken my PC."
|
||||
goto_next(0x0e)
|
||||
|
||||
label(0x19)
|
||||
|
|
@ -1137,7 +1137,7 @@ u8 func0404_scientist[] = {
|
|||
goto_next(0x0f)
|
||||
|
||||
label(0x0f)
|
||||
message(CHR_TARGET, L_EAR(28)) // "Powering down active systems."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(28)) // "Powering down active systems."
|
||||
speak(CHR_TARGET, 0xffff, 0x8118, CHANNEL_9, COLOR_00_GREEN) // unknown text
|
||||
chr_do_animation(ANIM_STANDING_TYPE_ONE_HAND, 0, 193, 0x10, 0x10, CHR_SELF, 2)
|
||||
|
||||
|
|
@ -1146,7 +1146,7 @@ u8 func0404_scientist[] = {
|
|||
endloop(0x0d)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_TARGET, L_EAR(29)) // "Experiment has been shut down."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(29)) // "Experiment has been shut down."
|
||||
stop_chr
|
||||
|
||||
beginloop(0x0e)
|
||||
|
|
@ -1314,7 +1314,7 @@ u8 func1009_weaponscache[] = {
|
|||
|
||||
label(0x2f)
|
||||
if_chr_has_hiddenflag(CHR_BOND, CHRHFLAG_PSYCHOSISED, /*goto*/ 0x2f)
|
||||
message(CHR_TARGET, L_EAR(98)) // "Secret weapons compartment opened."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(98)) // "Secret weapons compartment opened."
|
||||
play_sound(0x00f7, -1)
|
||||
assign_sound(0x043b, CHANNEL_5)
|
||||
control_sound_from_object(CHANNEL_5, OBJ_CMP150_1, TRUE)
|
||||
|
|
@ -1329,7 +1329,7 @@ u8 func1009_weaponscache[] = {
|
|||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
label(0x2f)
|
||||
message(CHR_TARGET, L_EAR(99)) // "Enemy detected - weapon cache locked."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(99)) // "Enemy detected - weapon cache locked."
|
||||
play_sound(0x00f7, -1)
|
||||
unset_stage_flag(STAGEFLAG_BOT_ACTIVE)
|
||||
unset_stage_flag(STAGEFLAG_BOT_REPROGRAMMED)
|
||||
|
|
@ -1369,25 +1369,25 @@ u8 func1002_bot_activation_terminal[] = {
|
|||
play_sound(0x01ca, -1)
|
||||
assign_sound(0x01c5, CHANNEL_3)
|
||||
play_sound_from_object(CHANNEL_3, OBJ_PURPLEBOT, 0x0258, 0x0320)
|
||||
message(CHR_TARGET, L_EAR(15)) // "Maintenance robots activated."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(15)) // "Maintenance robots activated."
|
||||
set_stage_flag(STAGEFLAG_BOT_ACTIVE)
|
||||
set_stage_flag(STAGEFLAG_BOT_ACTIVE_NOPROGRAM)
|
||||
reloop(0x04)
|
||||
|
||||
// Activating after reprogramming
|
||||
label(0x2f)
|
||||
message(CHR_TARGET, L_EAR(15)) // "Maintenance robots activated."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(15)) // "Maintenance robots activated."
|
||||
set_stage_flag(STAGEFLAG_BOT_ACTIVE)
|
||||
yield
|
||||
play_sound(0x00f7, -1)
|
||||
message(CHR_TARGET, L_EAR(18)) // "Maintenance cycle activated."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(18)) // "Maintenance cycle activated."
|
||||
set_stage_flag(STAGEFLAG_BOT_ACTIVE_MAINTENANCE)
|
||||
reloop(0x04)
|
||||
|
||||
// Attempting to deactivate while bot reprogrammed and running
|
||||
label(0x08)
|
||||
play_sound(0x00f7, -1)
|
||||
message(CHR_TARGET, L_EAR(20)) // "Operation not allowed - robots busy."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(20)) // "Operation not allowed - robots busy."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x09)
|
||||
|
|
@ -1399,7 +1399,7 @@ u8 func1002_bot_activation_terminal[] = {
|
|||
|
||||
// Deactivating
|
||||
label(0x0a)
|
||||
message(CHR_TARGET, L_EAR(21)) // "Maintenance robots deactivated."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(21)) // "Maintenance robots deactivated."
|
||||
unset_stage_flag(STAGEFLAG_BOT_ACTIVE)
|
||||
unset_stage_flag(STAGEFLAG_BOT_ACTIVE_CLEANING)
|
||||
unset_stage_flag(STAGEFLAG_BOT_ACTIVE_NOPROGRAM)
|
||||
|
|
@ -1409,7 +1409,7 @@ u8 func1002_bot_activation_terminal[] = {
|
|||
|
||||
label(0x0b)
|
||||
play_sound(0x00f7, -1)
|
||||
message(CHR_TARGET, L_EAR(23)) // "Maintenance robot system offline."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(23)) // "Maintenance robot system offline."
|
||||
endloop(0x04)
|
||||
|
||||
endlist
|
||||
|
|
@ -1444,7 +1444,7 @@ u8 func1003_bot_programming_terminal[] = {
|
|||
|
||||
// Reprogramming
|
||||
play_sound(0x00f7, -1)
|
||||
message(CHR_TARGET, L_EAR(16)) // "Maintenance robots reprogrammed."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(16)) // "Maintenance robots reprogrammed."
|
||||
set_stage_flag(STAGEFLAG_BOT_REPROGRAMMED)
|
||||
if_stage_flag_eq(STAGEFLAG_BOT_ACTIVE, TRUE, /*goto*/ 0x2f)
|
||||
reloop(0x04)
|
||||
|
|
@ -1452,7 +1452,7 @@ u8 func1003_bot_programming_terminal[] = {
|
|||
label(0x2f)
|
||||
yield
|
||||
play_sound(0x00f7, -1)
|
||||
message(CHR_TARGET, L_EAR(19)) // "Routine cleaning cycle activated."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(19)) // "Routine cleaning cycle activated."
|
||||
set_stage_flag(STAGEFLAG_BOT_ACTIVE_CLEANING)
|
||||
restart_timer
|
||||
|
||||
|
|
@ -1466,7 +1466,7 @@ u8 func1003_bot_programming_terminal[] = {
|
|||
// Attempting to reprogram while bot already reprogrammed and running
|
||||
label(0x09)
|
||||
play_sound(0x00f7, -1)
|
||||
message(CHR_TARGET, L_EAR(20)) // "Operation not allowed - robots busy."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(20)) // "Operation not allowed - robots busy."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x0a)
|
||||
|
|
@ -1477,7 +1477,7 @@ u8 func1003_bot_programming_terminal[] = {
|
|||
reloop(0x04)
|
||||
|
||||
label(0x0b)
|
||||
message(CHR_TARGET, L_EAR(23)) // "Maintenance robot system offline."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(23)) // "Maintenance robot system offline."
|
||||
endloop(0x04)
|
||||
|
||||
endlist
|
||||
|
|
@ -1522,7 +1522,7 @@ u8 func1018_item_pickup_messages[] = {
|
|||
goto_next(0x2f)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_P1P2, L_EAR(86)) // "Experimental item 1 acquired."
|
||||
show_hudmsg(CHR_P1P2, L_EAR(86)) // "Experimental item 1 acquired."
|
||||
set_stage_flag(STAGEFLAG_HAS_K7AVENGER)
|
||||
label(0x2f)
|
||||
if_stage_flag_eq(STAGEFLAG_HAS_NIGHTVISION, TRUE, /*goto*/ 0x2f)
|
||||
|
|
@ -1530,7 +1530,7 @@ u8 func1018_item_pickup_messages[] = {
|
|||
goto_next(0x2f)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_P1P2, L_EAR(87)) // "Experimental item 2 acquired."
|
||||
show_hudmsg(CHR_P1P2, L_EAR(87)) // "Experimental item 2 acquired."
|
||||
set_stage_flag(STAGEFLAG_HAS_NIGHTVISION)
|
||||
label(0x2f)
|
||||
if_stage_flag_eq(STAGEFLAG_HAS_SHIELD, TRUE, /*goto*/ 0x2f)
|
||||
|
|
@ -1538,7 +1538,7 @@ u8 func1018_item_pickup_messages[] = {
|
|||
goto_next(0x2f)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_P1P2, L_EAR(88)) // "Experimental item 3 acquired."
|
||||
show_hudmsg(CHR_P1P2, L_EAR(88)) // "Experimental item 3 acquired."
|
||||
set_stage_flag(STAGEFLAG_HAS_SHIELD)
|
||||
label(0x2f)
|
||||
endloop(0x04)
|
||||
|
|
@ -1600,7 +1600,7 @@ u8 func1005_check_unacceptable_casualties[] = {
|
|||
label(0x2f)
|
||||
label(0x0f)
|
||||
set_stage_flag(STAGEFLAG_UNACCEPTABLE_CASUALTIES)
|
||||
message(CHR_BOND, L_EAR(26)) // "Unacceptable scientist casualties."
|
||||
show_hudmsg(CHR_BOND, L_EAR(26)) // "Unacceptable scientist casualties."
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
|
@ -1640,7 +1640,7 @@ u8 func1006_terminal_activation[] = {
|
|||
// Inactive terminal
|
||||
label(0x2f)
|
||||
speak(CHR_TARGET, 0xffff, 0x8118, CHANNEL_9, COLOR_00_GREEN) // unknown text
|
||||
message(CHR_TARGET, L_EAR(27)) // "Terminal is not active."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(27)) // "Terminal is not active."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x56)
|
||||
|
|
@ -1661,11 +1661,11 @@ u8 func1006_terminal_activation[] = {
|
|||
endloop(0x56)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_TARGET, L_EAR(42)) // "Experiment already powered down."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(42)) // "Experiment already powered down."
|
||||
reloop(0x04)
|
||||
|
||||
label(0x2f)
|
||||
message(CHR_TARGET, L_EAR(28)) // "Powering down active systems."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(28)) // "Powering down active systems."
|
||||
assign_sound(0x01c3, CHANNEL_5)
|
||||
control_sound_from_object(CHANNEL_5, OBJ_GOODTERM1, TRUE)
|
||||
restart_timer
|
||||
|
|
@ -1675,7 +1675,7 @@ u8 func1006_terminal_activation[] = {
|
|||
endloop(0x0a)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_TARGET, L_EAR(29)) // "Experiment has been shut down."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(29)) // "Experiment has been shut down."
|
||||
set_stage_flag(STAGEFLAG_SHUT_DOWN_EXPERIMENT1)
|
||||
reloop(0x04)
|
||||
|
||||
|
|
@ -1690,11 +1690,11 @@ u8 func1006_terminal_activation[] = {
|
|||
endloop(0x57)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_TARGET, L_EAR(42)) // "Experiment already powered down."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(42)) // "Experiment already powered down."
|
||||
goto_first(0x04)
|
||||
|
||||
label(0x2f)
|
||||
message(CHR_TARGET, L_EAR(28)) // "Powering down active systems."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(28)) // "Powering down active systems."
|
||||
assign_sound(0x01c3, CHANNEL_5)
|
||||
control_sound_from_object(CHANNEL_5, OBJ_GOODTERM2, TRUE)
|
||||
restart_timer
|
||||
|
|
@ -1704,7 +1704,7 @@ u8 func1006_terminal_activation[] = {
|
|||
endloop(0x0e)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_TARGET, L_EAR(29)) // "Experiment has been shut down."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(29)) // "Experiment has been shut down."
|
||||
set_stage_flag(STAGEFLAG_SHUT_DOWN_EXPERIMENT2)
|
||||
reloop(0x04)
|
||||
|
||||
|
|
@ -1719,11 +1719,11 @@ u8 func1006_terminal_activation[] = {
|
|||
endloop(0x58)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_TARGET, L_EAR(42)) // "Experiment already powered down."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(42)) // "Experiment already powered down."
|
||||
reloop(0x04)
|
||||
|
||||
label(0x2f)
|
||||
message(CHR_TARGET, L_EAR(28)) // "Powering down active systems."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(28)) // "Powering down active systems."
|
||||
assign_sound(0x01c3, CHANNEL_5)
|
||||
control_sound_from_object(CHANNEL_5, OBJ_GOODTERM3, TRUE)
|
||||
restart_timer
|
||||
|
|
@ -1733,7 +1733,7 @@ u8 func1006_terminal_activation[] = {
|
|||
endloop(0x10)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_TARGET, L_EAR(29)) // "Experiment has been shut down."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(29)) // "Experiment has been shut down."
|
||||
set_stage_flag(STAGEFLAG_SHUT_DOWN_EXPERIMENT3)
|
||||
reloop(0x04)
|
||||
|
||||
|
|
@ -1741,13 +1741,13 @@ u8 func1006_terminal_activation[] = {
|
|||
label(0x09)
|
||||
if_alarm_active(/*goto*/ 0x06)
|
||||
speak(CHR_TARGET, 0xffff, 0x8118, CHANNEL_9, COLOR_00_GREEN) // unknown text
|
||||
message(CHR_TARGET, L_EAR(30)) // "Alarm activated."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(30)) // "Alarm activated."
|
||||
set_stage_flag(STAGEFLAG_ALARM1_ACTIVE)
|
||||
activate_alarm
|
||||
reloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_TARGET, L_EAR(31)) // "Alarm deactivated."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(31)) // "Alarm deactivated."
|
||||
unset_stage_flag(STAGEFLAG_ALARM1_ACTIVE)
|
||||
deactivate_alarm
|
||||
reloop(0x04)
|
||||
|
|
@ -1756,13 +1756,13 @@ u8 func1006_terminal_activation[] = {
|
|||
label(0x0b)
|
||||
if_alarm_active(/*goto*/ 0x06)
|
||||
speak(CHR_TARGET, 0xffff, 0x8118, CHANNEL_9, COLOR_00_GREEN) // unknown text
|
||||
message(CHR_TARGET, L_EAR(30)) // "Alarm activated."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(30)) // "Alarm activated."
|
||||
set_stage_flag(STAGEFLAG_ALARM2_ACTIVE)
|
||||
activate_alarm
|
||||
reloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_TARGET, L_EAR(31)) // "Alarm deactivated."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(31)) // "Alarm deactivated."
|
||||
unset_stage_flag(STAGEFLAG_ALARM2_ACTIVE)
|
||||
deactivate_alarm
|
||||
reloop(0x04)
|
||||
|
|
@ -1771,13 +1771,13 @@ u8 func1006_terminal_activation[] = {
|
|||
label(0x0c)
|
||||
if_alarm_active(/*goto*/ 0x06)
|
||||
speak(CHR_TARGET, 0xffff, 0x8118, CHANNEL_9, COLOR_00_GREEN) // unknown text
|
||||
message(CHR_TARGET, L_EAR(30)) // "Alarm activated."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(30)) // "Alarm activated."
|
||||
set_stage_flag(STAGEFLAG_ALARM3_ACTIVE)
|
||||
activate_alarm
|
||||
reloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_TARGET, L_EAR(31)) // "Alarm deactivated."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(31)) // "Alarm deactivated."
|
||||
unset_stage_flag(STAGEFLAG_ALARM3_ACTIVE)
|
||||
deactivate_alarm
|
||||
reloop(0x04)
|
||||
|
|
@ -1804,7 +1804,7 @@ u8 func1007_uplink[] = {
|
|||
|
||||
// Activating a second time
|
||||
speak(CHR_TARGET, 0xffff, 0x8116, CHANNEL_9, COLOR_00_GREEN) // unknown text
|
||||
message(CHR_TARGET, L_EAR(41)) // "Security door already unlocked."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(41)) // "Security door already unlocked."
|
||||
reloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
|
|
@ -1812,12 +1812,12 @@ u8 func1007_uplink[] = {
|
|||
|
||||
// Activated computer without uplink
|
||||
speak(CHR_TARGET, 0xffff, 0x8116, CHANNEL_9, COLOR_00_GREEN) // unknown text
|
||||
message(CHR_TARGET, L_EAR(36)) // "ACCESS DENIED - security code required."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(36)) // "ACCESS DENIED - security code required."
|
||||
reloop(0x04)
|
||||
|
||||
// Uplinking
|
||||
label(0x2f)
|
||||
message(CHR_TARGET, L_EAR(60)) // "Connection established."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(60)) // "Connection established."
|
||||
restart_timer
|
||||
|
||||
// First second of uplinking
|
||||
|
|
@ -1839,7 +1839,7 @@ u8 func1007_uplink[] = {
|
|||
endloop(0x08)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_TARGET, L_EAR(37)) // "Searching for password."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(37)) // "Searching for password."
|
||||
restart_timer
|
||||
set_stage_flag(STAGEFLAG_UPLINK_SEARCHING)
|
||||
assign_sound(0x01bf, CHANNEL_5)
|
||||
|
|
@ -1861,9 +1861,9 @@ u8 func1007_uplink[] = {
|
|||
mute_channel(CHANNEL_5)
|
||||
assign_sound(0x01c1, CHANNEL_6)
|
||||
control_sound_from_object(CHANNEL_6, OBJ_UPLINKPC, TRUE)
|
||||
message(CHR_TARGET, L_EAR(39)) // "Password located - bypassing lock."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(39)) // "Password located - bypassing lock."
|
||||
yield
|
||||
message(CHR_TARGET, L_EAR(17)) // "Security doors unlocked."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(17)) // "Security doors unlocked."
|
||||
set_stage_flag(STAGEFLAG_UPLINK_FINISHED)
|
||||
unlock_door(OBJ_UPLINKDOOR, 0x02)
|
||||
|
||||
|
|
@ -1878,7 +1878,7 @@ u8 func1007_uplink[] = {
|
|||
|
||||
// Moved away from PC or switched weapon
|
||||
label(0x09)
|
||||
message(CHR_TARGET, L_EAR(40)) // "Contact broken - reestablish link."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(40)) // "Contact broken - reestablish link."
|
||||
mute_channel(CHANNEL_5)
|
||||
mute_channel(CHANNEL_6)
|
||||
assign_sound(0x01c0, CHANNEL_6)
|
||||
|
|
@ -1901,7 +1901,7 @@ u8 func1007_uplink[] = {
|
|||
endloop(0x0c)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_TARGET, L_EAR(85)) // "Connection broken - experiments still active."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(85)) // "Connection broken - experiments still active."
|
||||
mute_channel(CHANNEL_5)
|
||||
mute_channel(CHANNEL_6)
|
||||
assign_sound(0x01c0, CHANNEL_6)
|
||||
|
|
@ -1930,13 +1930,13 @@ u8 func1008_check_bot_terminals_destroyed[] = {
|
|||
if_object_in_good_condition(OBJ_BOT_ACTIVATION_TERMINAL, /*goto*/ 0x2f)
|
||||
set_stage_flag(STAGEFLAG_BOT_ACTIVATION_TERMINAL_DESTROYED)
|
||||
if_difficulty_lt(DIFF_SA, /*goto*/ 0x2f)
|
||||
message(CHR_BOND, L_EAR(22)) // "Critical mission object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_EAR(22)) // "Critical mission object destroyed."
|
||||
label(0x2f)
|
||||
if_stage_flag_eq(STAGEFLAG_BOT_PROGRAMMING_TERMINAL_DESTROYED, TRUE, /*goto*/ 0x2f)
|
||||
if_object_in_good_condition(OBJ_BOT_PROGRAMMING_TERMINAL, /*goto*/ 0x2f)
|
||||
set_stage_flag(STAGEFLAG_BOT_PROGRAMMING_TERMINAL_DESTROYED)
|
||||
if_difficulty_lt(DIFF_SA, /*goto*/ 0x2f)
|
||||
message(CHR_BOND, L_EAR(22)) // "Critical mission object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_EAR(22)) // "Critical mission object destroyed."
|
||||
label(0x2f)
|
||||
endloop(0x04)
|
||||
|
||||
|
|
@ -2055,7 +2055,7 @@ u8 func100b_check_uplink_pc_destroyed[] = {
|
|||
if_stage_flag_eq(STAGEFLAG_UPLINK_FINISHED, TRUE, /*goto*/ 0x08)
|
||||
if_object_in_good_condition(OBJ_UPLINKPC, /*goto*/ 0x2f)
|
||||
set_stage_flag(STAGEFLAG_UPLINKPC_DESTROYED)
|
||||
message(CHR_BOND, L_EAR(22)) // "Critical mission object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_EAR(22)) // "Critical mission object destroyed."
|
||||
goto_next(0x08)
|
||||
label(0x2f)
|
||||
endloop(0x04)
|
||||
|
|
@ -2202,21 +2202,21 @@ u8 func100e_experiment_terminals_destroyed[] = {
|
|||
if_stage_flag_eq(STAGEFLAG_GOODTERM_DESTROYED, TRUE, /*goto*/ 0x2f)
|
||||
if_stage_flag_eq(STAGEFLAG_SHUT_DOWN_EXPERIMENT1, TRUE, /*goto*/ 0x2f)
|
||||
set_stage_flag(STAGEFLAG_GOODTERM_DESTROYED)
|
||||
message(CHR_BOND, L_EAR(22)) // "Critical mission object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_EAR(22)) // "Critical mission object destroyed."
|
||||
|
||||
label(0x2f)
|
||||
if_object_in_good_condition(OBJ_GOODTERM2, /*goto*/ 0x2f)
|
||||
if_stage_flag_eq(STAGEFLAG_GOODTERM_DESTROYED, TRUE, /*goto*/ 0x2f)
|
||||
if_stage_flag_eq(STAGEFLAG_SHUT_DOWN_EXPERIMENT2, TRUE, /*goto*/ 0x2f)
|
||||
set_stage_flag(STAGEFLAG_GOODTERM_DESTROYED)
|
||||
message(CHR_BOND, L_EAR(22)) // "Critical mission object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_EAR(22)) // "Critical mission object destroyed."
|
||||
|
||||
label(0x2f)
|
||||
if_object_in_good_condition(0x09, /*goto*/ 0x2f)
|
||||
if_stage_flag_eq(STAGEFLAG_GOODTERM_DESTROYED, TRUE, /*goto*/ 0x2f)
|
||||
if_stage_flag_eq(STAGEFLAG_SHUT_DOWN_EXPERIMENT3, TRUE, /*goto*/ 0x2f)
|
||||
set_stage_flag(STAGEFLAG_GOODTERM_DESTROYED)
|
||||
message(CHR_BOND, L_EAR(22)) // "Critical mission object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_EAR(22)) // "Critical mission object destroyed."
|
||||
|
||||
label(0x2f)
|
||||
endloop(0x04)
|
||||
|
|
@ -2744,12 +2744,12 @@ u8 func1013_hatch_pc[] = {
|
|||
|
||||
label(0x56)
|
||||
play_sound(0x00f7, -1)
|
||||
message(CHR_TARGET, L_EAR(61)) // "Maintenance hatch is now open."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(61)) // "Maintenance hatch is now open."
|
||||
unlock_door(0x3f, 0x08)
|
||||
reloop(0x04)
|
||||
|
||||
label(0x2f)
|
||||
message(CHR_TARGET, L_EAR(62)) // "Maintenance hatch is already open."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(62)) // "Maintenance hatch is already open."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x57)
|
||||
|
|
@ -2777,7 +2777,7 @@ u8 func0415_radioactivity[] = {
|
|||
reloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_TARGET, L_EAR(63)) // "WARNING - radioactive matter detected."
|
||||
show_hudmsg(CHR_TARGET, L_EAR(63)) // "WARNING - radioactive matter detected."
|
||||
restart_timer
|
||||
label(0x08)
|
||||
yield
|
||||
|
|
@ -3215,7 +3215,7 @@ u8 func101f_check_bot_destroyed[] = {
|
|||
if_chr_in_room(CHR_COOP, 0x00, 0x006a, /*goto*/ 0x06)
|
||||
|
||||
label(0x0b)
|
||||
message(CHR_BOND, L_EAR(22)) // "Critical mission object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_EAR(22)) // "Critical mission object destroyed."
|
||||
set_stage_flag(STAGEFLAG_00000008)
|
||||
set_stage_flag(STAGEFLAG_00000004)
|
||||
if_stage_flag_eq(STAGEFLAG_HAS_K7AVENGER, TRUE, /*goto*/ 0x2f)
|
||||
|
|
|
|||
|
|
@ -1438,7 +1438,7 @@ u8 func1004_check_negotiator[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_BOND, L_ELD(11)) // "Negotiator has been killed."
|
||||
show_hudmsg(CHR_BOND, L_ELD(11)) // "Negotiator has been killed."
|
||||
set_stage_flag(STAGEFLAG_NEGOTIATOR_DEAD)
|
||||
|
||||
// PA
|
||||
|
|
@ -1680,7 +1680,7 @@ u8 func0403_negotiator[] = {
|
|||
endloop(0x08)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_BOND, L_ELD(13)) // "Negotiator has escaped to safety."
|
||||
show_hudmsg(CHR_BOND, L_ELD(13)) // "Negotiator has escaped to safety."
|
||||
set_stage_flag(STAGEFLAG_NEGOTIATOR_ESCAPED)
|
||||
stop_music_channel(CHANNEL_1)
|
||||
remove_chr(CHR_SELF)
|
||||
|
|
@ -1949,7 +1949,7 @@ u8 func1006_check_snipers_dead[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_BOND, L_ELD(12)) // "Snipers have been eliminated."
|
||||
show_hudmsg(CHR_BOND, L_ELD(12)) // "Snipers have been eliminated."
|
||||
set_stage_flag(STAGEFLAG_SNIPERS_DEAD)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -1965,7 +1965,7 @@ u8 func1007_cooling_switch[] = {
|
|||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_COOLING_SWITCH, TRUE)
|
||||
if_stage_flag_eq(STAGEFLAG_COOLING_ACTIVE, TRUE, /*goto*/ 0x06)
|
||||
message(CHR_P1P2, L_ELD(14)) // "Cooling systems have been activated."
|
||||
show_hudmsg(CHR_P1P2, L_ELD(14)) // "Cooling systems have been activated."
|
||||
set_stage_flag(STAGEFLAG_COOLING_ACTIVE)
|
||||
assign_sound(0x8148, CHANNEL_1)
|
||||
control_sound_from_object(CHANNEL_1, OBJ_COOLING_SWITCH, TRUE)
|
||||
|
|
@ -1985,12 +1985,12 @@ u8 func1007_cooling_switch[] = {
|
|||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_COOLING_SWITCH, TRUE)
|
||||
if_stage_flag_eq(STAGEFLAG_WINDMILL_ACTIVATED, FALSE, /*goto*/ 0x2d)
|
||||
message(CHR_P1P2, L_ELD(48)) // "Operation denied - windmill is active."
|
||||
show_hudmsg(CHR_P1P2, L_ELD(48)) // "Operation denied - windmill is active."
|
||||
goto_next(0x67)
|
||||
label(0x2d)
|
||||
assign_sound(0x8149, CHANNEL_1)
|
||||
control_sound_from_object(CHANNEL_1, OBJ_COOLING_SWITCH, TRUE)
|
||||
message(CHR_P1P2, L_ELD(15)) // "Cooling systems have been deactivated."
|
||||
show_hudmsg(CHR_P1P2, L_ELD(15)) // "Cooling systems have been deactivated."
|
||||
unset_stage_flag(STAGEFLAG_COOLING_ACTIVE)
|
||||
label(0x67)
|
||||
restart_timer
|
||||
|
|
@ -2015,7 +2015,7 @@ u8 func1008_power_switch[] = {
|
|||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_POWER_SWITCH, TRUE)
|
||||
if_stage_flag_eq(STAGEFLAG_POWER_ACTIVE, TRUE, /*goto*/ 0x06)
|
||||
message(CHR_P1P2, L_ELD(16)) // "Power systems have been activated."
|
||||
show_hudmsg(CHR_P1P2, L_ELD(16)) // "Power systems have been activated."
|
||||
set_stage_flag(STAGEFLAG_POWER_ACTIVE)
|
||||
assign_sound(0x8148, CHANNEL_0)
|
||||
control_sound_from_object(CHANNEL_0, OBJ_POWER_SWITCH, TRUE)
|
||||
|
|
@ -2035,12 +2035,12 @@ u8 func1008_power_switch[] = {
|
|||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_POWER_SWITCH, TRUE)
|
||||
if_stage_flag_eq(STAGEFLAG_WINDMILL_ACTIVATED, FALSE, /*goto*/ 0x2d)
|
||||
message(CHR_P1P2, L_ELD(48)) // "Operation denied - windmill is active."
|
||||
show_hudmsg(CHR_P1P2, L_ELD(48)) // "Operation denied - windmill is active."
|
||||
goto_next(0x67)
|
||||
label(0x2d)
|
||||
assign_sound(0x8149, CHANNEL_0)
|
||||
control_sound_from_object(CHANNEL_0, OBJ_POWER_SWITCH, TRUE)
|
||||
message(CHR_P1P2, L_ELD(17)) // "Power systems have been deactivated."
|
||||
show_hudmsg(CHR_P1P2, L_ELD(17)) // "Power systems have been deactivated."
|
||||
unset_stage_flag(STAGEFLAG_POWER_ACTIVE)
|
||||
label(0x67)
|
||||
restart_timer
|
||||
|
|
@ -2079,7 +2079,7 @@ u8 func1009_windmill_switch[] = {
|
|||
label(0x2d)
|
||||
assign_sound(0x0438, CHANNEL_2)
|
||||
play_sound_from_object(CHANNEL_2, OBJ_WINDMILL_SWITCH, 0x0708, 0x0960)
|
||||
message(CHR_P1P2, L_ELD(18)) // "Windmill has been reactivated."
|
||||
show_hudmsg(CHR_P1P2, L_ELD(18)) // "Windmill has been reactivated."
|
||||
yield
|
||||
set_stage_flag(STAGEFLAG_WINDMILL_ACTIVATED)
|
||||
set_object_flag2(OBJ_WINDMILL, OBJFLAG2_AICANNOTUSE)
|
||||
|
|
@ -2107,21 +2107,21 @@ u8 func100a_check_switches_destroyed[] = {
|
|||
beginloop(0x04)
|
||||
if_object_in_good_condition(0x03, /*goto*/ 0x2d)
|
||||
if_stage_flag_eq(STAGEFLAG_COOLING_ACTIVE, TRUE, /*goto*/ 0x2d)
|
||||
message(CHR_BOND, L_ELD(21)) // "Critical mission object has been destroyed."
|
||||
show_hudmsg(CHR_BOND, L_ELD(21)) // "Critical mission object has been destroyed."
|
||||
set_stage_flag(STAGEFLAG_WINDMILL_SWITCH_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
label(0x2d)
|
||||
if_object_in_good_condition(0x04, /*goto*/ 0x2d)
|
||||
if_stage_flag_eq(STAGEFLAG_POWER_ACTIVE, TRUE, /*goto*/ 0x2d)
|
||||
message(CHR_BOND, L_ELD(21)) // "Critical mission object has been destroyed."
|
||||
show_hudmsg(CHR_BOND, L_ELD(21)) // "Critical mission object has been destroyed."
|
||||
set_stage_flag(STAGEFLAG_WINDMILL_SWITCH_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
label(0x2d)
|
||||
if_object_in_good_condition(0x05, /*goto*/ 0x2d)
|
||||
if_stage_flag_eq(STAGEFLAG_WINDMILL_ACTIVATED, TRUE, /*goto*/ 0x2d)
|
||||
message(CHR_BOND, L_ELD(21)) // "Critical mission object has been destroyed."
|
||||
show_hudmsg(CHR_BOND, L_ELD(21)) // "Critical mission object has been destroyed."
|
||||
set_stage_flag(STAGEFLAG_WINDMILL_SWITCH_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
|
|
@ -2191,7 +2191,7 @@ u8 func100b_invoke_hackers[] = {
|
|||
|
||||
// Timer expired
|
||||
label(0x06)
|
||||
message(CHR_BOND, L_ELD(23)) // "Hackers have uploaded vital data."
|
||||
show_hudmsg(CHR_BOND, L_ELD(23)) // "Hackers have uploaded vital data."
|
||||
set_stage_flag(STAGEFLAG_HACKERS_SUCCEEDED)
|
||||
|
||||
// Hackers dead
|
||||
|
|
@ -2275,7 +2275,7 @@ u8 func100c_check_hackers_dead[] = {
|
|||
|
||||
label(0x2d)
|
||||
if_stage_flag_eq(STAGEFLAG_HACKERS_SUCCEEDED, TRUE, /*goto*/ 0x2d)
|
||||
message(CHR_BOND, L_ELD(24)) // "Hackers have been eliminated."
|
||||
show_hudmsg(CHR_BOND, L_ELD(24)) // "Hackers have been eliminated."
|
||||
set_stage_flag(STAGEFLAG_HACKERS_DEAD)
|
||||
|
||||
// Hackers succeeded
|
||||
|
|
@ -2296,7 +2296,7 @@ u8 func100e_check_objectives_complete[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_P1P2, L_ELD(25)) // "Carrington has been rescued."
|
||||
show_hudmsg(CHR_P1P2, L_ELD(25)) // "Carrington has been rescued."
|
||||
set_stage_flag(STAGEFLAG_CARRINGTON_RESCUED)
|
||||
yield
|
||||
yield
|
||||
|
|
@ -2305,7 +2305,7 @@ u8 func100e_check_objectives_complete[] = {
|
|||
hide_countdown_timer
|
||||
stop_countdown_timer
|
||||
if_all_objectives_complete(/*goto*/ 0x5c)
|
||||
message(CHR_BOND, L_ELD(26)) // "All objectives not completed - mission failed."
|
||||
show_hudmsg(CHR_BOND, L_ELD(26)) // "All objectives not completed - mission failed."
|
||||
|
||||
// If all objectives aren't complete, the player is shown the message, but
|
||||
// if the objective completes within the next 4 seconds you pass the level
|
||||
|
|
@ -2393,7 +2393,7 @@ u8 func1013_check_guard_subdued[] = {
|
|||
// Captured someone
|
||||
label(0x06)
|
||||
if_stage_flag_eq(STAGEFLAG_GUARD_CAPTURED, TRUE, /*goto*/ 0x2e)
|
||||
message(CHR_BOND, L_ELD(29)) // "Enemy guard has been subdued."
|
||||
show_hudmsg(CHR_BOND, L_ELD(29)) // "Enemy guard has been subdued."
|
||||
label(0x2e)
|
||||
unset_stage_flag(STAGEFLAG_FORGOT_TO_KO_GUARD)
|
||||
yield
|
||||
|
|
@ -2483,7 +2483,7 @@ u8 func1015_check_computers_destroyed[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x08)
|
||||
message(CHR_BOND, L_ELD(21)) // "Critical mission object has been destroyed."
|
||||
show_hudmsg(CHR_BOND, L_ELD(21)) // "Critical mission object has been destroyed."
|
||||
set_stage_flag(STAGEFLAG_HACKER_PC_DESTROYED)
|
||||
label(0x09)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
|
@ -3207,7 +3207,7 @@ u8 func1025_check_basement_entered_without_subdue[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_P1P2, L_ELD(49)) // "Mission unsuccessful - enemy guard not captured."
|
||||
show_hudmsg(CHR_P1P2, L_ELD(49)) // "Mission unsuccessful - enemy guard not captured."
|
||||
set_stage_flag(STAGEFLAG_FORGOT_TO_KO_GUARD)
|
||||
|
||||
label(0x0d)
|
||||
|
|
|
|||
|
|
@ -777,7 +777,7 @@ u8 func1004_check_hostages_killed[] = {
|
|||
label(0x08)
|
||||
if_stage_flag_eq(STAGEFLAG_ENOUGH_HOSTAGES_SAVED, TRUE, /*goto*/ 0x2e)
|
||||
set_stage_flag(STAGEFLAG_TOO_MANY_HOSTAGES_KILLED)
|
||||
message(CHR_BOND, L_IMP(16)) // "Too many hostages killed."
|
||||
show_hudmsg(CHR_BOND, L_IMP(16)) // "Too many hostages killed."
|
||||
|
||||
label(0x2e)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
|
@ -793,7 +793,7 @@ u8 func1005_check_safeinfo_destroyed[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x08)
|
||||
message(CHR_BOND, L_IMP(18)) // "Sensitive information has been destroyed."
|
||||
show_hudmsg(CHR_BOND, L_IMP(18)) // "Sensitive information has been destroyed."
|
||||
set_stage_flag(STAGEFLAG_SAFEINFO_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -818,7 +818,7 @@ u8 func1005_check_safeinfo_destroyed[] = {
|
|||
/* Switch activated */ \
|
||||
label(0x08) \
|
||||
play_sound(0x043a, CHANNEL_7) \
|
||||
message(CHR_P1P2, 0x220f) /* "Automatic gun activated." */ \
|
||||
show_hudmsg(CHR_P1P2, 0x220f) /* "Automatic gun activated." */ \
|
||||
label(0x0e) \
|
||||
unset_object_flag(autogun, OBJFLAG_DEACTIVATED) \
|
||||
set_stage_flag(stageflag) \
|
||||
|
|
@ -833,7 +833,7 @@ u8 func1005_check_safeinfo_destroyed[] = {
|
|||
/* Autogun or switch destroyed */ \
|
||||
label(0x0b) \
|
||||
if_difficulty_lt(DIFF_SA, /*goto*/ 0x11) \
|
||||
message(CHR_BOND, 0x2222) /* "Critical mission object has been destroyed." */ \
|
||||
show_hudmsg(CHR_BOND, 0x2222) /* "Critical mission object has been destroyed." */ \
|
||||
set_stage_flag(STAGEFLAG_AUTOGUN_SWITCH_DESTROYED)
|
||||
|
||||
|
||||
|
|
@ -1567,7 +1567,7 @@ u8 func100c_check_carrington_dead[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x2e)
|
||||
message(CHR_BOND, L_IMP(19)) // "Carrington has been killed."
|
||||
show_hudmsg(CHR_BOND, L_IMP(19)) // "Carrington has been killed."
|
||||
set_stage_flag(STAGEFLAG_CARRINGTON_DEAD)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -2631,7 +2631,7 @@ u8 func1013_check_hostages_saved[] = {
|
|||
// All rooms done
|
||||
label(0x2e)
|
||||
if_stage_flag_eq(STAGEFLAG_TOO_MANY_HOSTAGES_KILLED, TRUE, /*goto*/ 0x2e)
|
||||
message(CHR_BOND, L_IMP(17)) // "Hostages have been saved."
|
||||
show_hudmsg(CHR_BOND, L_IMP(17)) // "Hostages have been saved."
|
||||
set_stage_flag(STAGEFLAG_ENOUGH_HOSTAGES_SAVED)
|
||||
|
||||
label(0x2e)
|
||||
|
|
@ -2937,14 +2937,14 @@ u8 func1015_firingrange_pc[] = {
|
|||
reloop(0x0a)
|
||||
|
||||
label(0x2f)
|
||||
message(CHR_BOND, L_IMP(34)) // "Critical mission object has been destroyed."
|
||||
show_hudmsg(CHR_BOND, L_IMP(34)) // "Critical mission object has been destroyed."
|
||||
set_stage_flag(STAGEFLAG_FR_PC_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
label(0x08)
|
||||
play_sound(0x8116, -1)
|
||||
if_objective_complete(1, /*goto*/ 0x08)
|
||||
message(CHR_P1P2, L_IMP(30)) // "Access denied - authorization failure."
|
||||
show_hudmsg(CHR_P1P2, L_IMP(30)) // "Access denied - authorization failure."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x0b)
|
||||
|
|
@ -2955,7 +2955,7 @@ u8 func1015_firingrange_pc[] = {
|
|||
endloop(0x0a)
|
||||
|
||||
label(0x08)
|
||||
message(CHR_P1P2, L_IMP(31)) // "Emergency overrides have been engaged."
|
||||
show_hudmsg(CHR_P1P2, L_IMP(31)) // "Emergency overrides have been engaged."
|
||||
unset_object_flag(OBJ_RCP120, OBJFLAG_UNCOLLECTABLE)
|
||||
unset_object_flag(OBJ_RCP120_GLASS, OBJFLAG_INVINCIBLE)
|
||||
destroy_object(OBJ_RCP120_GLASS)
|
||||
|
|
@ -3609,7 +3609,7 @@ u8 func1023_check_skeder_shuttle_destroyed[] = {
|
|||
|
||||
label(0x2e)
|
||||
if_stage_flag_eq(STAGEFLAG_BOMB_AIRBORNE, TRUE, /*goto*/ 0x0f)
|
||||
message(CHR_BOND, L_IMP(39)) // "The bomb has been detonated..."
|
||||
show_hudmsg(CHR_BOND, L_IMP(39)) // "The bomb has been detonated..."
|
||||
set_stage_flag(STAGEFLAG_BOMB_EXPLODING_ON_GROUND)
|
||||
explosions_around_chr(CHR_BOND)
|
||||
restart_timer
|
||||
|
|
@ -3707,12 +3707,12 @@ u8 func1027_uplink[] = {
|
|||
label(0x08)
|
||||
if_chr_weapon_equipped(CHR_TARGET, WEAPON_DATAUPLINK, /*goto*/ 0x2e)
|
||||
play_sound(0x8116, -1)
|
||||
message(CHR_TARGET, L_IMP(51)) // "You need the Data Uplink."
|
||||
show_hudmsg(CHR_TARGET, L_IMP(51)) // "You need the Data Uplink."
|
||||
reloop(0x04)
|
||||
|
||||
// Activated with uplink
|
||||
label(0x2e)
|
||||
message(CHR_TARGET, L_IMP(52)) // "Connection has been made."
|
||||
show_hudmsg(CHR_TARGET, L_IMP(52)) // "Connection has been made."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x0a)
|
||||
|
|
@ -3733,7 +3733,7 @@ u8 func1027_uplink[] = {
|
|||
|
||||
// 1 second since uplink
|
||||
label(0x08)
|
||||
message(CHR_TARGET, L_IMP(53)) // "Bypassing security systems."
|
||||
show_hudmsg(CHR_TARGET, L_IMP(53)) // "Bypassing security systems."
|
||||
restart_timer
|
||||
assign_sound(0x01bf, CHANNEL_5)
|
||||
control_sound_from_object(CHANNEL_5, OBJ_SKEDAR_SHUTTLE, TRUE)
|
||||
|
|
@ -3759,9 +3759,9 @@ u8 func1027_uplink[] = {
|
|||
mute_channel(CHANNEL_5)
|
||||
assign_sound(0x01c1, CHANNEL_6)
|
||||
control_sound_from_object(CHANNEL_6, OBJ_SKEDAR_SHUTTLE, TRUE)
|
||||
message(CHR_TARGET, L_IMP(54)) // "Virus has been downloaded successfully."
|
||||
show_hudmsg(CHR_TARGET, L_IMP(54)) // "Virus has been downloaded successfully."
|
||||
yield
|
||||
message(CHR_TARGET, L_IMP(55)) // "Ship's engines have been activated."
|
||||
show_hudmsg(CHR_TARGET, L_IMP(55)) // "Ship's engines have been activated."
|
||||
set_stage_flag(STAGEFLAG_TRIGGER_SHUTTLE_TAKEOFF)
|
||||
|
||||
beginloop(0x14)
|
||||
|
|
@ -3774,7 +3774,7 @@ u8 func1027_uplink[] = {
|
|||
|
||||
// Connection broken
|
||||
label(0x0b)
|
||||
message(CHR_TARGET, L_IMP(56)) // "Connection to ship has been broken."
|
||||
show_hudmsg(CHR_TARGET, L_IMP(56)) // "Connection to ship has been broken."
|
||||
mute_channel(CHANNEL_5)
|
||||
assign_sound(0x01c0, CHANNEL_6)
|
||||
control_sound_from_object(CHANNEL_6, OBJ_SKEDAR_SHUTTLE, TRUE)
|
||||
|
|
|
|||
|
|
@ -552,7 +552,7 @@ u8 func1019_check_shields_lowered[] = {
|
|||
if_object_in_good_condition(OBJ_SHIELDCONSOLE1, /*goto*/ 0x06)
|
||||
if_object_in_good_condition(OBJ_SHIELDCONSOLE2, /*goto*/ 0x06)
|
||||
if_object_in_good_condition(OBJ_SHIELDCONSOLE3, /*goto*/ 0x06)
|
||||
message(CHR_BOND, L_LEE(10)) // "Ship's shields have been lowered."
|
||||
show_hudmsg(CHR_BOND, L_LEE(10)) // "Ship's shields have been lowered."
|
||||
set_stage_flag(STAGEFLAG_SHIELDS_DISABLED)
|
||||
if_difficulty_lt(DIFF_PA, /*goto*/ 0x09)
|
||||
restart_timer
|
||||
|
|
@ -587,7 +587,7 @@ u8 func1004_check_hangar_doors_opened[] = {
|
|||
if_object_in_good_condition(OBJ_HANGARDOORCONSOLE, /*goto*/ 0x2d)
|
||||
|
||||
// Console destroyed
|
||||
message(CHR_BOND, L_LEE(48)) // "Critical mission object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_LEE(48)) // "Critical mission object destroyed."
|
||||
set_stage_flag(STAGEFLAG_HANGAR_DOOR_CONSOLE_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
|
|
@ -603,7 +603,7 @@ u8 func1004_check_hangar_doors_opened[] = {
|
|||
// Console activated
|
||||
label(0x06)
|
||||
if_stage_flag_eq(STAGEFLAG_SHIELDS_DISABLED, TRUE, /*goto*/ 0x2c)
|
||||
message(CHR_BOND, L_LEE(47)) // "Hangar doors locked - shields still active."
|
||||
show_hudmsg(CHR_BOND, L_LEE(47)) // "Hangar doors locked - shields still active."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x65)
|
||||
|
|
@ -615,7 +615,7 @@ u8 func1004_check_hangar_doors_opened[] = {
|
|||
|
||||
// PA - console activated after shields disabled
|
||||
label(0x2c)
|
||||
message(CHR_P1P2, L_LEE(11)) // "Hangar doors have been opened."
|
||||
show_hudmsg(CHR_P1P2, L_LEE(11)) // "Hangar doors have been opened."
|
||||
set_stage_flag(STAGEFLAG_HANGAR_DOORS_OPEN)
|
||||
|
||||
// A and SA once shields disabled, or follow through from above
|
||||
|
|
@ -757,7 +757,7 @@ u8 func040e_elvis_give_ar34[] = {
|
|||
label(0x06)
|
||||
speak(CHR_P1P2, L_LEE(20), 0x12e2, CHANNEL_6, COLOR_04_ORANGE) // "Take this - you should find it useful..."
|
||||
give_object_to_chr(OBJ_AR34, CHR_PRESET)
|
||||
message(CHR_PRESET, L_LEE(21)) // "Received AR34 assault rifle."
|
||||
show_hudmsg(CHR_PRESET, L_LEE(21)) // "Received AR34 assault rifle."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x0d)
|
||||
|
|
@ -914,7 +914,7 @@ u8 func0409_elvis_follow[] = {
|
|||
|
||||
label(0x06)
|
||||
do_preset_animation(-1)
|
||||
message(CHR_BOND, L_LEE(13)) // "Navigational information has been retrieved."
|
||||
show_hudmsg(CHR_BOND, L_LEE(13)) // "Navigational information has been retrieved."
|
||||
speak(CHR_PRESET, L_LEE(31), 0x12e4, CHANNEL_6, COLOR_04_ORANGE) // "Time to head upwards..."
|
||||
restart_timer
|
||||
set_stage_flag(STAGEFLAG_NAVIGATION_ROOM_DONE)
|
||||
|
|
@ -1103,7 +1103,7 @@ u8 func1005_check_elvis_dead[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x2c)
|
||||
message(CHR_BOND, L_LEE(12)) // "Elvis has been killed."
|
||||
show_hudmsg(CHR_BOND, L_LEE(12)) // "Elvis has been killed."
|
||||
set_stage_flag(STAGEFLAG_ELVIS_DEAD)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -1801,7 +1801,7 @@ u8 func0419_hangar_maian[] = {
|
|||
endloop(0x10)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_BOND, L_LEE(13)) // "Navigational information has been retrieved."
|
||||
show_hudmsg(CHR_BOND, L_LEE(13)) // "Navigational information has been retrieved."
|
||||
set_stage_flag(STAGEFLAG_NAVIGATION_ROOM_DONE)
|
||||
goto_first(0x03)
|
||||
|
||||
|
|
@ -1943,7 +1943,7 @@ u8 func100c_engineroom[] = {
|
|||
destroy_object(0x1e)
|
||||
destroy_object(0x1f)
|
||||
destroy_object(0x20)
|
||||
message(CHR_BOND, L_LEE(23)) // "Engines have been disabled."
|
||||
show_hudmsg(CHR_BOND, L_LEE(23)) // "Engines have been disabled."
|
||||
set_stage_flag(STAGEFLAG_ENGINES_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -2469,7 +2469,7 @@ u8 func1010_check_bridge_captured[] = {
|
|||
goto_first(0x09)
|
||||
|
||||
label(0x2c)
|
||||
message(CHR_BOND, L_LEE(25)) // "Bridge has been captured."
|
||||
show_hudmsg(CHR_BOND, L_LEE(25)) // "Bridge has been captured."
|
||||
set_stage_flag(STAGEFLAG_BRIDGE_CAPTURED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -3547,7 +3547,7 @@ u8 func1021_check_ammo_wasted[] = {
|
|||
// Ammo wasted
|
||||
label(0x2c)
|
||||
set_stage_flag(STAGEFLAG_AMMO_WASTED)
|
||||
message(CHR_BOND, L_LEE(49)) // "Ammo depleted - consoles can't be destroyed."
|
||||
show_hudmsg(CHR_BOND, L_LEE(49)) // "Ammo depleted - consoles can't be destroyed."
|
||||
|
||||
beginloop(0x66)
|
||||
if_stage_flag_eq(STAGEFLAG_SHIELDS_DISABLED, TRUE, /*goto*/ 0x2c)
|
||||
|
|
|
|||
|
|
@ -882,7 +882,7 @@ u8 func1007_check_disguise_collected[] = {
|
|||
u8 func1026_check_records_destroyed[] = {
|
||||
beginloop(0x04)
|
||||
if_object_in_good_condition(0x04, /*goto*/ 0x06)
|
||||
message(CHR_BOND, L_LIP(14)) // "Research records destroyed."
|
||||
show_hudmsg(CHR_BOND, L_LIP(14)) // "Research records destroyed."
|
||||
set_stage_flag(STAGEFLAG_RECORDS_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
label(0x06)
|
||||
|
|
@ -900,17 +900,17 @@ u8 func1003_uplink_doors[] = {
|
|||
label(0x2d)
|
||||
if_stage_flag_eq(STAGEFLAG_DOOR_VIRUS_DOWNLOADED, FALSE, /*goto*/ 0x06)
|
||||
play_sound(0x8116, -1)
|
||||
message(CHR_P1P2, L_LIP(48)) // "Virus has already been downloaded."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(48)) // "Virus has already been downloaded."
|
||||
reloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
if_chr_weapon_equipped(CHR_P1P2, WEAPON_DATAUPLINK, /*goto*/ 0x2d)
|
||||
play_sound(0x8116, -1)
|
||||
message(CHR_P1P2, L_LIP(20)) // "Access to door control systems denied."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(20)) // "Access to door control systems denied."
|
||||
reloop(0x04)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_P1P2, L_LIP(30)) // "Data Uplink connected."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(30)) // "Data Uplink connected."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x08)
|
||||
|
|
@ -923,7 +923,7 @@ u8 func1003_uplink_doors[] = {
|
|||
endloop(0x08)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_P1P2, L_LIP(49)) // "Initiating virus download."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(49)) // "Initiating virus download."
|
||||
restart_timer
|
||||
assign_sound(0x01bf, CHANNEL_5)
|
||||
control_sound_from_object(CHANNEL_5, 0x02, TRUE)
|
||||
|
|
@ -945,13 +945,13 @@ u8 func1003_uplink_doors[] = {
|
|||
label(0x2d)
|
||||
assign_sound(0x01c1, CHANNEL_5)
|
||||
control_sound_from_object(CHANNEL_5, 0x02, TRUE)
|
||||
message(CHR_P1P2, L_LIP(23)) // "Virus downloaded to console."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(23)) // "Virus downloaded to console."
|
||||
yield
|
||||
set_stage_flag(STAGEFLAG_DOOR_VIRUS_DOWNLOADED)
|
||||
reloop(0x04)
|
||||
|
||||
label(0x09)
|
||||
message(CHR_P1P2, L_LIP(31)) // "Data Uplink connection broken."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(31)) // "Data Uplink connection broken."
|
||||
mute_channel(CHANNEL_5)
|
||||
assign_sound(0x01c0, CHANNEL_6)
|
||||
control_sound_from_object(CHANNEL_6, 0x02, TRUE)
|
||||
|
|
@ -977,17 +977,17 @@ u8 func1004_uplink_lights[] = {
|
|||
label(0x2d)
|
||||
if_stage_flag_eq(STAGEFLAG_LIGHT_VIRUS_DONE, FALSE, /*goto*/ 0x06)
|
||||
play_sound(0x8116, -1)
|
||||
message(CHR_P1P2, L_LIP(48)) // "Virus has already been downloaded."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(48)) // "Virus has already been downloaded."
|
||||
reloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
if_chr_weapon_equipped(CHR_P1P2, WEAPON_DATAUPLINK, /*goto*/ 0x2d)
|
||||
play_sound(0x8116, -1)
|
||||
message(CHR_P1P2, L_LIP(21)) // "Access to light control systems denied."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(21)) // "Access to light control systems denied."
|
||||
reloop(0x04)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_P1P2, L_LIP(30)) // "Data Uplink connected."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(30)) // "Data Uplink connected."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x08)
|
||||
|
|
@ -1000,7 +1000,7 @@ u8 func1004_uplink_lights[] = {
|
|||
endloop(0x08)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_P1P2, L_LIP(49)) // "Initiating virus download."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(49)) // "Initiating virus download."
|
||||
restart_timer
|
||||
assign_sound(0x01bf, CHANNEL_5)
|
||||
control_sound_from_object(CHANNEL_5, 0x01, TRUE)
|
||||
|
|
@ -1022,9 +1022,9 @@ u8 func1004_uplink_lights[] = {
|
|||
label(0x2d)
|
||||
assign_sound(0x01c1, CHANNEL_5)
|
||||
control_sound_from_object(CHANNEL_5, 0x01, TRUE)
|
||||
message(CHR_P1P2, L_LIP(23)) // "Virus downloaded to console."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(23)) // "Virus downloaded to console."
|
||||
yield
|
||||
message(CHR_P1P2, L_LIP(88)) // "Lighting systems overloaded."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(88)) // "Lighting systems overloaded."
|
||||
misc_command(0x00c4, 0x0c, 0x6e)
|
||||
misc_command(0x00c3, 0x0c, 0x6e)
|
||||
misc_command(0x00c8, 0x0c, 0x6e)
|
||||
|
|
@ -1042,7 +1042,7 @@ u8 func1004_uplink_lights[] = {
|
|||
reloop(0x04)
|
||||
|
||||
label(0x09)
|
||||
message(CHR_P1P2, L_LIP(31)) // "Data Uplink connection broken."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(31)) // "Data Uplink connection broken."
|
||||
mute_channel(CHANNEL_5)
|
||||
assign_sound(0x01c0, CHANNEL_6)
|
||||
control_sound_from_object(CHANNEL_6, 0x01, TRUE)
|
||||
|
|
@ -1068,17 +1068,17 @@ u8 func1005_uplink_autoguns[] = {
|
|||
label(0x2d)
|
||||
if_stage_flag_eq(STAGEFLAG_LIGHT_VIRUS_DONE, FALSE, /*goto*/ 0x06)
|
||||
play_sound(0x8116, -1)
|
||||
message(CHR_P1P2, L_LIP(48)) // "Virus has already been downloaded."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(48)) // "Virus has already been downloaded."
|
||||
reloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
if_chr_weapon_equipped(CHR_P1P2, WEAPON_DATAUPLINK, /*goto*/ 0x2d)
|
||||
play_sound(0x8116, -1)
|
||||
message(CHR_P1P2, L_LIP(22)) // "Access to security control systems denied."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(22)) // "Access to security control systems denied."
|
||||
reloop(0x04)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_P1P2, L_LIP(30)) // "Data Uplink connected."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(30)) // "Data Uplink connected."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x08)
|
||||
|
|
@ -1091,7 +1091,7 @@ u8 func1005_uplink_autoguns[] = {
|
|||
endloop(0x08)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_P1P2, L_LIP(49)) // "Initiating virus download."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(49)) // "Initiating virus download."
|
||||
restart_timer
|
||||
assign_sound(0x01bf, CHANNEL_5)
|
||||
control_sound_from_object(CHANNEL_5, 0x03, TRUE)
|
||||
|
|
@ -1112,14 +1112,14 @@ u8 func1005_uplink_autoguns[] = {
|
|||
label(0x2d)
|
||||
assign_sound(0x01c1, CHANNEL_5)
|
||||
control_sound_from_object(CHANNEL_5, 0x00, TRUE)
|
||||
message(CHR_P1P2, L_LIP(23)) // "Virus downloaded to console."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(23)) // "Virus downloaded to console."
|
||||
yield
|
||||
message(CHR_P1P2, L_LIP(105)) // "Automatic Defenses Disabled."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(105)) // "Automatic Defenses Disabled."
|
||||
set_stage_flag(STAGEFLAG_AUTOGUN_VIRUS_DONE)
|
||||
reloop(0x04)
|
||||
|
||||
label(0x09)
|
||||
message(CHR_P1P2, L_LIP(31)) // "Data Uplink connection broken."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(31)) // "Data Uplink connection broken."
|
||||
mute_channel(CHANNEL_5)
|
||||
assign_sound(0x01c0, CHANNEL_6)
|
||||
control_sound_from_object(CHANNEL_6, 0x03, TRUE)
|
||||
|
|
@ -1133,7 +1133,7 @@ u8 func1005_uplink_autoguns[] = {
|
|||
mute_channel(CHANNEL_6)
|
||||
reloop(0x04)
|
||||
|
||||
message(CHR_P1P2, L_LIP(23)) // "Virus downloaded to console."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(23)) // "Virus downloaded to console."
|
||||
set_stage_flag(STAGEFLAG_AUTOGUN_VIRUS_DONE)
|
||||
endloop(0x04)
|
||||
|
||||
|
|
@ -1147,7 +1147,7 @@ u8 func1006_check_lab_accessed[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_P1P2, L_LIP(29)) // "Laboratory accessed successfully."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(29)) // "Laboratory accessed successfully."
|
||||
set_stage_flag(STAGEFLAG_ENTERED_LAB)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -1584,7 +1584,7 @@ u8 func1009_disguise_timer[] = {
|
|||
activate_alarm
|
||||
yield
|
||||
label(0x2d)
|
||||
message(CHR_BOND, L_LIP(47)) // "The enemy has discovered the disguise."
|
||||
show_hudmsg(CHR_BOND, L_LIP(47)) // "The enemy has discovered the disguise."
|
||||
set_stage_flag(STAGEFLAG_DISGUISE_UNCOVERED)
|
||||
hide_countdown_timer
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
|
@ -1756,7 +1756,7 @@ u8 func0418_doorman[] = {
|
|||
|
||||
label(0x2d)
|
||||
set_stage_flag(STAGEFLAG_DOORMAN_REJECTED)
|
||||
message(CHR_TARGET, L_LIP(57)) // "Cannot gain access to autopsy lab."
|
||||
show_hudmsg(CHR_TARGET, L_LIP(57)) // "Cannot gain access to autopsy lab."
|
||||
goto_next(0x64)
|
||||
|
||||
// Disguised
|
||||
|
|
@ -1791,7 +1791,7 @@ u8 func0418_doorman[] = {
|
|||
restart_timer
|
||||
label(0x10)
|
||||
set_stage_flag(STAGEFLAG_DOORMAN_REJECTED)
|
||||
message(CHR_TARGET, L_LIP(57)) // "Cannot gain access to autopsy lab."
|
||||
show_hudmsg(CHR_TARGET, L_LIP(57)) // "Cannot gain access to autopsy lab."
|
||||
goto_next(0x64)
|
||||
|
||||
// Jo disguised and unarmed
|
||||
|
|
@ -1871,7 +1871,7 @@ u8 func100b_check_doorman_dead[] = {
|
|||
if_chr_in_room(CHR_BOND, 0x00, 0x0088, /*goto*/ 0x06)
|
||||
if_chr_in_room(CHR_BOND, 0x00, 0x0089, /*goto*/ 0x06)
|
||||
if_chr_in_room(CHR_BOND, 0x00, 0x008a, /*goto*/ 0x06)
|
||||
message(CHR_P1P2, L_LIP(56)) // "Critical mission personnel killed."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(56)) // "Critical mission personnel killed."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x08)
|
||||
|
|
@ -1879,7 +1879,7 @@ u8 func100b_check_doorman_dead[] = {
|
|||
endloop(0x08)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_P1P2, L_LIP(57)) // "Cannot gain access to autopsy lab."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(57)) // "Cannot gain access to autopsy lab."
|
||||
restart_timer
|
||||
set_stage_flag(STAGEFLAG_DOORMAN_DEAD)
|
||||
|
||||
|
|
@ -2141,7 +2141,7 @@ u8 func100e_elvis_timer[] = {
|
|||
stop_countdown_timer
|
||||
hide_countdown_timer
|
||||
set_stage_flag(STAGEFLAG_ELVIS_DEAD)
|
||||
message(CHR_BOND, L_LIP(64)) // "Elvis has been killed."
|
||||
show_hudmsg(CHR_BOND, L_LIP(64)) // "Elvis has been killed."
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
label(0x2d)
|
||||
|
|
@ -2449,7 +2449,7 @@ u8 func1013_check_chamber_switch_destroyed[] = {
|
|||
beginloop(0x04)
|
||||
if_object_in_good_condition(OBJ_CHAMBER1_SWITCH, /*goto*/ 0x06)
|
||||
if_stage_flag_eq(STAGEFLAG_CHAMBER1_RAISED, TRUE, /*goto*/ 0x2d)
|
||||
message(CHR_BOND, L_LIP(68)) // "Mission critical equipment destroyed."
|
||||
show_hudmsg(CHR_BOND, L_LIP(68)) // "Mission critical equipment destroyed."
|
||||
set_stage_flag(STAGEFLAG_CHAMBER_SWITCH_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
|
|
@ -2485,7 +2485,7 @@ u8 func1014_check_crate_destroyed[] = {
|
|||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_BOND, L_LIP(68)) // "Mission critical equipment destroyed."
|
||||
show_hudmsg(CHR_BOND, L_LIP(68)) // "Mission critical equipment destroyed."
|
||||
set_stage_flag(STAGEFLAG_CRATE_DESTROYED)
|
||||
|
||||
beginloop(0x08)
|
||||
|
|
@ -2497,7 +2497,7 @@ u8 func1014_check_crate_destroyed[] = {
|
|||
|
||||
label(0x2e)
|
||||
unset_stage_flag(STAGEFLAG_CRATE_DESTROYED)
|
||||
message(CHR_BOND, L_LIP(89)) // "Alternative entrance to medlabs created."
|
||||
show_hudmsg(CHR_BOND, L_LIP(89)) // "Alternative entrance to medlabs created."
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
label(0x06)
|
||||
|
|
@ -3165,7 +3165,7 @@ u8 func1018_disable_chambers[] = {
|
|||
control_sound_from_object(CHANNEL_0, chamber, TRUE) \
|
||||
assign_sound(0x043a, CHANNEL_7) \
|
||||
control_sound_from_object(CHANNEL_7, switch, TRUE) \
|
||||
message(CHR_P1P2, 0x2a42) /* "Containment unit raised up." */ \
|
||||
show_hudmsg(CHR_P1P2, 0x2a42) /* "Containment unit raised up." */ \
|
||||
set_object_image(switch, 0x00, 0x13) \
|
||||
unset_object_flag(chamber, OBJFLAG_DEACTIVATED) \
|
||||
set_stage_flag(stageflag) \
|
||||
|
|
@ -3189,7 +3189,7 @@ u8 func1018_disable_chambers[] = {
|
|||
control_sound_from_object(CHANNEL_0, chamber, TRUE) \
|
||||
assign_sound(0x043a, CHANNEL_7) \
|
||||
control_sound_from_object(CHANNEL_7, switch, TRUE) \
|
||||
message(CHR_P1P2, 0x2a43) /* "Containment unit lowered down." */ \
|
||||
show_hudmsg(CHR_P1P2, 0x2a43) /* "Containment unit lowered down." */ \
|
||||
set_object_image(switch, 0x00, 0x12) \
|
||||
unset_object_flag(chamber, OBJFLAG_DEACTIVATED) \
|
||||
unset_stage_flag(stageflag) \
|
||||
|
|
@ -3228,7 +3228,7 @@ u8 func1019_chamber1[] = {
|
|||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_CHAMBER1_SWITCH, TRUE)
|
||||
set_object_image(OBJ_CHAMBER1_SWITCH, 0x00, 0x13)
|
||||
message(CHR_P1P2, L_LIP(66)) // "Containment unit raised up."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(66)) // "Containment unit raised up."
|
||||
unset_object_flag(OBJ_CHAMBER1, OBJFLAG_DEACTIVATED)
|
||||
set_stage_flag(STAGEFLAG_CHAMBER1_RAISED)
|
||||
restart_timer
|
||||
|
|
@ -3264,7 +3264,7 @@ u8 func1019_chamber1[] = {
|
|||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_CHAMBER1_SWITCH, TRUE)
|
||||
set_object_image(OBJ_CHAMBER1_SWITCH, 0x00, 0x12)
|
||||
message(CHR_P1P2, L_LIP(67)) // "Containment unit lowered down."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(67)) // "Containment unit lowered down."
|
||||
unset_object_flag(OBJ_CHAMBER1, OBJFLAG_DEACTIVATED)
|
||||
unset_stage_flag(STAGEFLAG_CHAMBER1_RAISED)
|
||||
restart_timer
|
||||
|
|
@ -3299,7 +3299,7 @@ u8 func101a_chamber2[] = {
|
|||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_CHAMBER2_SWITCH, TRUE)
|
||||
set_object_image(OBJ_CHAMBER2_SWITCH, 0x00, 0x13)
|
||||
message(CHR_P1P2, L_LIP(66)) // "Containment unit raised up."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(66)) // "Containment unit raised up."
|
||||
unset_object_flag(OBJ_CHAMBER2, OBJFLAG_DEACTIVATED)
|
||||
set_stage_flag(STAGEFLAG_CHAMBER2_RAISED)
|
||||
restart_timer
|
||||
|
|
@ -3324,7 +3324,7 @@ u8 func101a_chamber2[] = {
|
|||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_CHAMBER2_SWITCH, TRUE)
|
||||
set_object_image(OBJ_CHAMBER2_SWITCH, 0x00, 0x12)
|
||||
message(CHR_P1P2, L_LIP(67)) // "Containment unit lowered down."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(67)) // "Containment unit lowered down."
|
||||
unset_object_flag(OBJ_CHAMBER2, OBJFLAG_DEACTIVATED)
|
||||
unset_stage_flag(STAGEFLAG_CHAMBER2_RAISED)
|
||||
restart_timer
|
||||
|
|
@ -3385,7 +3385,7 @@ u8 func1020_chamber8[] = {
|
|||
control_sound_from_object(CHANNEL_0, OBJ_CHAMBER8, TRUE)
|
||||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_CHAMBER8_SWITCH, TRUE)
|
||||
message(CHR_P1P2, L_LIP(66)) // "Containment unit raised up."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(66)) // "Containment unit raised up."
|
||||
set_object_image(OBJ_CHAMBER8_SWITCH, 0x00, 0x13)
|
||||
unset_object_flag(OBJ_CHAMBER8, OBJFLAG_DEACTIVATED)
|
||||
set_stage_flag(STAGEFLAG_CHAMBER8_RAISED)
|
||||
|
|
@ -3411,7 +3411,7 @@ u8 func1020_chamber8[] = {
|
|||
|
||||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_CHAMBER8_SWITCH, TRUE)
|
||||
message(CHR_P1P2, L_LIP(67)) // "Containment unit lowered down."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(67)) // "Containment unit lowered down."
|
||||
set_object_image(OBJ_CHAMBER8_SWITCH, 0x00, 0x12)
|
||||
unset_object_flag(OBJ_CHAMBER8, OBJFLAG_DEACTIVATED)
|
||||
unset_stage_flag(STAGEFLAG_CHAMBER8_RAISED)
|
||||
|
|
@ -3497,7 +3497,7 @@ u8 func1021_xray_scanning[] = {
|
|||
reloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_P1P2, L_LIP(74)) // "Scanner target acquired."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(74)) // "Scanner target acquired."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x08)
|
||||
|
|
@ -3506,12 +3506,12 @@ u8 func1021_xray_scanning[] = {
|
|||
endloop(0x08)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_P1P2, L_LIP(75)) // "Target ID confirmed - XT origin."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(75)) // "Target ID confirmed - XT origin."
|
||||
set_stage_flag(STAGEFLAG_XRAY_DONE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_P1P2, L_LIP(76)) // "Scanner lock lost."
|
||||
show_hudmsg(CHR_P1P2, L_LIP(76)) // "Scanner lock lost."
|
||||
endloop(0x04)
|
||||
|
||||
endlist
|
||||
|
|
@ -4151,7 +4151,7 @@ u8 func1027_check_disguise_worn[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_BOND, L_LIP(77)) // "Disguise has been worn."
|
||||
show_hudmsg(CHR_BOND, L_LIP(77)) // "Disguise has been worn."
|
||||
set_returnlist(0x00, 0x0401)
|
||||
set_returnlist(0x01, 0x0402)
|
||||
set_returnlist(0x02, 0x0403)
|
||||
|
|
@ -4694,7 +4694,7 @@ u8 func1036_check_door_terminal_destroyed[] = {
|
|||
beginloop(0x0b)
|
||||
if_object_in_good_condition(OBJ_DOOR_TERMINAL, /*goto*/ 0x2d)
|
||||
if_stage_flag_eq(STAGEFLAG_DOOR_VIRUS_DOWNLOADED, TRUE, /*goto*/ 0x2e)
|
||||
message(CHR_BOND, L_LIP(68)) // "Mission critical equipment destroyed."
|
||||
show_hudmsg(CHR_BOND, L_LIP(68)) // "Mission critical equipment destroyed."
|
||||
set_stage_flag(STAGEFLAG_UPLINK_TERMINAL_DESTROYED)
|
||||
label(0x2e)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
|
|
|||
|
|
@ -935,25 +935,25 @@ u8 func140e_check_interceptors_destroyed[] = {
|
|||
if_object_in_good_condition(OBJ_INTERCEPTOR1, /*goto*/ 0x2e)
|
||||
if_stage_flag_eq(STAGEFLAG_INTERCEPTOR1_DESTROYED, TRUE, /*goto*/ 0x2e)
|
||||
set_stage_flag(STAGEFLAG_INTERCEPTOR1_DESTROYED)
|
||||
message(CHR_BOND, L_LUE(19)) // "Robot interceptor disabled."
|
||||
show_hudmsg(CHR_BOND, L_LUE(19)) // "Robot interceptor disabled."
|
||||
|
||||
label(0x2e)
|
||||
if_object_in_good_condition(OBJ_INTERCEPTOR2, /*goto*/ 0x2e)
|
||||
if_stage_flag_eq(STAGEFLAG_INTERCEPTOR2_DESTROYED, TRUE, /*goto*/ 0x2e)
|
||||
set_stage_flag(STAGEFLAG_INTERCEPTOR2_DESTROYED)
|
||||
message(CHR_BOND, L_LUE(19)) // "Robot interceptor disabled."
|
||||
show_hudmsg(CHR_BOND, L_LUE(19)) // "Robot interceptor disabled."
|
||||
|
||||
label(0x2e)
|
||||
if_object_in_good_condition(OBJ_INTERCEPTOR3, /*goto*/ 0x2e)
|
||||
if_stage_flag_eq(STAGEFLAG_INTERCEPTOR3_DESTROYED, TRUE, /*goto*/ 0x2e)
|
||||
set_stage_flag(STAGEFLAG_INTERCEPTOR3_DESTROYED)
|
||||
message(CHR_BOND, L_LUE(19)) // "Robot interceptor disabled."
|
||||
show_hudmsg(CHR_BOND, L_LUE(19)) // "Robot interceptor disabled."
|
||||
|
||||
label(0x2e)
|
||||
if_stage_flag_eq(STAGEFLAG_INTERCEPTOR1_DESTROYED, FALSE, /*goto*/ 0x2e)
|
||||
if_stage_flag_eq(STAGEFLAG_INTERCEPTOR2_DESTROYED, FALSE, /*goto*/ 0x2e)
|
||||
if_stage_flag_eq(STAGEFLAG_INTERCEPTOR3_DESTROYED, FALSE, /*goto*/ 0x2e)
|
||||
message(CHR_BOND, L_LUE(20)) // "All robot interceptors disabled."
|
||||
show_hudmsg(CHR_BOND, L_LUE(20)) // "All robot interceptors disabled."
|
||||
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
label(0x2e)
|
||||
|
|
@ -979,7 +979,7 @@ u8 func100c_maingate_switch[] = {
|
|||
play_sound_from_entity(CHANNEL_7, OBJ_MAINGATE_SWITCH, 0x012c, 0x0190, 0x00)
|
||||
set_object_image(OBJ_MAINGATE_SWITCH, 0x00, 0x13)
|
||||
if_door_state(OBJ_MAINGATE1, (DOORSTATE_OPEN | DOORSTATE_OPENING), /*goto*/ 0x2e)
|
||||
message(CHR_P1P2, L_LUE(43)) // "Main gate has been opened."
|
||||
show_hudmsg(CHR_P1P2, L_LUE(43)) // "Main gate has been opened."
|
||||
open_door(OBJ_MAINGATE1)
|
||||
open_door(OBJ_MAINGATE2)
|
||||
restart_timer
|
||||
|
|
@ -995,7 +995,7 @@ u8 func100c_maingate_switch[] = {
|
|||
assign_sound(0x043f, CHANNEL_7)
|
||||
play_sound_from_entity(CHANNEL_7, OBJ_MAINGATE_SWITCH, 0x012c, 0x0190, 0x00)
|
||||
set_object_image(OBJ_MAINGATE_SWITCH, 0x00, 0x12)
|
||||
message(CHR_P1P2, L_LUE(44)) // "Main gate has been closed."
|
||||
show_hudmsg(CHR_P1P2, L_LUE(44)) // "Main gate has been closed."
|
||||
close_door(OBJ_MAINGATE1)
|
||||
close_door(OBJ_MAINGATE2)
|
||||
restart_timer
|
||||
|
|
@ -1048,7 +1048,7 @@ u8 func1400_give_bugs[] = {
|
|||
\
|
||||
label(0x0a) \
|
||||
set_stage_flag(STAGEFLAG_COMMSBUG_PLACED) \
|
||||
message(chr, 0x2c1a) /* "Communications bug placed correctly." */ \
|
||||
show_hudmsg(chr, 0x2c1a) /* "Communications bug placed correctly." */ \
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE) \
|
||||
\
|
||||
label(0x0b) \
|
||||
|
|
@ -1058,7 +1058,7 @@ u8 func1400_give_bugs[] = {
|
|||
\
|
||||
label(0x2e) \
|
||||
set_stage_flag(STAGEFLAG_COMMSBUG_MISPLACED) \
|
||||
message(chr, 0x2c1b) /* "Communications bug placed incorrectly." */ \
|
||||
show_hudmsg(chr, 0x2c1b) /* "Communications bug placed incorrectly." */ \
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
|
||||
|
|
@ -1094,7 +1094,7 @@ u8 func1023_check_bug_wasted_coop[] = {
|
|||
u8 func1004_check_antenna_destroyed[] = {
|
||||
beginloop(0x04)
|
||||
if_object_in_good_condition(OBJ_ANTENNA, /*goto*/ 0x2e)
|
||||
message(CHR_BOND, L_LUE(28)) // "Antenna has been destroyed."
|
||||
show_hudmsg(CHR_BOND, L_LUE(28)) // "Antenna has been destroyed."
|
||||
set_stage_flag(STAGEFLAG_ANTENNA_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
label(0x2e)
|
||||
|
|
@ -1117,7 +1117,7 @@ u8 func1405_antenna_switch[] = {
|
|||
play_sound_from_object2(CHANNEL_1, OBJ_ANTENNA, 0x00cd, 0x00, 0x02)
|
||||
set_object_image(OBJ_ANTENNA_SWITCH, 0x00, 0x12)
|
||||
unset_object_flag(OBJ_ANTENNA, OBJFLAG_DEACTIVATED)
|
||||
message(CHR_P1P2, L_LUE(30)) // "Antenna lowered."
|
||||
show_hudmsg(CHR_P1P2, L_LUE(30)) // "Antenna lowered."
|
||||
set_stage_flag(STAGEFLAG_ANTENNA_LOWERED)
|
||||
restart_timer
|
||||
|
||||
|
|
@ -1141,7 +1141,7 @@ u8 func1405_antenna_switch[] = {
|
|||
set_object_image(OBJ_ANTENNA_SWITCH, 0x00, 0x13)
|
||||
unset_object_flag(OBJ_ANTENNA, OBJFLAG_DEACTIVATED)
|
||||
unset_stage_flag(STAGEFLAG_ANTENNA_LOWERED)
|
||||
message(CHR_P1P2, L_LUE(29)) // "Antenna raised."
|
||||
show_hudmsg(CHR_P1P2, L_LUE(29)) // "Antenna raised."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x0a)
|
||||
|
|
@ -1172,7 +1172,7 @@ u8 func1006_lift_switches[] = {
|
|||
assign_sound(0x043f, CHANNEL_7)
|
||||
play_sound_from_entity(CHANNEL_7, OBJ_LIFT1_SWITCH, 0x012c, 0x0190, 0x00)
|
||||
if_chr_has_object(CHR_P1P2, OBJ_KEYCARD, /*goto*/ 0x2e)
|
||||
message(CHR_P1P2, L_LUE(36)) // "Lift access denied - key card needed."
|
||||
show_hudmsg(CHR_P1P2, L_LUE(36)) // "Lift access denied - key card needed."
|
||||
goto_next(0x0b)
|
||||
|
||||
label(0x2e)
|
||||
|
|
@ -1183,18 +1183,18 @@ u8 func1006_lift_switches[] = {
|
|||
open_door(0x38)
|
||||
unlock_door(0x0e, 0x02)
|
||||
unlock_door(0x38, 0x02)
|
||||
message(CHR_P1P2, L_LUE(37)) // "Key card accepted - lift operational."
|
||||
show_hudmsg(CHR_P1P2, L_LUE(37)) // "Key card accepted - lift operational."
|
||||
goto_next(0x0b)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_P1P2, L_LUE(38)) // "Lift is fully operational."
|
||||
show_hudmsg(CHR_P1P2, L_LUE(38)) // "Lift is fully operational."
|
||||
goto_next(0x0b)
|
||||
|
||||
label(0x0a)
|
||||
assign_sound(0x043f, CHANNEL_7)
|
||||
play_sound_from_entity(CHANNEL_7, OBJ_LIFT2_SWITCH, 0x012c, 0x0190, 0x00)
|
||||
if_chr_has_object(CHR_BOND, OBJ_KEYCARD, /*goto*/ 0x2e)
|
||||
message(CHR_P1P2, L_LUE(36)) // "Lift access denied - key card needed."
|
||||
show_hudmsg(CHR_P1P2, L_LUE(36)) // "Lift access denied - key card needed."
|
||||
goto_next(0x0b)
|
||||
|
||||
label(0x2e)
|
||||
|
|
@ -1207,11 +1207,11 @@ u8 func1006_lift_switches[] = {
|
|||
yield
|
||||
unlock_door(0x0f, 0x02)
|
||||
unlock_door(0x39, 0x02)
|
||||
message(CHR_P1P2, L_LUE(37)) // "Key card accepted - lift operational."
|
||||
show_hudmsg(CHR_P1P2, L_LUE(37)) // "Key card accepted - lift operational."
|
||||
goto_next(0x0b)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_P1P2, L_LUE(38)) // "Lift is fully operational."
|
||||
show_hudmsg(CHR_P1P2, L_LUE(38)) // "Lift is fully operational."
|
||||
goto_next(0x0b)
|
||||
|
||||
label(0x0b)
|
||||
|
|
@ -1236,7 +1236,7 @@ u8 func1007_check_hangar_accessed[] = {
|
|||
|
||||
label(0x06)
|
||||
set_stage_flag(STAGEFLAG_HANGAR_ACCESSED)
|
||||
message(CHR_P1P2, L_LUE(39)) // "Hangar has been accessed."
|
||||
show_hudmsg(CHR_P1P2, L_LUE(39)) // "Hangar has been accessed."
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
|
@ -1253,7 +1253,7 @@ u8 func1008_check_end_level[] = {
|
|||
endloop(0x09)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_P1P2, L_LUE(40)) // "Met up with CI agent."
|
||||
show_hudmsg(CHR_P1P2, L_LUE(40)) // "Met up with CI agent."
|
||||
set_stage_flag(STAGEFLAG_MET_JON)
|
||||
yield
|
||||
yield
|
||||
|
|
@ -1287,7 +1287,7 @@ u8 func1009_check_radar_shut_down[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x2e)
|
||||
message(CHR_BOND, L_LUE(41)) // "Air intercept radar shut down."
|
||||
show_hudmsg(CHR_BOND, L_LUE(41)) // "Air intercept radar shut down."
|
||||
mute_channel(CHANNEL_0)
|
||||
set_stage_flag(STAGEFLAG_RADAR_SHUT_DOWN)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
|
@ -2370,12 +2370,12 @@ u8 func1011_bunker_explosives[] = {
|
|||
|
||||
label(0x2e)
|
||||
if_chr_weapon_equipped(CHR_P1P2, WEAPON_EXPLOSIVES, /*goto*/ 0x2e)
|
||||
message(CHR_P1P2, L_LUE(45)) // "Access denied."
|
||||
show_hudmsg(CHR_P1P2, L_LUE(45)) // "Access denied."
|
||||
goto_first(0x04)
|
||||
|
||||
label(0x2e)
|
||||
unset_object_flag2(OBJ_EXPLOSIVE_BRICK, OBJFLAG2_INVISIBLE)
|
||||
message(CHR_P1P2, L_LUE(46)) // "Explosive has been placed."
|
||||
show_hudmsg(CHR_P1P2, L_LUE(46)) // "Explosive has been placed."
|
||||
remove_weapon_from_inventory(WEAPON_EXPLOSIVES)
|
||||
set_stage_flag(STAGEFLAG_EXPLOSIVES_PLACED)
|
||||
restart_timer
|
||||
|
|
@ -2389,12 +2389,12 @@ u8 func1011_bunker_explosives[] = {
|
|||
set_countdown_timer(20)
|
||||
if_difficulty_lt(DIFF_SA, /*goto*/ 0x2e)
|
||||
if_stage_flag_eq(STAGEFLAG_ANY_LASER_DESTROYED, TRUE, /*goto*/ 0x06)
|
||||
message(CHR_P1P2, L_LUE(47)) // "Intruder detected - security system online."
|
||||
show_hudmsg(CHR_P1P2, L_LUE(47)) // "Intruder detected - security system online."
|
||||
goto_next(0x06)
|
||||
|
||||
// Agent
|
||||
label(0x2e)
|
||||
message(CHR_P1P2, L_LUE(75)) // "Foreign object detected - security alerted."
|
||||
show_hudmsg(CHR_P1P2, L_LUE(75)) // "Foreign object detected - security alerted."
|
||||
label(0x06)
|
||||
play_x_music(CHANNEL_10, 20)
|
||||
yield
|
||||
|
|
@ -2969,7 +2969,7 @@ u8 func1022_check_lift_switches_destroyed[] = {
|
|||
if_stage_flag_eq(STAGEFLAG_LIFT2_CALLED, TRUE, /*goto*/ 0x06)
|
||||
if_object_in_good_condition(OBJ_LIFT1_SWITCH, /*goto*/ 0x2e)
|
||||
if_object_in_good_condition(OBJ_LIFT2_SWITCH, /*goto*/ 0x2e)
|
||||
message(CHR_BOND, L_LUE(57)) // "Lift access terminals destroyed."
|
||||
show_hudmsg(CHR_BOND, L_LUE(57)) // "Lift access terminals destroyed."
|
||||
set_stage_flag(STAGEFLAG_LIFT_SWITCHES_DESTROYED)
|
||||
goto_next(0x06)
|
||||
|
||||
|
|
@ -3164,7 +3164,7 @@ u8 func0424_activate_lasers[] = {
|
|||
if_stage_flag_eq(STAGEFLAG_ANY_LASER_DESTROYED, TRUE, /*goto*/ 0x2e)
|
||||
set_stage_flag(STAGEFLAG_ANY_LASER_DESTROYED)
|
||||
if_stage_flag_eq(STAGEFLAG_EXPLOSIVES_PLACED, TRUE, /*goto*/ 0x2e)
|
||||
message(CHR_BOND, L_LUE(47)) // "Intruder detected - security system online."
|
||||
show_hudmsg(CHR_BOND, L_LUE(47)) // "Intruder detected - security system online."
|
||||
|
||||
// A and SA
|
||||
label(0x2e)
|
||||
|
|
@ -3205,7 +3205,7 @@ u8 func102d_check_antenna_switch_destroyed[] = {
|
|||
|
||||
label(0x2e)
|
||||
if_stage_flag_eq(STAGEFLAG_ANTENNA_LOWERED, TRUE, /*goto*/ 0x2e)
|
||||
message(CHR_BOND, L_LUE(42)) // "Critical mission object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_LUE(42)) // "Critical mission object destroyed."
|
||||
set_stage_flag(STAGEFLAG_ANTENNA_DESTROYED)
|
||||
label(0x2e)
|
||||
label(0x0e)
|
||||
|
|
|
|||
|
|
@ -891,7 +891,7 @@ u8 func0402_elvis_follow_and_reactive_teleportals[] = {
|
|||
|
||||
label(0x06)
|
||||
say_quip(CHR_BOND, 0x2c, 0xff, 0x03, 0xff, BANK_1, 0x00, 0x00)
|
||||
message(CHR_BOND, L_PAM(30)) // "Teleportals have been reactivated."
|
||||
show_hudmsg(CHR_BOND, L_PAM(30)) // "Teleportals have been reactivated."
|
||||
set_stage_flag(STAGEFLAG_TELEPORTALS_ACTIVATED)
|
||||
set_self_chrflag(CHRCFLAG_01000000)
|
||||
play_sound(0x8148, -1)
|
||||
|
|
@ -1055,7 +1055,7 @@ u8 func0404_elvis_follow_and_do_agent_megaweapon[] = {
|
|||
label(0x06)
|
||||
say_quip(CHR_BOND, 0x2c, 0xff, 0x03, 0xff, BANK_1, 0x00, 0x00)
|
||||
set_self_chrflag(CHRCFLAG_01000000)
|
||||
message(CHR_BOND, L_PAM(20)) // "Cetan megaweapon has been disabled."
|
||||
show_hudmsg(CHR_BOND, L_PAM(20)) // "Cetan megaweapon has been disabled."
|
||||
set_stage_flag(STAGEFLAG_AGENT_MEGAWEAPON_DISABLED)
|
||||
set_stage_flag(STAGEFLAG_MEGAWEAPON_DISABLED)
|
||||
set_lights_state(0x006c, 0x03, 0x64, 0xff, 0x78)
|
||||
|
|
@ -1246,7 +1246,7 @@ u8 func0406_elvis_follow_and_do_sa_megaweapon[] = {
|
|||
label(0x2e)
|
||||
say_quip(CHR_BOND, 0x2c, 0xff, 0x0f, 0xff, BANK_1, 0x00, 0x00)
|
||||
set_self_chrflag(CHRCFLAG_01000000)
|
||||
message(CHR_BOND, L_PAM(20)) // "Cetan megaweapon has been disabled."
|
||||
show_hudmsg(CHR_BOND, L_PAM(20)) // "Cetan megaweapon has been disabled."
|
||||
set_stage_flag(STAGEFLAG_MEGAWEAPON_DISABLED)
|
||||
try_equip_weapon(MODEL_CHRMAIANPISTOL, WEAPON_PHOENIX, 0x00000000, /*goto*/ 0x04)
|
||||
label(0x04)
|
||||
|
|
@ -2562,7 +2562,7 @@ u8 func0415_teleport_bond_to_drcaroll[] = {
|
|||
set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000)
|
||||
goto_next(0x63)
|
||||
label(0x07)
|
||||
message(CHR_BOND, L_PAM(14)) // "Elvis has been killed."
|
||||
show_hudmsg(CHR_BOND, L_PAM(14)) // "Elvis has been killed."
|
||||
|
||||
label(0x62)
|
||||
|
||||
|
|
@ -2933,7 +2933,7 @@ u8 func0418_teleport_coop_to_drcaroll[] = {
|
|||
goto_next(0x63)
|
||||
|
||||
label(0x07)
|
||||
message(CHR_BOND, L_PAM(14)) // "Elvis has been killed."
|
||||
show_hudmsg(CHR_BOND, L_PAM(14)) // "Elvis has been killed."
|
||||
label(0x62)
|
||||
|
||||
beginloop(0x63)
|
||||
|
|
@ -3299,7 +3299,7 @@ u8 func100c_countdown_timer[] = {
|
|||
|
||||
// Player escaped
|
||||
label(0x2e)
|
||||
message(CHR_P1P2, L_PAM(16)) // "Cetan ship evacuation successful."
|
||||
show_hudmsg(CHR_P1P2, L_PAM(16)) // "Cetan ship evacuation successful."
|
||||
set_stage_flag(STAGEFLAG_ESCAPED)
|
||||
restart_timer
|
||||
stop_countdown_timer
|
||||
|
|
@ -3341,7 +3341,7 @@ u8 func100e_check_elvis_dead[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x2e)
|
||||
message(CHR_BOND, L_PAM(14)) // "Elvis has been killed."
|
||||
show_hudmsg(CHR_BOND, L_PAM(14)) // "Elvis has been killed."
|
||||
set_stage_flag(STAGEFLAG_ALLY_DEAD)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -3355,7 +3355,7 @@ u8 func100f_check_drcaroll_dead[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x2e)
|
||||
message(CHR_BOND, L_PAM(15)) // "Dr. Caroll has been killed."
|
||||
show_hudmsg(CHR_BOND, L_PAM(15)) // "Dr. Caroll has been killed."
|
||||
set_stage_flag(STAGEFLAG_ALLY_DEAD)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -3975,7 +3975,7 @@ u8 func040a_check_pa_canisters_destroyed[] = {
|
|||
|
||||
label(0x06)
|
||||
if_stage_flag_eq(STAGEFLAG_MEGAWEAPON_DISABLED, TRUE, /*goto*/ 0x2e)
|
||||
message(CHR_BOND, L_PAM(43)) // "Cetan megaweapon has been disabled."
|
||||
show_hudmsg(CHR_BOND, L_PAM(43)) // "Cetan megaweapon has been disabled."
|
||||
set_stage_flag(STAGEFLAG_MEGAWEAPON_DISABLED)
|
||||
label(0x2e)
|
||||
open_door(0x0f)
|
||||
|
|
@ -4210,7 +4210,7 @@ u8 func1022_control_room[] = {
|
|||
goto_first(0x04)
|
||||
|
||||
label(0x2e)
|
||||
message(CHR_P1P2, L_PAM(21)) // "Control Room has been secured."
|
||||
show_hudmsg(CHR_P1P2, L_PAM(21)) // "Control Room has been secured."
|
||||
set_stage_flag(STAGEFLAG_BLONDES_DEAD)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -4730,7 +4730,7 @@ u8 func102d_check_farsight_ammo_wasted[] = {
|
|||
endloop(0x63)
|
||||
|
||||
label(0x2e)
|
||||
message(CHR_BOND, L_PAM(44)) // "Ammo wasted - unable to disable megaweapon."
|
||||
show_hudmsg(CHR_BOND, L_PAM(44)) // "Ammo wasted - unable to disable megaweapon."
|
||||
set_stage_flag(STAGEFLAG_FARSIGHT_AMMO_WASTED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
label(0x0d)
|
||||
|
|
|
|||
|
|
@ -774,7 +774,7 @@ u8 func100f_check_mine[] = {
|
|||
|
||||
label(0x03)
|
||||
set_stage_flag(STAGEFLAG_MINE_PLACED)
|
||||
message(CHR_P1P2, L_PETE(15)) // "Mine placed correctly."
|
||||
show_hudmsg(CHR_P1P2, L_PETE(15)) // "Mine placed correctly."
|
||||
|
||||
// Check that the player hasn't detonated the mine
|
||||
beginloop(0x2d)
|
||||
|
|
@ -786,12 +786,12 @@ u8 func100f_check_mine[] = {
|
|||
|
||||
label(0x04)
|
||||
set_stage_flag(STAGEFLAG_MINE_WASTED)
|
||||
message(CHR_P1P2, L_PETE(72)) // "Remote Mine has been wasted."
|
||||
show_hudmsg(CHR_P1P2, L_PETE(72)) // "Remote Mine has been wasted."
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
label(0x07)
|
||||
set_stage_flag(STAGEFLAG_MINE_WASTED)
|
||||
message(CHR_P1P2, L_PETE(16)) // "Mine placed incorrectly."
|
||||
show_hudmsg(CHR_P1P2, L_PETE(16)) // "Mine placed incorrectly."
|
||||
|
||||
label(0x0a)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
|
@ -806,17 +806,17 @@ u8 func1026_uplink[] = {
|
|||
|
||||
label(0x03)
|
||||
if_stage_flag_eq(STAGEFLAG_TAXI_REPROGRAMMED, FALSE, /*goto*/ 0x04)
|
||||
message(CHR_P1P2, L_PETE(17)) // "Virus already downloaded into NavComp."
|
||||
show_hudmsg(CHR_P1P2, L_PETE(17)) // "Virus already downloaded into NavComp."
|
||||
reloop(0x10)
|
||||
|
||||
label(0x04)
|
||||
if_chr_weapon_equipped(CHR_P1P2, WEAPON_DATAUPLINK, /*goto*/ 0x03)
|
||||
message(CHR_P1P2, L_PETE(18)) // "Hovcab is unresponsive - need Reprogrammer."
|
||||
show_hudmsg(CHR_P1P2, L_PETE(18)) // "Hovcab is unresponsive - need Reprogrammer."
|
||||
reloop(0x10)
|
||||
|
||||
// Uplinking
|
||||
label(0x03)
|
||||
message(CHR_P1P2, L_PETE(19)) // "Accessing hovercab navigation systems."
|
||||
show_hudmsg(CHR_P1P2, L_PETE(19)) // "Accessing hovercab navigation systems."
|
||||
assign_sound(0x0456, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_TAXI, TRUE)
|
||||
restart_timer
|
||||
|
|
@ -827,9 +827,9 @@ u8 func1026_uplink[] = {
|
|||
endloop(0x05)
|
||||
|
||||
label(0x04)
|
||||
message(CHR_P1P2, L_PETE(20)) // "Virus downloaded successfully."
|
||||
show_hudmsg(CHR_P1P2, L_PETE(20)) // "Virus downloaded successfully."
|
||||
yield
|
||||
message(CHR_P1P2, L_PETE(21)) // "Hovercab navigation systems reprogrammed."
|
||||
show_hudmsg(CHR_P1P2, L_PETE(21)) // "Hovercab navigation systems reprogrammed."
|
||||
mute_channel(CHANNEL_7)
|
||||
assign_sound(0x01c1, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_TAXI, TRUE)
|
||||
|
|
@ -839,7 +839,7 @@ u8 func1026_uplink[] = {
|
|||
|
||||
// Moved away while uplinking
|
||||
label(0x06)
|
||||
message(CHR_P1P2, L_PETE(22)) // "Connection to hovercab broken."
|
||||
show_hudmsg(CHR_P1P2, L_PETE(22)) // "Connection to hovercab broken."
|
||||
mute_channel(CHANNEL_7)
|
||||
yield
|
||||
yield
|
||||
|
|
@ -906,7 +906,7 @@ u8 func040d_limo[] = {
|
|||
if_stage_flag_eq(STAGEFLAG_TRACERBUG_PLACED, TRUE, /*goto*/ 0x03)
|
||||
if_difficulty_lt(DIFF_PA, /*goto*/ 0x03)
|
||||
set_stage_flag(STAGEFLAG_LIMO_ESCAPED)
|
||||
message(CHR_BOND, L_PETE(28)) // "DataDyne limo has escaped."
|
||||
show_hudmsg(CHR_BOND, L_PETE(28)) // "DataDyne limo has escaped."
|
||||
label(0x03)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -1040,7 +1040,7 @@ u8 func040c_taxi[] = {
|
|||
label(0x06) \
|
||||
set_stage_flag(STAGEFLAG_TRACERBUG_PLACED) \
|
||||
unset_stage_flag(STAGEFLAG_TRACERBUG_WASTED) \
|
||||
message(chr, 0x3217) /* "Tracer Bug placed correctly." */ \
|
||||
show_hudmsg(chr, 0x3217) /* "Tracer Bug placed correctly." */ \
|
||||
restart_timer \
|
||||
\
|
||||
beginloop(0x08) \
|
||||
|
|
@ -1063,7 +1063,7 @@ u8 func040c_taxi[] = {
|
|||
label(0x03) \
|
||||
dprint 'W','R','O','N','G','3','\n',0, \
|
||||
set_stage_flag(STAGEFLAG_TRACERBUG_WASTED) \
|
||||
message(chr, 0x3218) /* "Tracer Bug placed incorrectly." */ \
|
||||
show_hudmsg(chr, 0x3218) /* "Tracer Bug placed incorrectly." */ \
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
|
||||
|
|
@ -1095,7 +1095,7 @@ u8 func1005_check_things_destroyed[] = {
|
|||
set_stage_flag(STAGEFLAG_LIMO_DESTROYED)
|
||||
mute_channel(CHANNEL_1)
|
||||
if_difficulty_lt(DIFF_SA, /*goto*/ 0x03)
|
||||
message(CHR_BOND, L_PETE(25)) // "Mission critical vehicle destroyed."
|
||||
show_hudmsg(CHR_BOND, L_PETE(25)) // "Mission critical vehicle destroyed."
|
||||
|
||||
// Check taxi
|
||||
label(0x03)
|
||||
|
|
@ -1104,7 +1104,7 @@ u8 func1005_check_things_destroyed[] = {
|
|||
if_object_in_good_condition(OBJ_TAXI, /*goto*/ 0x03)
|
||||
mute_channel(CHANNEL_0)
|
||||
set_stage_flag(STAGEFLAG_TAXI_DESTROYED)
|
||||
message(CHR_BOND, L_PETE(25)) // "Mission critical vehicle destroyed."
|
||||
show_hudmsg(CHR_BOND, L_PETE(25)) // "Mission critical vehicle destroyed."
|
||||
|
||||
// Check robot
|
||||
label(0x03)
|
||||
|
|
@ -1122,7 +1122,7 @@ u8 func1005_check_things_destroyed[] = {
|
|||
|
||||
label(0x04)
|
||||
set_stage_flag(STAGEFLAG_ROBOT_DESTROYED)
|
||||
message(CHR_BOND, L_PETE(25)) // "Mission critical vehicle destroyed."
|
||||
show_hudmsg(CHR_BOND, L_PETE(25)) // "Mission critical vehicle destroyed."
|
||||
label(0x03)
|
||||
endloop(0x10)
|
||||
|
||||
|
|
@ -1169,7 +1169,7 @@ u8 func1006_check_for_end[] = {
|
|||
if_all_objectives_complete(/*goto*/ 0x05)
|
||||
|
||||
// Objectives failed
|
||||
message(CHR_P1P2, L_PETE(26)) // "MISSION FAILED"
|
||||
show_hudmsg(CHR_P1P2, L_PETE(26)) // "MISSION FAILED"
|
||||
label(0x03)
|
||||
restart_timer
|
||||
|
||||
|
|
@ -1637,7 +1637,7 @@ u8 func0413_bugspotter[] = {
|
|||
assign_sound(0x044a, CHANNEL_6)
|
||||
play_sound_from_entity(CHANNEL_6, CHR_SELF, 0x0bb8, 0x1770, 0x01)
|
||||
set_stage_flag(STAGEFLAG_TRACERBUG_SPOTTED)
|
||||
message(CHR_BOND, L_PETE(67)) // "Tracer Bug has been spotted."
|
||||
show_hudmsg(CHR_BOND, L_PETE(67)) // "Tracer Bug has been spotted."
|
||||
|
||||
// Wait for talking animation to finish
|
||||
beginloop(0x05)
|
||||
|
|
@ -1909,7 +1909,7 @@ u8 func041d_fbi[] = {
|
|||
\
|
||||
label(0x05) \
|
||||
set_stage_flag(STAGEFLAG_CIVILIAN_DEAD) \
|
||||
message(CHR_BOND, 0x321d) /* "Mission failed - unacceptable civilian casualties." */ \
|
||||
show_hudmsg(CHR_BOND, 0x321d) /* "Mission failed - unacceptable civilian casualties." */ \
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
|
||||
|
|
@ -1934,7 +1934,7 @@ u8 func100a_check_cia2_dead[] = {
|
|||
|
||||
label(0x05)
|
||||
set_stage_flag(STAGEFLAG_CIVILIAN_DEAD)
|
||||
message(CHR_BOND, L_PETE(29)) // "Mission failed - unacceptable civilian casualties."
|
||||
show_hudmsg(CHR_BOND, L_PETE(29)) // "Mission failed - unacceptable civilian casualties."
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
|
@ -2209,7 +2209,7 @@ u8 func041e_sealer1[] = {
|
|||
set_stage_flag(STAGEFLAG_ELEVATOR_SEALED)
|
||||
assign_sound(0x0469, CHANNEL_6)
|
||||
play_sound_from_entity(CHANNEL_6, CHR_SELF, 0x0bb8, 0x1770, 0x01)
|
||||
message(CHR_BOND, L_PETE(33)) // "Elevator access sealed."
|
||||
show_hudmsg(CHR_BOND, L_PETE(33)) // "Elevator access sealed."
|
||||
chr_do_animation(ANIM_STANDING_TYPE_ONE_HAND, 0, 193, 0x10, 0x10, CHR_SELF, 2)
|
||||
|
||||
beginloop(0x06)
|
||||
|
|
@ -2472,12 +2472,12 @@ u8 func1010_elevator_switch[] = {
|
|||
lock_door(0x10, 0x02)
|
||||
lock_door(0x11, 0x02)
|
||||
if_stage_flag_eq(STAGEFLAG_ELEVATOR_SEALED, TRUE, /*goto*/ 0x04)
|
||||
message(CHR_P1P2, L_PETE(33)) // "Elevator access sealed."
|
||||
show_hudmsg(CHR_P1P2, L_PETE(33)) // "Elevator access sealed."
|
||||
set_stage_flag(STAGEFLAG_ELEVATOR_SEALED)
|
||||
goto_first(0x10)
|
||||
|
||||
label(0x04)
|
||||
message(CHR_P1P2, L_PETE(48)) // "Elevator door cannot be reopened."
|
||||
show_hudmsg(CHR_P1P2, L_PETE(48)) // "Elevator door cannot be reopened."
|
||||
goto_first(0x10)
|
||||
|
||||
endlist
|
||||
|
|
@ -2509,7 +2509,7 @@ u8 func1014_crash[] = {
|
|||
move_object_to_pad(OBJ_MINE1, 0x0029)
|
||||
destroy_object(OBJ_MINE1)
|
||||
set_stage_flag(STAGEFLAG_DIVERSION_CREATED)
|
||||
message(CHR_BOND, L_PETE(54)) // "Diversion has been created."
|
||||
show_hudmsg(CHR_BOND, L_PETE(54)) // "Diversion has been created."
|
||||
destroy_object(OBJ_TAXI)
|
||||
restart_timer
|
||||
|
||||
|
|
@ -3040,7 +3040,7 @@ u8 func101e_check_sealer_guards_dead[] = {
|
|||
|
||||
label(0x03)
|
||||
if_stage_flag_eq(STAGEFLAG_DIVERSION_CREATED, TRUE, /*goto*/ 0x03)
|
||||
message(CHR_BOND, L_PETE(66)) // "An alternative diversion has been created!"
|
||||
show_hudmsg(CHR_BOND, L_PETE(66)) // "An alternative diversion has been created!"
|
||||
unset_stage_flag(STAGEFLAG_TAXI_DESTROYED)
|
||||
unset_stage_flag(STAGEFLAG_ROBOT_DESTROYED)
|
||||
set_stage_flag(STAGEFLAG_DIVERSION_CREATED)
|
||||
|
|
|
|||
|
|
@ -663,7 +663,7 @@ u8 func1005_check_neutrals_killed[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_BOND, L_RIT(20)) // "Too many neutral casualties inflicted."
|
||||
show_hudmsg(CHR_BOND, L_RIT(20)) // "Too many neutral casualties inflicted."
|
||||
set_stage_flag(STAGEFLAG_KILLED_NEUTRALS)
|
||||
|
||||
label(0x06)
|
||||
|
|
@ -938,7 +938,7 @@ u8 unregistered_function1[] = {
|
|||
\
|
||||
/* Commshub damaged */ \
|
||||
label(0x06) \
|
||||
message(CHR_BOND, 0x3615) /* "UFO attachment damaged." */ \
|
||||
show_hudmsg(CHR_BOND, 0x3615) /* "UFO attachment damaged." */ \
|
||||
set_stage_flag(STAGEFLAG_UFO_ATTACHMENT_DAMAGED) \
|
||||
unset_stage_flag(STAGEFLAG_BOTH_MINES_WASTED) \
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE) \
|
||||
|
|
@ -950,7 +950,7 @@ u8 unregistered_function1[] = {
|
|||
set_ailist(CHR_SELF, GAILIST_IDLE) \
|
||||
\
|
||||
label(0x2d) \
|
||||
message(CHR_BOND, 0x3645) /* "Timed mine has been wasted." */ \
|
||||
show_hudmsg(CHR_BOND, 0x3645) /* "Timed mine has been wasted." */ \
|
||||
set_stage_flag(STAGEFLAG_BOTH_MINES_WASTED) \
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
|
|
@ -1142,8 +1142,8 @@ u8 func100a_autopilot_switch[] = {
|
|||
set_object_image(OBJ_AUTOPILOT_SWITCH, 0x00, 0x13)
|
||||
set_stage_flag(STAGEFLAG_PLANE_STABILIZED)
|
||||
yield
|
||||
message(CHR_P1P2, L_RIT(24)) // "Air Force One has been stabilized."
|
||||
message(CHR_P1P2, L_RIT(23)) // "Autopilot has been activated."
|
||||
show_hudmsg(CHR_P1P2, L_RIT(24)) // "Air Force One has been stabilized."
|
||||
show_hudmsg(CHR_P1P2, L_RIT(23)) // "Autopilot has been activated."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x0e)
|
||||
|
|
@ -1156,7 +1156,7 @@ u8 func100a_autopilot_switch[] = {
|
|||
|
||||
// Switch destroyed
|
||||
label(0x08)
|
||||
message(CHR_P1P2, L_RIT(25)) // "Autopilot systems have been destroyed."
|
||||
show_hudmsg(CHR_P1P2, L_RIT(25)) // "Autopilot systems have been destroyed."
|
||||
set_stage_flag(STAGEFLAG_AUTOPILOT_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -1459,7 +1459,7 @@ u8 func0404_president_running[] = {
|
|||
play_sound_from_entity(CHANNEL_6, CHR_SELF, 0x0bb8, 0x1770, 0x01)
|
||||
if_stage_flag_eq(STAGEFLAG_PRESIDENT_INJURED, TRUE, /*goto*/ 0x56)
|
||||
set_stage_flag(STAGEFLAG_PRESIDENT_INJURED)
|
||||
message(CHR_BOND, L_RIT(72)) // "The President is under attack."
|
||||
show_hudmsg(CHR_BOND, L_RIT(72)) // "The President is under attack."
|
||||
|
||||
beginloop(0x56)
|
||||
if_num_times_shot_lt(1, /*goto*/ 0x06)
|
||||
|
|
@ -1629,7 +1629,7 @@ u8 func100b_check_president_dead[] = {
|
|||
|
||||
label(0x06)
|
||||
set_stage_flag(STAGEFLAG_PRESIDENT_DEAD)
|
||||
message(CHR_BOND, L_RIT(26)) // "The President has been incapacitated."
|
||||
show_hudmsg(CHR_BOND, L_RIT(26)) // "The President has been incapacitated."
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
|
@ -1861,7 +1861,7 @@ u8 func100c_cockpit[] = {
|
|||
damage_chr(CHR_PILOT2, 18)
|
||||
yield
|
||||
set_stage_flag(STAGEFLAG_PILOTS_DEAD)
|
||||
message(CHR_BOND, L_RIT(27)) // "Pilots have been killed."
|
||||
show_hudmsg(CHR_BOND, L_RIT(27)) // "Pilots have been killed."
|
||||
goto_next(0x06)
|
||||
|
||||
// Both takers dead
|
||||
|
|
@ -1895,7 +1895,7 @@ u8 func100c_cockpit[] = {
|
|||
|
||||
label(0x0b)
|
||||
if_stage_flag_eq(STAGEFLAG_ALL_OBJECTIVES_COMPLETE, TRUE, /*goto*/ 0x11)
|
||||
message(CHR_BOND, L_RIT(29)) // "Air Force One is about to crash."
|
||||
show_hudmsg(CHR_BOND, L_RIT(29)) // "Air Force One is about to crash."
|
||||
|
||||
// Wait until the 50 second mark
|
||||
beginloop(0x0c)
|
||||
|
|
@ -1923,7 +1923,7 @@ u8 func100c_cockpit[] = {
|
|||
label(0x2d)
|
||||
set_object_image(0x03, 0x00, 0x13)
|
||||
set_stage_flag(STAGEFLAG_PLANE_STABILIZED)
|
||||
message(CHR_BOND, L_RIT(28)) // "Pilots have been saved."
|
||||
show_hudmsg(CHR_BOND, L_RIT(28)) // "Pilots have been saved."
|
||||
reset_ambience
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
|
|
@ -3625,7 +3625,7 @@ u8 func101a_equipment_switch[] = {
|
|||
if_chr_has_object(CHR_P1P2, OBJ_KEYCARD, /*goto*/ 0x2d)
|
||||
|
||||
restart_timer
|
||||
message(CHR_P1P2, L_RIT(63)) // "Access denied - lift key card required."
|
||||
show_hudmsg(CHR_P1P2, L_RIT(63)) // "Access denied - lift key card required."
|
||||
|
||||
beginloop(0x77)
|
||||
if_timer_gt(120, /*goto*/ 0x06)
|
||||
|
|
@ -3639,7 +3639,7 @@ u8 func101a_equipment_switch[] = {
|
|||
set_object_image(OBJ_EQUIPMENT_SWITCH, 0x00, 0x13)
|
||||
set_stage_flag(STAGEFLAG_EQUIPMENT_RAISED)
|
||||
open_door(0x1c)
|
||||
message(CHR_P1P2, L_RIT(61)) // "Cargo bay has been raised."
|
||||
show_hudmsg(CHR_P1P2, L_RIT(61)) // "Cargo bay has been raised."
|
||||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_EQUIPMENT_SWITCH, TRUE)
|
||||
unset_object_flag(0x1b, OBJFLAG_DEACTIVATED)
|
||||
|
|
@ -3690,7 +3690,7 @@ u8 func101b_hoverbike_switch[] = {
|
|||
label(0x0a)
|
||||
if_chr_has_object(CHR_P1P2, OBJ_KEYCARD, /*goto*/ 0x2d)
|
||||
restart_timer
|
||||
message(CHR_P1P2, L_RIT(63)) // "Access denied - lift key card required."
|
||||
show_hudmsg(CHR_P1P2, L_RIT(63)) // "Access denied - lift key card required."
|
||||
|
||||
beginloop(0x77)
|
||||
if_timer_gt(120, /*goto*/ 0x06)
|
||||
|
|
@ -3702,7 +3702,7 @@ u8 func101b_hoverbike_switch[] = {
|
|||
// Activated with keycard
|
||||
label(0x2d)
|
||||
set_object_image(OBJ_HOVERBIKE_SWITCH, 0x00, 0x13)
|
||||
message(CHR_P1P2, L_RIT(60)) // "Cargo bay has been lowered."
|
||||
show_hudmsg(CHR_P1P2, L_RIT(60)) // "Cargo bay has been lowered."
|
||||
set_savefile_flag(SAVEFILEFLAG_CRASHSITE_BIKE)
|
||||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_HOVERBIKE_SWITCH, TRUE)
|
||||
|
|
@ -3738,7 +3738,7 @@ u8 func101c_check_equipment_switch_destroyed[] = {
|
|||
label(0x06)
|
||||
if_stage_flag_eq(STAGEFLAG_EQUIPMENT_RAISED, TRUE, /*goto*/ 0x2d)
|
||||
set_stage_flag(STAGEFLAG_EQUIPMENT_SWITCH_DESTROYED)
|
||||
message(CHR_BOND, L_RIT(62)) // "Mission critical object has been destroyed."
|
||||
show_hudmsg(CHR_BOND, L_RIT(62)) // "Mission critical object has been destroyed."
|
||||
label(0x2d)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -3833,7 +3833,7 @@ u8 func101d_handle_early_president_death[] = {
|
|||
u8 func1007_check_pod_destroyed[] = {
|
||||
beginloop(0x04)
|
||||
if_object_in_good_condition(OBJ_ESCAPE_POD, /*goto*/ 0x2d)
|
||||
message(CHR_BOND, L_RIT(62)) // "Mission critical object has been destroyed."
|
||||
show_hudmsg(CHR_BOND, L_RIT(62)) // "Mission critical object has been destroyed."
|
||||
set_stage_flag(STAGEFLAG_POD_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
label(0x2d)
|
||||
|
|
@ -3908,7 +3908,7 @@ u8 func1022_pilots_stabilizing[] = {
|
|||
endloop(0x93)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_BOND, L_RIT(84)) // "The pilots have stabilized Air Force One."
|
||||
show_hudmsg(CHR_BOND, L_RIT(84)) // "The pilots have stabilized Air Force One."
|
||||
set_stage_flag(STAGEFLAG_PLANE_STABILIZED)
|
||||
|
||||
label(0x0e)
|
||||
|
|
|
|||
|
|
@ -1131,7 +1131,7 @@ u8 func100d_start_lifts[] = {
|
|||
u8 func1003_check_experiment_destroyed[] = {
|
||||
beginloop(0x04)
|
||||
if_object_in_good_condition(OBJ_EXPERIMENT, /*goto*/ 0x2c)
|
||||
message(CHR_BOND, L_SEV(7)) // "Medical experiment has been sabotaged."
|
||||
show_hudmsg(CHR_BOND, L_SEV(7)) // "Medical experiment has been sabotaged."
|
||||
set_stage_flag(STAGEFLAG_EXPERIMENT_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
label(0x2c)
|
||||
|
|
@ -1143,7 +1143,7 @@ u8 func1003_check_experiment_destroyed[] = {
|
|||
u8 func1004_check_saucer_destroyed[] = {
|
||||
beginloop(0x04)
|
||||
if_object_in_good_condition(0x3e, /*goto*/ 0x2c)
|
||||
message(CHR_BOND, L_SEV(8)) // "Captured Maian saucer has been destroyed."
|
||||
show_hudmsg(CHR_BOND, L_SEV(8)) // "Captured Maian saucer has been destroyed."
|
||||
set_stage_flag(STAGEFLAG_SAUCER_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
label(0x2c)
|
||||
|
|
@ -1327,13 +1327,13 @@ u8 func1008_check_console[] = {
|
|||
label(0x2c)
|
||||
assign_sound(0x8111, CHANNEL_0)
|
||||
play_sound_from_object(CHANNEL_0, OBJ_CONSOLE, 0x012c, 0x0190)
|
||||
message(CHR_BOND, L_SEV(9)) // "Distress signal has been sent."
|
||||
show_hudmsg(CHR_BOND, L_SEV(9)) // "Distress signal has been sent."
|
||||
set_stage_flag(STAGEFLAG_CONSOLE_ACTIVATED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
// Console destroyed
|
||||
label(0x08)
|
||||
message(CHR_BOND, L_SEV(10)) // "Critical mission object has been destroyed."
|
||||
show_hudmsg(CHR_BOND, L_SEV(10)) // "Critical mission object has been destroyed."
|
||||
set_stage_flag(STAGEFLAG_CONSOLE_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -1486,7 +1486,7 @@ u8 func100b_check_medlab_escapable[] = {
|
|||
|
||||
// Player has psychosis gun but ammo depleted
|
||||
label(0x2c)
|
||||
message(CHR_BOND, L_SEV(11)) // "Mission failed - cannot escape from medlab."
|
||||
show_hudmsg(CHR_BOND, L_SEV(11)) // "Mission failed - cannot escape from medlab."
|
||||
set_stage_flag(STAGEFLAG_TRAPPED_AT_START)
|
||||
goto_next(0x0e)
|
||||
|
||||
|
|
@ -1505,7 +1505,7 @@ u8 func100b_check_medlab_escapable[] = {
|
|||
endloop(0x0e)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_BOND, L_SEV(12)) // "Alternative escape route found."
|
||||
show_hudmsg(CHR_BOND, L_SEV(12)) // "Alternative escape route found."
|
||||
unset_stage_flag(STAGEFLAG_TRAPPED_AT_START)
|
||||
goto_first(0x04)
|
||||
|
||||
|
|
|
|||
|
|
@ -1047,7 +1047,7 @@ u8 func100c_check_army_defeated[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_BOND, L_SHO(29)) // "Skedar secret army has been defeated."
|
||||
show_hudmsg(CHR_BOND, L_SHO(29)) // "Skedar secret army has been defeated."
|
||||
set_stage_flag(STAGEFLAG_ARMY_DEFEATED)
|
||||
|
||||
beginloop(0x91)
|
||||
|
|
@ -1250,7 +1250,7 @@ u8 func1007_bug_throws_bond[] = {
|
|||
dprint '1',' ','P','L','A','C','E','D','\n',0,
|
||||
if_stage_flag_eq(STAGEFLAG_PILLAR1_MARKED, TRUE, /*goto*/ 0x0d)
|
||||
set_stage_flag(STAGEFLAG_PILLAR1_MARKED)
|
||||
message(CHR_BOND, L_SHO(25)) // "Target Amplifier placed correctly."
|
||||
show_hudmsg(CHR_BOND, L_SHO(25)) // "Target Amplifier placed correctly."
|
||||
if_ammo_quantity_lt(CHR_BOND, AMMOTYPE_BUG, 1, /*goto*/ 0x0d)
|
||||
goto_first(0x03)
|
||||
|
||||
|
|
@ -1258,7 +1258,7 @@ u8 func1007_bug_throws_bond[] = {
|
|||
dprint '2',' ','P','L','A','C','E','D','\n',0,
|
||||
if_stage_flag_eq(STAGEFLAG_PILLAR2_MARKED, TRUE, /*goto*/ 0x0d)
|
||||
set_stage_flag(STAGEFLAG_PILLAR2_MARKED)
|
||||
message(CHR_BOND, L_SHO(25)) // "Target Amplifier placed correctly."
|
||||
show_hudmsg(CHR_BOND, L_SHO(25)) // "Target Amplifier placed correctly."
|
||||
if_ammo_quantity_lt(CHR_BOND, AMMOTYPE_BUG, 1, /*goto*/ 0x0d)
|
||||
goto_first(0x03)
|
||||
|
||||
|
|
@ -1266,7 +1266,7 @@ u8 func1007_bug_throws_bond[] = {
|
|||
dprint '3',' ','P','L','A','C','E','D','\n',0,
|
||||
if_stage_flag_eq(STAGEFLAG_PILLAR3_MARKED, TRUE, /*goto*/ 0x0d)
|
||||
set_stage_flag(STAGEFLAG_PILLAR3_MARKED)
|
||||
message(CHR_BOND, L_SHO(25)) // "Target Amplifier placed correctly."
|
||||
show_hudmsg(CHR_BOND, L_SHO(25)) // "Target Amplifier placed correctly."
|
||||
if_ammo_quantity_lt(CHR_BOND, AMMOTYPE_BUG, 1, /*goto*/ 0x0d)
|
||||
goto_first(0x03)
|
||||
|
||||
|
|
@ -1290,7 +1290,7 @@ u8 func1007_bug_throws_bond[] = {
|
|||
set_stage_flag(STAGEFLAG_BOND_BUGS_WASTED)
|
||||
if_stage_flag_eq(STAGEFLAG_COOP_BUGS_WASTED, FALSE, /*goto*/ 0x0f)
|
||||
set_stage_flag(STAGEFLAG_BUG_WASTED)
|
||||
message(CHR_BOND, L_SHO(26)) // "Target Amplifier placed incorrectly."
|
||||
show_hudmsg(CHR_BOND, L_SHO(26)) // "Target Amplifier placed incorrectly."
|
||||
label(0x2d)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
|
|
@ -1368,7 +1368,7 @@ u8 func101b_bug_throws_coop[] = {
|
|||
unset_object_flag3(OBJ_PILLAR1, OBJFLAG3_RTRACKED_YELLOW)
|
||||
if_stage_flag_eq(STAGEFLAG_PILLAR1_MARKED, TRUE, /*goto*/ 0x0d)
|
||||
set_stage_flag(STAGEFLAG_PILLAR1_MARKED)
|
||||
message(CHR_COOP, L_SHO(25)) // "Target Amplifier placed correctly."
|
||||
show_hudmsg(CHR_COOP, L_SHO(25)) // "Target Amplifier placed correctly."
|
||||
if_ammo_quantity_lt(CHR_COOP, AMMOTYPE_BUG, 1, /*goto*/ 0x0d)
|
||||
goto_first(0x03)
|
||||
|
||||
|
|
@ -1377,7 +1377,7 @@ u8 func101b_bug_throws_coop[] = {
|
|||
unset_object_flag3(OBJ_PILLAR2, OBJFLAG3_RTRACKED_YELLOW)
|
||||
if_stage_flag_eq(STAGEFLAG_PILLAR2_MARKED, TRUE, /*goto*/ 0x0d)
|
||||
set_stage_flag(STAGEFLAG_PILLAR2_MARKED)
|
||||
message(CHR_COOP, L_SHO(25)) // "Target Amplifier placed correctly."
|
||||
show_hudmsg(CHR_COOP, L_SHO(25)) // "Target Amplifier placed correctly."
|
||||
if_ammo_quantity_lt(CHR_COOP, AMMOTYPE_BUG, 1, /*goto*/ 0x0d)
|
||||
goto_first(0x03)
|
||||
|
||||
|
|
@ -1386,7 +1386,7 @@ u8 func101b_bug_throws_coop[] = {
|
|||
unset_object_flag3(OBJ_PILLAR3, OBJFLAG3_RTRACKED_YELLOW)
|
||||
if_stage_flag_eq(STAGEFLAG_PILLAR3_MARKED, TRUE, /*goto*/ 0x0d)
|
||||
set_stage_flag(STAGEFLAG_PILLAR3_MARKED)
|
||||
message(CHR_COOP, L_SHO(25)) // "Target Amplifier placed correctly."
|
||||
show_hudmsg(CHR_COOP, L_SHO(25)) // "Target Amplifier placed correctly."
|
||||
if_ammo_quantity_lt(CHR_COOP, AMMOTYPE_BUG, 1, /*goto*/ 0x0d)
|
||||
goto_first(0x03)
|
||||
|
||||
|
|
@ -1409,7 +1409,7 @@ u8 func101b_bug_throws_coop[] = {
|
|||
set_stage_flag(STAGEFLAG_COOP_BUGS_WASTED)
|
||||
if_self_flag_bankx_eq(CHRFLAG0_00000010, FALSE, BANK_0, /*goto*/ 0x0f)
|
||||
set_stage_flag(STAGEFLAG_BUG_WASTED)
|
||||
message(CHR_COOP, L_SHO(26)) // "Target Amplifier placed incorrectly."
|
||||
show_hudmsg(CHR_COOP, L_SHO(26)) // "Target Amplifier placed incorrectly."
|
||||
label(0x2d)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
|
|
@ -1461,7 +1461,7 @@ u8 func1009_altar[] = {
|
|||
// At pad, or invalid weapon equipped
|
||||
label(0x2e)
|
||||
set_object_flag2(OBJ_ALTAR, OBJFLAG2_00002000)
|
||||
message(CHR_P1P2, L_SHO(51)) // "Make your sacrifice to the God of War."
|
||||
show_hudmsg(CHR_P1P2, L_SHO(51)) // "Make your sacrifice to the God of War."
|
||||
restart_timer
|
||||
|
||||
beginloop(0x91)
|
||||
|
|
@ -1540,7 +1540,7 @@ u8 func1009_altar[] = {
|
|||
|
||||
label(0x2d)
|
||||
if_difficulty_lt(DIFF_SA, /*goto*/ 0x2d)
|
||||
message(CHR_P1P2, L_SHO(27)) // "Generator has been reactivated."
|
||||
show_hudmsg(CHR_P1P2, L_SHO(27)) // "Generator has been reactivated."
|
||||
label(0x2d)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -1856,7 +1856,7 @@ u8 func100b_check_sanctum_accessed[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_P1P2, L_SHO(28)) // "Skedar Inner Sanctum has been reached."
|
||||
show_hudmsg(CHR_P1P2, L_SHO(28)) // "Skedar Inner Sanctum has been reached."
|
||||
set_stage_flag(STAGEFLAG_ACCESSED_SANCTUM)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -3643,7 +3643,7 @@ u8 unregistered_function1[] = {
|
|||
|
||||
label(0x2d)
|
||||
chr_drop_weapon(CHR_BOND)
|
||||
message(CHR_BOND, L_SHO(26)) // "Target Amplifier placed incorrectly."
|
||||
show_hudmsg(CHR_BOND, L_SHO(26)) // "Target Amplifier placed incorrectly."
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
|
@ -3698,12 +3698,12 @@ u8 func1024_check_grenades_wasted[] = {
|
|||
|
||||
// Blown up using other means (eg. Phoenix or all guns cheat)
|
||||
unset_stage_flag(STAGEFLAG_GRENADES_WASTED)
|
||||
message(CHR_BOND, L_SHO(53)) // "Alternative entrance to Shrine created."
|
||||
show_hudmsg(CHR_BOND, L_SHO(53)) // "Alternative entrance to Shrine created."
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
label(0x2d)
|
||||
if_stage_flag_eq(STAGEFLAG_GRENADES_WASTED, TRUE, /*goto*/ 0x2d)
|
||||
message(CHR_BOND, L_SHO(52)) // "Grenade ammo used up - can't enter Shrine."
|
||||
show_hudmsg(CHR_BOND, L_SHO(52)) // "Grenade ammo used up - can't enter Shrine."
|
||||
set_stage_flag(STAGEFLAG_GRENADES_WASTED)
|
||||
label(0x2d)
|
||||
endloop(0x09)
|
||||
|
|
|
|||
|
|
@ -907,7 +907,7 @@ u8 func1005_check_leader_dead[] = {
|
|||
endloop(0x03)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_BOND, L_STAT(7)) // "Maian leader has been killed."
|
||||
show_hudmsg(CHR_BOND, L_STAT(7)) // "Maian leader has been killed."
|
||||
set_stage_flag(STAGEFLAG_LEADER_DEAD)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -923,7 +923,7 @@ u8 func1009_check_king1_dead[] = {
|
|||
endloop(0x03)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_BOND, L_STAT(8)) // "Skedar King has been killed."
|
||||
show_hudmsg(CHR_BOND, L_STAT(8)) // "Skedar King has been killed."
|
||||
set_stage_flag(STAGEFLAG_KING1_DEAD)
|
||||
unlock_door(0x3e, 0x40)
|
||||
unlock_door(0x3f, 0x40)
|
||||
|
|
@ -942,7 +942,7 @@ u8 func100a_check_king2_dead[] = {
|
|||
endloop(0x03)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_BOND, L_STAT(8)) // "Skedar King has been killed."
|
||||
show_hudmsg(CHR_BOND, L_STAT(8)) // "Skedar King has been killed."
|
||||
set_stage_flag(STAGEFLAG_KING2_DEAD)
|
||||
label(0x0e)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
|
@ -960,7 +960,7 @@ u8 func100b_check_king3_dead[] = {
|
|||
endloop(0x03)
|
||||
|
||||
label(0x2d)
|
||||
message(CHR_BOND, L_STAT(8)) // "Skedar King has been killed."
|
||||
show_hudmsg(CHR_BOND, L_STAT(8)) // "Skedar King has been killed."
|
||||
set_stage_flag(STAGEFLAG_KING3_DEAD)
|
||||
label(0x0e)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
|
|
|||
|
|
@ -1300,7 +1300,7 @@ u8 func0413_jonathan_hangar[] = {
|
|||
open_door(0x2d)
|
||||
set_object_flag(0x2c, OBJFLAG_40000000)
|
||||
set_object_flag(0x2d, OBJFLAG_40000000)
|
||||
message(CHR_P1P2, L_TRA(39)) // "Inner hangar door is opening."
|
||||
show_hudmsg(CHR_P1P2, L_TRA(39)) // "Inner hangar door is opening."
|
||||
|
||||
label(0x32)
|
||||
set_self_flag_bankx(CHRFLAG0_00004000, BANK_0)
|
||||
|
|
@ -1326,7 +1326,7 @@ u8 func0413_jonathan_hangar[] = {
|
|||
open_door(0x2f)
|
||||
set_object_flag(0x2e, OBJFLAG_40000000)
|
||||
set_object_flag(0x2f, OBJFLAG_40000000)
|
||||
message(CHR_P1P2, L_TRA(37)) // "Outer hangar door is opening."
|
||||
show_hudmsg(CHR_P1P2, L_TRA(37)) // "Outer hangar door is opening."
|
||||
|
||||
beginloop(0x20)
|
||||
set_ailist(CHR_SELF, AILIST_JONATHAN_AFTER_TERMINALS)
|
||||
|
|
@ -1858,7 +1858,7 @@ u8 func100a_check_hangar_accessed[] = {
|
|||
|
||||
label(0x06)
|
||||
set_stage_flag(STAGEFLAG_ENTERED_HANGAR)
|
||||
message(CHR_P1P2, L_TRA(31)) // "The secret hangar has been located."
|
||||
show_hudmsg(CHR_P1P2, L_TRA(31)) // "The secret hangar has been located."
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
|
@ -1886,7 +1886,7 @@ u8 func100b_check_jonathan_dead[] = {
|
|||
|
||||
label(0x06)
|
||||
if_stage_flag_eq(STAGEFLAG_STARTED_OUTRO, TRUE, /*goto*/ 0x32)
|
||||
message(CHR_BOND, L_TRA(29)) // "Jonathan has been killed."
|
||||
show_hudmsg(CHR_BOND, L_TRA(29)) // "Jonathan has been killed."
|
||||
set_stage_flag(STAGEFLAG_JON_DEAD)
|
||||
|
||||
label(0x32)
|
||||
|
|
@ -1911,7 +1911,7 @@ u8 func100c_medpack_activation[] = {
|
|||
|
||||
label(0x32)
|
||||
set_stage_flag(STAGEFLAG_MEDPACK_STARTED)
|
||||
message(CHR_P1P2, L_TRA(33)) // "Alien medpack activated."
|
||||
show_hudmsg(CHR_P1P2, L_TRA(33)) // "Alien medpack activated."
|
||||
assign_sound(0x814c, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_HOVERBED, TRUE)
|
||||
restart_timer
|
||||
|
|
@ -1934,7 +1934,7 @@ u8 func100c_medpack_activation[] = {
|
|||
mute_channel(CHANNEL_7)
|
||||
assign_sound(0x814e, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, 0x00, TRUE)
|
||||
message(CHR_P1P2, L_TRA(35)) // "Alien medpack has been administered."
|
||||
show_hudmsg(CHR_P1P2, L_TRA(35)) // "Alien medpack has been administered."
|
||||
yield
|
||||
|
||||
beginloop(0x0c)
|
||||
|
|
@ -2040,13 +2040,13 @@ u8 func100f_terminals[] = {
|
|||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_TERMINAL1, TRUE)
|
||||
if_stage_flag_eq(STAGEFLAG_HANGAR_X_MUSIC_STARTED, TRUE, /*goto*/ 0x32)
|
||||
message(CHR_P1P2, L_TRA(80)) // "Console is not active."
|
||||
show_hudmsg(CHR_P1P2, L_TRA(80)) // "Console is not active."
|
||||
goto_next(0x0f)
|
||||
|
||||
// Terminal 1 active
|
||||
label(0x32)
|
||||
if_stage_flag_eq(STAGEFLAG_INNER_DOOR_OPENING, TRUE, /*goto*/ 0x0f)
|
||||
message(CHR_P1P2, L_TRA(39)) // "Inner hangar door is opening."
|
||||
show_hudmsg(CHR_P1P2, L_TRA(39)) // "Inner hangar door is opening."
|
||||
if_stage_flag_eq(STAGEFLAG_HANGAR_X_MUSIC_STARTED, FALSE, /*goto*/ 0x32)
|
||||
set_stage_flag(STAGEFLAG_INNER_DOOR_OPENING)
|
||||
label(0x32)
|
||||
|
|
@ -2061,13 +2061,13 @@ u8 func100f_terminals[] = {
|
|||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_TERMINAL2, TRUE)
|
||||
if_stage_flag_eq(STAGEFLAG_HANGAR_X_MUSIC_STARTED, TRUE, /*goto*/ 0x32)
|
||||
message(CHR_P1P2, L_TRA(80)) // "Console is not active."
|
||||
show_hudmsg(CHR_P1P2, L_TRA(80)) // "Console is not active."
|
||||
goto_next(0x0f)
|
||||
|
||||
// Terminal 2 active
|
||||
label(0x32)
|
||||
if_stage_flag_eq(STAGEFLAG_OUTER_DOOR_OPENING, TRUE, /*goto*/ 0x0f)
|
||||
message(CHR_P1P2, L_TRA(37)) // "Outer hangar door is opening."
|
||||
show_hudmsg(CHR_P1P2, L_TRA(37)) // "Outer hangar door is opening."
|
||||
if_stage_flag_eq(STAGEFLAG_HANGAR_X_MUSIC_STARTED, FALSE, /*goto*/ 0x32)
|
||||
set_stage_flag(STAGEFLAG_OUTER_DOOR_OPENING)
|
||||
label(0x32)
|
||||
|
|
@ -2108,7 +2108,7 @@ u8 func100d_check_terminals_destroyed[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x08)
|
||||
message(CHR_BOND, L_TRA(36)) // "Mission critical object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_TRA(36)) // "Mission critical object destroyed."
|
||||
set_stage_flag(STAGEFLAG_HANGAR_TERMINAL_DESTROYED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -2124,7 +2124,7 @@ u8 func100e_check_elvis_dead[] = {
|
|||
label(0x06)
|
||||
if_stage_flag_eq(STAGEFLAG_STARTED_OUTRO, TRUE, /*goto*/ 0x32)
|
||||
set_stage_flag(STAGEFLAG_ELVIS_DEAD)
|
||||
message(CHR_BOND, L_TRA(30)) // "Elvis has been killed."
|
||||
show_hudmsg(CHR_BOND, L_TRA(30)) // "Elvis has been killed."
|
||||
label(0x32)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -2359,7 +2359,7 @@ u8 func1017_check_both_hangar_doors_open[] = {
|
|||
endloop(0x04)
|
||||
|
||||
label(0x32)
|
||||
message(CHR_BOND, L_TRA(53)) // "The hangar doors are now open."
|
||||
show_hudmsg(CHR_BOND, L_TRA(53)) // "The hangar doors are now open."
|
||||
set_stage_flag(STAGEFLAG_BOTH_HANGAR_DOORS_OPEN)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -3292,7 +3292,7 @@ u8 func101a_medpack_switch[] = {
|
|||
if_object_in_good_condition(OBJ_MEDPACK_SWITCH, /*goto*/ 0x32)
|
||||
if_difficulty_lt(DIFF_PA, /*goto*/ 0x06)
|
||||
set_stage_flag(STAGEFLAG_MEDPACK_SWITCH_DESTROYED)
|
||||
message(CHR_BOND, L_TRA(36)) // "Mission critical object destroyed."
|
||||
show_hudmsg(CHR_BOND, L_TRA(36)) // "Mission critical object destroyed."
|
||||
label(0x06)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
|
|
@ -3303,7 +3303,7 @@ u8 func101a_medpack_switch[] = {
|
|||
label(0x32)
|
||||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_MEDPACK_SWITCH, TRUE)
|
||||
message(CHR_P1P2, L_TRA(54)) // "Medical containment doors unlocked."
|
||||
show_hudmsg(CHR_P1P2, L_TRA(54)) // "Medical containment doors unlocked."
|
||||
unlock_door(0x12, 0x40)
|
||||
unlock_door(0x13, 0x40)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
|
|
|||
|
|
@ -1464,7 +1464,7 @@ u8 func1004_check_cass_dead[] = {
|
|||
endloop(0x03)
|
||||
|
||||
label(0x2c)
|
||||
message(CHR_BOND, L_WAX(14)) // "Cassandra has been immobilized."
|
||||
show_hudmsg(CHR_BOND, L_WAX(14)) // "Cassandra has been immobilized."
|
||||
set_stage_flag(STAGEFLAG_CASS_DEAD)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
|
|
@ -1477,7 +1477,7 @@ u8 func1005_check_cass_captured[] = {
|
|||
if_chr_dying(CHR_CASS, /*goto*/ 0x0d)
|
||||
if_chr_unloaded(CHR_CASS, /*goto*/ 0x0d)
|
||||
if_chr_y(CHR_CASS, 0, OPERATOR_LESS_THAN, /*goto*/ 0x2c)
|
||||
message(CHR_BOND, L_WAX(15)) // "Cassandra has been captured successfully."
|
||||
show_hudmsg(CHR_BOND, L_WAX(15)) // "Cassandra has been captured successfully."
|
||||
set_stage_flag(STAGEFLAG_CASS_CAPTURED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
|
|
@ -1520,7 +1520,7 @@ u8 func1006_lift_disabling[] = {
|
|||
unset_object_flag(OBJ_CHIEF_LIFT, OBJFLAG_DEACTIVATED)
|
||||
unset_chr_chrflag(CHR_CHIEF, CHRCFLAG_HIDDEN)
|
||||
set_ailist(CHR_CHIEF, AILIST_CHIEF)
|
||||
message(CHR_BOND, L_WAX(25)) // "Lift has been disabled."
|
||||
show_hudmsg(CHR_BOND, L_WAX(25)) // "Lift has been disabled."
|
||||
|
||||
// Wait until chief dead
|
||||
beginloop(0x08)
|
||||
|
|
@ -1530,7 +1530,7 @@ u8 func1006_lift_disabling[] = {
|
|||
endloop(0x08)
|
||||
|
||||
label(0x2c)
|
||||
message(CHR_BOND, L_WAX(16)) // "Security chief has been eliminated."
|
||||
show_hudmsg(CHR_BOND, L_WAX(16)) // "Security chief has been eliminated."
|
||||
set_stage_flag(STAGEFLAG_CHIEF_DEAD)
|
||||
restart_timer
|
||||
|
||||
|
|
@ -1646,7 +1646,7 @@ u8 func1007_bomb_logic[] = {
|
|||
|
||||
// Plant bomb
|
||||
label(0x2c)
|
||||
message(CHR_BOND, L_WAX(22)) // "Skedar bomb has been placed successfully."
|
||||
show_hudmsg(CHR_BOND, L_WAX(22)) // "Skedar bomb has been placed successfully."
|
||||
remove_weapon_from_inventory(WEAPON_SKEDARBOMB)
|
||||
set_stage_flag(STAGEFLAG_BOMB_PLANTED)
|
||||
hide_object(OBJ_BOND_BOMB)
|
||||
|
|
@ -1678,7 +1678,7 @@ u8 func1007_bomb_logic[] = {
|
|||
set_countdown_timer(0)
|
||||
stop_countdown_timer
|
||||
set_stage_flag(STAGEFLAG_BOMB_EXPIRED)
|
||||
message(CHR_BOND, L_WAX(23)) // "Skedar bomb has detonated."
|
||||
show_hudmsg(CHR_BOND, L_WAX(23)) // "Skedar bomb has detonated."
|
||||
|
||||
// Wait 2 seconds
|
||||
restart_timer
|
||||
|
|
@ -1741,7 +1741,7 @@ u8 func1008_check_bomb_unplantable[] = {
|
|||
|
||||
// Fail mission
|
||||
label(0x2c)
|
||||
message(CHR_BOND, L_WAX(24)) // "Lift doors locked - bomb cannot be placed."
|
||||
show_hudmsg(CHR_BOND, L_WAX(24)) // "Lift doors locked - bomb cannot be placed."
|
||||
set_stage_flag(STAGEFLAG_BOMB_UNPLANTABLE)
|
||||
|
||||
// Difficulty is agent or bomb has been planted - return
|
||||
|
|
|
|||
|
|
@ -1584,7 +1584,7 @@ glabel var7f1ada9c
|
|||
/* f0d07e0: 0c004dad */ jal sprintf
|
||||
/* f0d07e4: 00403825 */ or $a3,$v0,$zero
|
||||
/* f0d07e8: 27a4006c */ addiu $a0,$sp,0x6c
|
||||
/* f0d07ec: 0fc377c7 */ jal currentPlayerQueueMessage
|
||||
/* f0d07ec: 0fc377c7 */ jal hudmsgCreateViaPreset
|
||||
/* f0d07f0: 00002825 */ or $a1,$zero,$zero
|
||||
/* f0d07f4: 10000033 */ beqz $zero,.L0f0d08c4
|
||||
/* f0d07f8: afa000a0 */ sw $zero,0xa0($sp)
|
||||
|
|
|
|||
|
|
@ -4733,7 +4733,7 @@ glabel aiDuplicateChr
|
|||
/**
|
||||
* @cmd 00cb
|
||||
*/
|
||||
bool aiMessage(void)
|
||||
bool aiShowHudmsg(void)
|
||||
{
|
||||
u8 *cmd = g_Vars.ailist + g_Vars.aioffset;
|
||||
char *text = langGet(cmd[4] | (cmd[3] << 8));
|
||||
|
|
@ -4747,7 +4747,7 @@ bool aiMessage(void)
|
|||
}
|
||||
|
||||
setCurrentPlayerNum(playernum);
|
||||
currentPlayerQueueMessage(text, 0);
|
||||
hudmsgCreateViaPreset(text, 0);
|
||||
setCurrentPlayerNum(prevplayernum);
|
||||
|
||||
g_Vars.aioffset += 5;
|
||||
|
|
@ -4758,21 +4758,18 @@ bool aiMessage(void)
|
|||
/**
|
||||
* @cmd 01a4
|
||||
*/
|
||||
bool aiShowText(void)
|
||||
bool aiShowHudmsgMiddle(void)
|
||||
{
|
||||
u8 *cmd = g_Vars.ailist + g_Vars.aioffset;
|
||||
|
||||
// cmd[2] = prop
|
||||
// cmd[3] = color
|
||||
|
||||
if (cmd[2] == 0) {
|
||||
u32 text_id = cmd[5] | (cmd[4] << 8);
|
||||
char *text = langGet(text_id);
|
||||
func0f0de034(text, 7, cmd[3]);
|
||||
hudmsgCreateViaPresetWithColour(text, 7, cmd[3]);
|
||||
} else if (cmd[2] == 1) {
|
||||
u32 text_id = cmd[5] | (cmd[4] << 8);
|
||||
char *text = langGet(text_id);
|
||||
func0f0de034(text, 8, cmd[3]);
|
||||
hudmsgCreateViaPresetWithColour(text, 8, cmd[3]);
|
||||
} else {
|
||||
hudmsgRemoveAll();
|
||||
}
|
||||
|
|
@ -4785,7 +4782,7 @@ bool aiShowText(void)
|
|||
/**
|
||||
* @cmd 00cc
|
||||
*/
|
||||
bool aiShowText2(void)
|
||||
bool aiShowHudmsgTopMiddle(void)
|
||||
{
|
||||
u8 *cmd = g_Vars.ailist + g_Vars.aioffset;
|
||||
char *text = langGet(cmd[4] | (cmd[3] << 8));
|
||||
|
|
@ -4799,7 +4796,7 @@ bool aiShowText2(void)
|
|||
}
|
||||
|
||||
setCurrentPlayerNum(playernum);
|
||||
func0f0de034(text, 6, cmd[5]);
|
||||
hudmsgCreateViaPresetWithColour(text, 6, cmd[5]);
|
||||
setCurrentPlayerNum(prevplayernum);
|
||||
|
||||
g_Vars.aioffset += 6;
|
||||
|
|
@ -7941,7 +7938,7 @@ glabel aiSayQuip
|
|||
/* f05a8a0: 8fa40080 */ lw $a0,0x80($sp)
|
||||
/* f05a8a4: 8fae009c */ lw $t6,0x9c($sp)
|
||||
/* f05a8a8: 24050006 */ addiu $a1,$zero,0x6
|
||||
/* f05a8ac: 0fc3780d */ jal func0f0de034
|
||||
/* f05a8ac: 0fc3780d */ jal hudmsgCreateViaPresetWithColour
|
||||
/* f05a8b0: 91c60009 */ lbu $a2,0x9($t6)
|
||||
/* f05a8b4: 100000be */ beqz $zero,.L0f05abb0
|
||||
/* f05a8b8: 00000000 */ sll $zero,$zero,0x0
|
||||
|
|
@ -7964,7 +7961,7 @@ glabel aiSayQuip
|
|||
/* f05a8f8: 8fa40080 */ lw $a0,0x80($sp)
|
||||
/* f05a8fc: 8fac009c */ lw $t4,0x9c($sp)
|
||||
/* f05a900: 24050006 */ addiu $a1,$zero,0x6
|
||||
/* f05a904: 0fc3780d */ jal func0f0de034
|
||||
/* f05a904: 0fc3780d */ jal hudmsgCreateViaPresetWithColour
|
||||
/* f05a908: 91860009 */ lbu $a2,0x9($t4)
|
||||
/* f05a90c: 100000a8 */ beqz $zero,.L0f05abb0
|
||||
/* f05a910: 00000000 */ sll $zero,$zero,0x0
|
||||
|
|
@ -8132,7 +8129,7 @@ glabel aiSayQuip
|
|||
/* f05ab6c: 8fa40080 */ lw $a0,0x80($sp)
|
||||
/* f05ab70: 8fab009c */ lw $t3,0x9c($sp)
|
||||
/* f05ab74: 24050006 */ addiu $a1,$zero,0x6
|
||||
/* f05ab78: 0fc3780d */ jal func0f0de034
|
||||
/* f05ab78: 0fc3780d */ jal hudmsgCreateViaPresetWithColour
|
||||
/* f05ab7c: 91660009 */ lbu $a2,0x9($t3)
|
||||
/* f05ab80: 1000000b */ beqz $zero,.L0f05abb0
|
||||
/* f05ab84: 00000000 */ sll $zero,$zero,0x0
|
||||
|
|
@ -8339,14 +8336,14 @@ glabel aiSayQuip
|
|||
//
|
||||
// if (!audioIsFiltered(audioid)) {
|
||||
// // 8ac
|
||||
// func0f0de034(text, 6, cmd[9]);
|
||||
// hudmsgCreateViaPresetWithColour(text, 6, cmd[9]);
|
||||
// }
|
||||
// } else if (cmd[8]) {
|
||||
// text = langGet(g_QuipTexts[cmd[8] - 1][1 + g_Vars.chrdata->tude]);
|
||||
//
|
||||
// if (!audioIsFiltered(audioid)) {
|
||||
// // 904
|
||||
// func0f0de034(text, 6, cmd[9]);
|
||||
// hudmsgCreateViaPresetWithColour(text, 6, cmd[9]);
|
||||
// }
|
||||
// }
|
||||
// } else {
|
||||
|
|
@ -8398,7 +8395,7 @@ glabel aiSayQuip
|
|||
//
|
||||
// if (!audioIsFiltered(audioid)) {
|
||||
// // b78
|
||||
// func0f0de034(text, 6, cmd[9]);
|
||||
// hudmsgCreateViaPresetWithColour(text, 6, cmd[9]);
|
||||
// }
|
||||
// }
|
||||
// } else {
|
||||
|
|
|
|||
|
|
@ -3561,7 +3561,7 @@ u8 func0016_show_objective_failed_msg[] = {
|
|||
|
||||
// Show message first time
|
||||
label(0x13)
|
||||
message(CHR_BOND, L_MISC(69)) // "OBJECTIVES FAILED - abort mission."
|
||||
show_hudmsg(CHR_BOND, L_MISC(69)) // "OBJECTIVES FAILED - abort mission."
|
||||
|
||||
// Wait 60 seconds
|
||||
restart_timer
|
||||
|
|
@ -3581,7 +3581,7 @@ u8 func0016_show_objective_failed_msg[] = {
|
|||
|
||||
// Show message second time
|
||||
label(0x13)
|
||||
message(CHR_BOND, L_MISC(69)) // "OBJECTIVES FAILED - abort mission."
|
||||
show_hudmsg(CHR_BOND, L_MISC(69)) // "OBJECTIVES FAILED - abort mission."
|
||||
restart_timer
|
||||
|
||||
// Wait 2 minutes
|
||||
|
|
@ -3600,7 +3600,7 @@ u8 func0016_show_objective_failed_msg[] = {
|
|||
|
||||
// Show message third time
|
||||
label(0x13)
|
||||
message(CHR_BOND, L_MISC(69)) // "OBJECTIVES FAILED - abort mission."
|
||||
show_hudmsg(CHR_BOND, L_MISC(69)) // "OBJECTIVES FAILED - abort mission."
|
||||
restart_timer
|
||||
|
||||
// Wait 5 minutes
|
||||
|
|
|
|||
|
|
@ -226,8 +226,8 @@ bool (*g_CommandPointers[])(void) = {
|
|||
/*0x00c8*/ aiTryEquipWeapon,
|
||||
/*0x00c9*/ aiTryEquipHat,
|
||||
/*0x00ca*/ aiDuplicateChr,
|
||||
/*0x00cb*/ aiMessage,
|
||||
/*0x00cc*/ aiShowText2,
|
||||
/*0x00cb*/ aiShowHudmsg,
|
||||
/*0x00cc*/ aiShowHudmsgTopMiddle,
|
||||
/*0x00cd*/ aiSpeak,
|
||||
/*0x00ce*/ aiPlaySound,
|
||||
/*0x00cf*/ ai00cf,
|
||||
|
|
@ -443,7 +443,7 @@ bool (*g_CommandPointers[])(void) = {
|
|||
/*0x01a1*/ aiSetRoomToSearch,
|
||||
/*0x01a2*/ aiSayCiStaffQuip,
|
||||
/*0x01a3*/ aiDoPresetAnimation,
|
||||
/*0x01a4*/ aiShowText,
|
||||
/*0x01a4*/ aiShowHudmsgMiddle,
|
||||
/*0x01a5*/ ai01a5,
|
||||
/*0x01a6*/ aiIfTargetYDifferenceLessThan,
|
||||
/*0x01a7*/ aiIfChrPropsoundcountZero,
|
||||
|
|
|
|||
|
|
@ -182,7 +182,7 @@ glabel func0f0b05a4
|
|||
/* f0b0610: 0c004dad */ jal sprintf
|
||||
/* f0b0614: 8d47001c */ lw $a3,0x1c($t2)
|
||||
/* f0b0618: 27a40038 */ addiu $a0,$sp,0x38
|
||||
/* f0b061c: 0fc377c7 */ jal currentPlayerQueueMessage
|
||||
/* f0b061c: 0fc377c7 */ jal hudmsgCreateViaPreset
|
||||
/* f0b0620: 00002825 */ or $a1,$zero,$zero
|
||||
/* f0b0624: 3c08800a */ lui $t0,%hi(g_Vars)
|
||||
/* f0b0628: 25089fc0 */ addiu $t0,$t0,%lo(g_Vars)
|
||||
|
|
@ -318,7 +318,7 @@ glabel func0f0b0764
|
|||
/* f0b07f8: 8fa60028 */ lw $a2,0x28($sp)
|
||||
/* f0b07fc: 27a40030 */ addiu $a0,$sp,0x30
|
||||
.L0f0b0800:
|
||||
/* f0b0800: 0fc377c7 */ jal currentPlayerQueueMessage
|
||||
/* f0b0800: 0fc377c7 */ jal hudmsgCreateViaPreset
|
||||
/* f0b0804: 00002825 */ or $a1,$zero,$zero
|
||||
/* f0b0808: 8fbf001c */ lw $ra,0x1c($sp)
|
||||
.L0f0b080c:
|
||||
|
|
@ -378,7 +378,7 @@ glabel func0f0b0818
|
|||
/* f0b08c8: 0c004dad */ jal sprintf
|
||||
/* f0b08cc: 00403025 */ or $a2,$v0,$zero
|
||||
/* f0b08d0: 27a40040 */ addiu $a0,$sp,0x40
|
||||
/* f0b08d4: 0fc377c7 */ jal currentPlayerQueueMessage
|
||||
/* f0b08d4: 0fc377c7 */ jal hudmsgCreateViaPreset
|
||||
/* f0b08d8: 00002825 */ or $a1,$zero,$zero
|
||||
/* f0b08dc: 3c09800a */ lui $t1,%hi(g_Vars)
|
||||
/* f0b08e0: 25299fc0 */ addiu $t1,$t1,%lo(g_Vars)
|
||||
|
|
@ -675,7 +675,7 @@ glabel func0f0b09f4
|
|||
/* f0b0cf8: 0c004dad */ jal sprintf
|
||||
/* f0b0cfc: 00403025 */ or $a2,$v0,$zero
|
||||
/* f0b0d00: 27a4003c */ addiu $a0,$sp,0x3c
|
||||
/* f0b0d04: 0fc377c7 */ jal currentPlayerQueueMessage
|
||||
/* f0b0d04: 0fc377c7 */ jal hudmsgCreateViaPreset
|
||||
/* f0b0d08: 00002825 */ or $a1,$zero,$zero
|
||||
.L0f0b0d0c:
|
||||
/* f0b0d0c: 0fc2c1d9 */ jal func0f0b0764
|
||||
|
|
@ -758,7 +758,7 @@ glabel func0f0b09f4
|
|||
/* f0b0e1c: 0c004dad */ jal sprintf
|
||||
/* f0b0e20: 00403025 */ or $a2,$v0,$zero
|
||||
/* f0b0e24: 27a4003c */ addiu $a0,$sp,0x3c
|
||||
/* f0b0e28: 0fc377c7 */ jal currentPlayerQueueMessage
|
||||
/* f0b0e28: 0fc377c7 */ jal hudmsgCreateViaPreset
|
||||
/* f0b0e2c: 00002825 */ or $a1,$zero,$zero
|
||||
.L0f0b0e30:
|
||||
/* f0b0e30: 0fc2c169 */ jal func0f0b05a4
|
||||
|
|
|
|||
|
|
@ -1270,9 +1270,9 @@ glabel func0f0ddeac
|
|||
/* f0ddf18: 00601025 */ or $v0,$v1,$zero
|
||||
);
|
||||
|
||||
void currentPlayerQueueMessage(char *text, s32 confignum)
|
||||
void hudmsgCreateViaPreset(char *text, s32 confignum)
|
||||
{
|
||||
func0f0deebc(text, confignum,
|
||||
hudmsgCreate(text, confignum,
|
||||
g_HudMessageConfigs[confignum].unk00,
|
||||
g_HudMessageConfigs[confignum].unk01,
|
||||
g_HudMessageConfigs[confignum].unk02,
|
||||
|
|
@ -1289,7 +1289,7 @@ void currentPlayerQueueMessage(char *text, s32 confignum)
|
|||
|
||||
void func0f0ddfa4(char *text, s32 confignum, s32 arg2)
|
||||
{
|
||||
func0f0deebc(text, confignum,
|
||||
hudmsgCreate(text, confignum,
|
||||
g_HudMessageConfigs[confignum].unk00,
|
||||
g_HudMessageConfigs[confignum].unk01,
|
||||
g_HudMessageConfigs[confignum].unk02,
|
||||
|
|
@ -1304,11 +1304,11 @@ void func0f0ddfa4(char *text, s32 confignum, s32 arg2)
|
|||
-1, arg2);
|
||||
}
|
||||
|
||||
void func0f0de034(char *text, s32 confignum, u8 colournum)
|
||||
void hudmsgCreateViaPresetWithColour(char *text, s32 confignum, u8 colournum)
|
||||
{
|
||||
g_HudMessageConfigs[confignum].colour = g_Colours[colournum];
|
||||
|
||||
func0f0deebc(text, confignum,
|
||||
hudmsgCreate(text, confignum,
|
||||
g_HudMessageConfigs[confignum].unk00,
|
||||
g_HudMessageConfigs[confignum].unk01,
|
||||
g_HudMessageConfigs[confignum].unk02,
|
||||
|
|
@ -1323,9 +1323,9 @@ void func0f0de034(char *text, s32 confignum, u8 colournum)
|
|||
-1, 0);
|
||||
}
|
||||
|
||||
void func0f0de0d4(char *text, s32 confignum, struct hudmessageconfig *config, s32 arg3)
|
||||
void hudmsgCreateViaStruct(char *text, s32 confignum, struct hudmessageconfig *config, s32 arg3)
|
||||
{
|
||||
func0f0deebc(text, confignum,
|
||||
hudmsgCreate(text, confignum,
|
||||
config->unk00,
|
||||
config->unk01,
|
||||
config->unk02,
|
||||
|
|
@ -1656,7 +1656,7 @@ glabel func0f0de160
|
|||
/* f0de5c4: 02c02025 */ or $a0,$s6,$zero
|
||||
/* f0de5c8: 4600328d */ trunc.w.s $f10,$f6
|
||||
/* f0de5cc: 44075000 */ mfc1 $a3,$f10
|
||||
/* f0de5d0: 0fc37835 */ jal func0f0de0d4
|
||||
/* f0de5d0: 0fc37835 */ jal hudmsgCreateViaStruct
|
||||
/* f0de5d4: 00000000 */ sll $zero,$zero,0x0
|
||||
/* f0de5d8: 24090072 */ addiu $t1,$zero,0x72
|
||||
/* f0de5dc: 240a0052 */ addiu $t2,$zero,0x52
|
||||
|
|
@ -1682,7 +1682,7 @@ glabel func0f0de160
|
|||
/* f0de628: 8fa504c4 */ lw $a1,0x4c4($sp)
|
||||
/* f0de62c: 4600818d */ trunc.w.s $f6,$f16
|
||||
/* f0de630: 44073000 */ mfc1 $a3,$f6
|
||||
/* f0de634: 0fc37835 */ jal func0f0de0d4
|
||||
/* f0de634: 0fc37835 */ jal hudmsgCreateViaStruct
|
||||
/* f0de638: 00000000 */ sll $zero,$zero,0x0
|
||||
/* f0de63c: 24090072 */ addiu $t1,$zero,0x72
|
||||
/* f0de640: 240a0052 */ addiu $t2,$zero,0x52
|
||||
|
|
@ -1733,7 +1733,7 @@ glabel func0f0de160
|
|||
/* f0de6dc: 46049202 */ mul.s $f8,$f18,$f4
|
||||
/* f0de6e0: 4600440d */ trunc.w.s $f16,$f8
|
||||
/* f0de6e4: 44078000 */ mfc1 $a3,$f16
|
||||
/* f0de6e8: 0fc37835 */ jal func0f0de0d4
|
||||
/* f0de6e8: 0fc37835 */ jal hudmsgCreateViaStruct
|
||||
/* f0de6ec: 00000000 */ sll $zero,$zero,0x0
|
||||
/* f0de6f0: 1000001b */ beqz $zero,.L0f0de760
|
||||
/* f0de6f4: 8fbf006c */ lw $ra,0x6c($sp)
|
||||
|
|
@ -1762,7 +1762,7 @@ glabel func0f0de160
|
|||
/* f0de748: 860f0018 */ lh $t7,0x18($s0)
|
||||
/* f0de74c: afa00038 */ sw $zero,0x38($sp)
|
||||
/* f0de750: afb40034 */ sw $s4,0x34($sp)
|
||||
/* f0de754: 0fc37baf */ jal func0f0deebc
|
||||
/* f0de754: 0fc37baf */ jal hudmsgCreate
|
||||
/* f0de758: afaf0030 */ sw $t7,0x30($sp)
|
||||
.L0f0de75c:
|
||||
/* f0de75c: 8fbf006c */ lw $ra,0x6c($sp)
|
||||
|
|
@ -1800,7 +1800,7 @@ glabel func0f0de160
|
|||
/* f0de7d8: afaa0028 */ sw $t2,0x28($sp)
|
||||
/* f0de7dc: afab002c */ sw $t3,0x2c($sp)
|
||||
/* f0de7e0: afac0030 */ sw $t4,0x30($sp)
|
||||
/* f0de7e4: 0fc37baf */ jal func0f0deebc
|
||||
/* f0de7e4: 0fc37baf */ jal hudmsgCreate
|
||||
/* f0de7e8: afad0034 */ sw $t5,0x34($sp)
|
||||
/* f0de7ec: 8fbf0044 */ lw $ra,0x44($sp)
|
||||
/* f0de7f0: 27bd0048 */ addiu $sp,$sp,0x48
|
||||
|
|
@ -2320,7 +2320,7 @@ glabel var7f1adec0
|
|||
);
|
||||
|
||||
GLOBAL_ASM(
|
||||
glabel func0f0deebc
|
||||
glabel hudmsgCreate
|
||||
/* f0deebc: 27bdfe08 */ addiu $sp,$sp,-504
|
||||
/* f0deec0: afb10024 */ sw $s1,0x24($sp)
|
||||
/* f0deec4: 24110006 */ addiu $s1,$zero,0x6
|
||||
|
|
|
|||
|
|
@ -5036,7 +5036,7 @@ glabel func0f16b96c
|
|||
/* f16c4b0: 0fc5b9f1 */ jal langGet
|
||||
/* f16c4b4: 24045844 */ addiu $a0,$zero,0x5844
|
||||
/* f16c4b8: 00402025 */ or $a0,$v0,$zero
|
||||
/* f16c4bc: 0fc377c7 */ jal currentPlayerQueueMessage
|
||||
/* f16c4bc: 0fc377c7 */ jal hudmsgCreateViaPreset
|
||||
/* f16c4c0: 00002825 */ or $a1,$zero,$zero
|
||||
/* f16c4c4: 8e99006c */ lw $t9,0x6c($s4)
|
||||
/* f16c4c8: 26100001 */ addiu $s0,$s0,0x1
|
||||
|
|
@ -5697,7 +5697,7 @@ glabel func0f16b96c
|
|||
// s32 i;
|
||||
// for (i = 0; i < PLAYERCOUNT(); i++) {
|
||||
// setCurrentPlayerNum(i);
|
||||
// currentPlayerQueueMessage(langGet(L_MISC(68)), 0); // "One minute left."
|
||||
// hudmsgCreateViaPreset(langGet(L_MISC(68)), 0); // "One minute left."
|
||||
// }
|
||||
// }
|
||||
//
|
||||
|
|
|
|||
|
|
@ -1674,7 +1674,7 @@ glabel func0f19df58
|
|||
/* f19e008: 0fc677c6 */ jal func0f19df18
|
||||
/* f19e00c: 90c40001 */ lbu $a0,0x1($a2)
|
||||
/* f19e010: 00402025 */ or $a0,$v0,$zero
|
||||
/* f19e014: 0fc377c7 */ jal currentPlayerQueueMessage
|
||||
/* f19e014: 0fc377c7 */ jal hudmsgCreateViaPreset
|
||||
/* f19e018: 2405000a */ addiu $a1,$zero,0xa
|
||||
/* f19e01c: 3c07800b */ lui $a3,%hi(var800acd20)
|
||||
/* f19e020: 24e7cd20 */ addiu $a3,$a3,%lo(var800acd20)
|
||||
|
|
|
|||
|
|
@ -1804,7 +1804,7 @@
|
|||
*
|
||||
* The chr argument should be a player.
|
||||
*/
|
||||
#define message(chr, text) \
|
||||
#define show_hudmsg(chr, text) \
|
||||
mkshort(0x00cb), \
|
||||
chr, \
|
||||
mkshort(text),
|
||||
|
|
@ -1815,7 +1815,7 @@
|
|||
* The chr argument should be a player.
|
||||
* The color argument should be a COLOR constant.
|
||||
*/
|
||||
#define display_text_top_middle(chr, text, color) \
|
||||
#define show_hudmsg_top_middle(chr, text, color) \
|
||||
mkshort(0x00cc), \
|
||||
chr, \
|
||||
mkshort(text), \
|
||||
|
|
@ -3451,9 +3451,18 @@
|
|||
mkshort(0x01a3), \
|
||||
value,
|
||||
|
||||
#define display_text(prop, color, text) \
|
||||
/**
|
||||
* Show or remove a HUD message.
|
||||
*
|
||||
* If operation is 0, show it in the top middle with infinite duration.
|
||||
* If operation is 1, show it in the bottom middle with a long duration.
|
||||
* If operation is 2, remove all HUD messages.
|
||||
*
|
||||
* For removing HUD messages, consider using remove_hudmsgs instead.
|
||||
*/
|
||||
#define show_hudmsg_middle(operation, color, text) \
|
||||
mkshort(0x01a4), \
|
||||
prop, \
|
||||
operation, \
|
||||
color, \
|
||||
mkshort(text),
|
||||
|
||||
|
|
@ -3981,7 +3990,7 @@
|
|||
|
||||
#define reloop(id) goto_first(id)
|
||||
|
||||
#define remove_displayed_text display_text(0x02, 0, 0x0002)
|
||||
#define remove_hudmsgs show_hudmsg_middle(0x02, 0, 0x0002)
|
||||
|
||||
#define if_stage_is_not(stage, label) if_stage_lt(stage, label) if_stage_gt(stage, label)
|
||||
|
||||
|
|
|
|||
|
|
@ -205,8 +205,8 @@
|
|||
/*0x00c8*/ bool aiTryEquipWeapon(void);
|
||||
/*0x00c9*/ bool aiTryEquipHat(void);
|
||||
/*0x00ca*/ bool aiDuplicateChr(void);
|
||||
/*0x00cb*/ bool aiMessage(void);
|
||||
/*0x00cc*/ bool aiShowText2(void);
|
||||
/*0x00cb*/ bool aiShowHudmsg(void);
|
||||
/*0x00cc*/ bool aiShowHudmsgTopMiddle(void);
|
||||
/*0x00cd*/ bool aiSpeak(void);
|
||||
/*0x00ce*/ bool aiPlaySound(void);
|
||||
/*0x00cf*/ bool ai00cf(void);
|
||||
|
|
@ -387,7 +387,7 @@
|
|||
/*0x01a1*/ bool aiSetRoomToSearch(void);
|
||||
/*0x01a2*/ bool aiSayCiStaffQuip(void);
|
||||
/*0x01a3*/ bool aiDoPresetAnimation(void);
|
||||
/*0x01a4*/ bool aiShowText(void);
|
||||
/*0x01a4*/ bool aiShowHudmsgMiddle(void);
|
||||
/*0x01a5*/ bool ai01a5(void);
|
||||
/*0x01a6*/ bool aiIfTargetYDifferenceLessThan(void);
|
||||
/*0x01a7*/ bool aiIfChrPropsoundcountZero(void);
|
||||
|
|
|
|||
|
|
@ -13,13 +13,13 @@ u32 func0f0ddd44(void);
|
|||
void func0f0ddda0(void);
|
||||
void hudmsgRemoveAll(void);
|
||||
u32 func0f0ddeac(void);
|
||||
void currentPlayerQueueMessage(char *text, s32 confignum);
|
||||
void hudmsgCreateViaPreset(char *text, s32 confignum);
|
||||
void func0f0ddfa4(char *text, s32 confignum, s32 arg2);
|
||||
void func0f0de034(char *text, s32 confignum, u8 colour);
|
||||
void func0f0de0d4(char *text, s32 confignum, struct hudmessageconfig *config, s32 arg3);
|
||||
void hudmsgCreateViaPresetWithColour(char *text, s32 confignum, u8 colour);
|
||||
void hudmsgCreateViaStruct(char *text, s32 confignum, struct hudmessageconfig *config, s32 arg3);
|
||||
u32 func0f0de160(void);
|
||||
u32 func0f0de7fc(void);
|
||||
u32 func0f0deebc(char *text, s32 confignum, u8 conf00, u8 conf01, u8 conf02,
|
||||
u32 hudmsgCreate(char *text, s32 confignum, u8 conf00, u8 conf01, u8 conf02,
|
||||
void *conf04, void *conf08, u32 colour, u32 conf10, u8 alignh, s16 conf16,
|
||||
u8 alignv, s16 conf18, s32 arg14, s32 arg15);
|
||||
void func0f0df364(void);
|
||||
|
|
|
|||
Loading…
Reference in New Issue