mirror of
https://gitlab.com/ryandwyer/perfect-dark
synced 2026-08-02 16:26:26 -04:00
Rename object flag prefixes so they correspond to their property name
This commit is contained in:
+86
-86
@@ -1735,7 +1735,7 @@ u8 func0414_programmer[] = {
|
||||
restart_timer
|
||||
set_stage_flag(STAGEFLAG_PROGRAMMER_RAN_TO_GUARD)
|
||||
try_set_chrpreset_to_unalerted_teammate(0, /*goto*/ LABEL_RUN_TO_GUARD)
|
||||
unset_object_flag_bank1(OBJ_LAPTOPGUNDOOR, OBJECTFLAG1_20000000)
|
||||
unset_object_flag2(OBJ_LAPTOPGUNDOOR, OBJFLAG2_20000000)
|
||||
jog_to_pad(0x0086)
|
||||
|
||||
beginloop(0x97)
|
||||
@@ -2295,8 +2295,8 @@ u8 func1008_doorswitch[] = {
|
||||
// A and SA
|
||||
unlock_door(OBJ_OFFICEDOOR1, 0x01)
|
||||
unlock_door(OBJ_OFFICEDOOR2, 0x01)
|
||||
unset_object_flag_bank1(OBJ_OFFICEDOOR1, OBJECTFLAG1_20000000)
|
||||
unset_object_flag_bank1(OBJ_OFFICEDOOR2, OBJECTFLAG1_20000000)
|
||||
unset_object_flag2(OBJ_OFFICEDOOR1, OBJFLAG2_20000000)
|
||||
unset_object_flag2(OBJ_OFFICEDOOR2, OBJFLAG2_20000000)
|
||||
set_stage_flag(STAGEFLAG_OFFICE_DOOR_UNLOCKED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
@@ -2313,8 +2313,8 @@ u8 func1008_doorswitch[] = {
|
||||
set_stage_flag(STAGEFLAG_OFFICE_DOOR_UNLOCKED)
|
||||
unlock_door(OBJ_OFFICEDOOR1, 0x01)
|
||||
unlock_door(OBJ_OFFICEDOOR2, 0x01)
|
||||
unset_object_flag_bank1(OBJ_OFFICEDOOR1, OBJECTFLAG1_20000000)
|
||||
unset_object_flag_bank1(OBJ_OFFICEDOOR2, OBJECTFLAG1_20000000)
|
||||
unset_object_flag2(OBJ_OFFICEDOOR1, OBJFLAG2_20000000)
|
||||
unset_object_flag2(OBJ_OFFICEDOOR2, OBJFLAG2_20000000)
|
||||
yield
|
||||
restart_timer
|
||||
|
||||
@@ -2500,22 +2500,22 @@ u8 func041b_intro_041b[] = {
|
||||
set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
show_object(OBJ_JUMPSHIP2)
|
||||
set_object_flag_bank2(OBJ_JUMPSHIP2, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_JUMPSHIP2, OBJFLAG3_00000010)
|
||||
object_do_animation(0x00ca, OBJ_JUMPSHIP2, 0x04ff, 0xff)
|
||||
show_object(OBJ_POLICECAR)
|
||||
set_object_flag_bank2(OBJ_POLICECAR, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_POLICECAR, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0122, OBJ_POLICECAR, 0x04ff, 0xff)
|
||||
show_object(OBJ_HOVERCOP3)
|
||||
set_object_flag_bank2(OBJ_HOVERCOP3, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HOVERCOP3, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0123, OBJ_HOVERCOP3, 0x04ff, 0xff)
|
||||
show_object(OBJ_HOVERCAR3)
|
||||
set_object_flag_bank2(OBJ_HOVERCAR3, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HOVERCAR3, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0124, OBJ_HOVERCAR3, 0x04ff, 0xff)
|
||||
show_object(OBJ_HOVERMOTO3)
|
||||
set_object_flag_bank2(OBJ_HOVERMOTO3, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HOVERMOTO3, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0125, OBJ_HOVERMOTO3, 0x04ff, 0xff)
|
||||
show_object(OBJ_HOVERCAB3)
|
||||
set_object_flag_bank2(OBJ_HOVERCAB3, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HOVERCAB3, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0126, OBJ_HOVERCAB3, 0x04ff, 0xff)
|
||||
fade_to_color(0x000000ff, 0)
|
||||
fade_to_color(0x00000000, 90)
|
||||
@@ -2547,25 +2547,25 @@ u8 func041a_intro_041a[] = {
|
||||
set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
show_object(OBJ_JUMPSHIP2)
|
||||
set_object_flag_bank2(OBJ_JUMPSHIP2, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_JUMPSHIP2, OBJFLAG3_00000010)
|
||||
object_do_animation(0x00c8, OBJ_JUMPSHIP2, 0x04ff, 0xff)
|
||||
show_object(OBJ_HOVERTAXI2)
|
||||
set_object_flag_bank2(OBJ_HOVERTAXI2, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HOVERTAXI2, OBJFLAG3_00000010)
|
||||
object_do_animation(0x011c, OBJ_HOVERTAXI2, 0x04ff, 0xff)
|
||||
show_object(OBJ_HOVERCOP3)
|
||||
set_object_flag_bank2(OBJ_HOVERCOP3, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HOVERCOP3, OBJFLAG3_00000010)
|
||||
object_do_animation(0x011d, OBJ_HOVERCOP3, 0x04ff, 0xff)
|
||||
show_object(OBJ_HOVERCAR3)
|
||||
set_object_flag_bank2(OBJ_HOVERCAR3, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HOVERCAR3, OBJFLAG3_00000010)
|
||||
object_do_animation(0x011e, OBJ_HOVERCAR3, 0x04ff, 0xff)
|
||||
show_object(OBJ_HOVERMOTO3)
|
||||
set_object_flag_bank2(OBJ_HOVERMOTO3, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HOVERMOTO3, OBJFLAG3_00000010)
|
||||
object_do_animation(0x011f, OBJ_HOVERMOTO3, 0x04ff, 0xff)
|
||||
show_object(OBJ_HOVERCAB3)
|
||||
set_object_flag_bank2(OBJ_HOVERCAB3, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HOVERCAB3, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0120, OBJ_HOVERCAB3, 0x04ff, 0xff)
|
||||
show_object(OBJ_HOVERTRUCK3)
|
||||
set_object_flag_bank2(OBJ_HOVERTRUCK3, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HOVERTRUCK3, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0121, OBJ_HOVERTRUCK3, 0x04ff, 0xff)
|
||||
|
||||
wait_for_camera_finished
|
||||
@@ -2593,16 +2593,16 @@ u8 func0419_intro_0419[] = {
|
||||
set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
show_object(OBJ_JUMPSHIP2)
|
||||
set_object_flag_bank2(OBJ_JUMPSHIP2, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_JUMPSHIP2, OBJFLAG3_00000010)
|
||||
object_do_animation(0x00c6, OBJ_JUMPSHIP2, 0x04ff, 0xff)
|
||||
show_object(OBJ_HOVERTAXI1)
|
||||
set_object_flag_bank2(OBJ_HOVERTAXI1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HOVERTAXI1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0119, OBJ_HOVERTAXI1, 0x04ff, 0xff)
|
||||
show_object(OBJ_HOVERCOP3)
|
||||
set_object_flag_bank2(OBJ_HOVERCOP3, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HOVERCOP3, OBJFLAG3_00000010)
|
||||
object_do_animation(0x011a, OBJ_HOVERCOP3, 0x04ff, 0xff)
|
||||
show_object(OBJ_HOVERCAR3)
|
||||
set_object_flag_bank2(OBJ_HOVERCAR3, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HOVERCAR3, OBJFLAG3_00000010)
|
||||
object_do_animation(0x011b, OBJ_HOVERCAR3, 0x04ff, 0xff)
|
||||
|
||||
wait_for_camera_finished
|
||||
@@ -2627,25 +2627,25 @@ u8 func041c_intro_041c[] = {
|
||||
set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
show_object(OBJ_JUMPSHIP2)
|
||||
set_object_flag_bank2(OBJ_JUMPSHIP2, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_JUMPSHIP2, OBJFLAG3_00000010)
|
||||
object_do_animation(0x00cc, OBJ_JUMPSHIP2, 0x04ff, 0xff)
|
||||
show_object(OBJ_HOVERTAXI1)
|
||||
set_object_flag_bank2(OBJ_HOVERTAXI1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HOVERTAXI1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0127, OBJ_HOVERTAXI1, 0x04ff, 0xff)
|
||||
|
||||
// Invalid object
|
||||
show_object(0x1d)
|
||||
set_object_flag_bank2(0x1d, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(0x1d, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0128, 0x1d, 0x04ff, 0xff)
|
||||
|
||||
show_object(OBJ_HOVERCOP3)
|
||||
set_object_flag_bank2(OBJ_HOVERCOP3, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HOVERCOP3, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0129, OBJ_HOVERCOP3, 0x04ff, 0xff)
|
||||
show_object(OBJ_HOVERCAR3)
|
||||
set_object_flag_bank2(OBJ_HOVERCAR3, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HOVERCAR3, OBJFLAG3_00000010)
|
||||
object_do_animation(0x012a, OBJ_HOVERCAR3, 0x04ff, 0xff)
|
||||
show_object(OBJ_HOVERMOTO3)
|
||||
set_object_flag_bank2(OBJ_HOVERMOTO3, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HOVERMOTO3, OBJFLAG3_00000010)
|
||||
object_do_animation(0x012b, OBJ_HOVERMOTO3, 0x04ff, 0xff)
|
||||
|
||||
wait_for_camera_finished
|
||||
@@ -2675,13 +2675,13 @@ u8 func041d_intro_041d[] = {
|
||||
set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
show_object(OBJ_JUMPSHIP2)
|
||||
set_object_flag_bank2(OBJ_JUMPSHIP2, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_JUMPSHIP2, OBJFLAG3_00000010)
|
||||
object_do_animation(0x00ce, OBJ_JUMPSHIP2, 0x01ff, 0xff)
|
||||
show_object(OBJ_HOVERTAXI1)
|
||||
set_object_flag_bank2(OBJ_HOVERTAXI1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HOVERTAXI1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x012c, OBJ_HOVERTAXI1, 0x04ff, 0xff)
|
||||
show_object(0x1d)
|
||||
set_object_flag_bank2(0x1d, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(0x1d, OBJFLAG3_00000010)
|
||||
object_do_animation(0x012d, 0x1d, 0x04ff, 0xff)
|
||||
|
||||
wait_for_camera_finished
|
||||
@@ -2821,7 +2821,7 @@ u8 func0422_intro_0423[] = {
|
||||
set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
show_object(OBJ_JUMPSHIP1)
|
||||
set_object_flag_bank2(OBJ_JUMPSHIP1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x00ef, OBJ_JUMPSHIP1, 0x04ff, 0xff)
|
||||
set_tinted_glass_enabled(TRUE)
|
||||
|
||||
@@ -2845,7 +2845,7 @@ u8 func0422_intro_0424[] = {
|
||||
set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
show_object(OBJ_JUMPSHIP1)
|
||||
set_object_flag_bank2(OBJ_JUMPSHIP1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x00fd, OBJ_JUMPSHIP1, 0x04ff, 0xff)
|
||||
set_chr_chrflag(CHR_CASS, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_SECRETARY, CHRCFLAG_UNPLAYABLE)
|
||||
@@ -2874,7 +2874,7 @@ u8 func0422_intro_0425[] = {
|
||||
set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
show_object(OBJ_JUMPSHIP1)
|
||||
set_object_flag_bank2(OBJ_JUMPSHIP1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0100, OBJ_JUMPSHIP1, 0x04ff, 0xff)
|
||||
object_do_animation(0x0102, OBJ_BANNER1, 0x04ff, 0xff)
|
||||
object_do_animation(0x0117, OBJ_BANNER2, 0x04ff, 0xff)
|
||||
@@ -2900,13 +2900,13 @@ u8 func0422_intro_0426[] = {
|
||||
set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
show_object(OBJ_JUMPSHIP1)
|
||||
set_object_flag_bank2(OBJ_JUMPSHIP1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x012f, OBJ_JUMPSHIP1, 0x04ff, 0xff)
|
||||
show_object(OBJ_BANNER1)
|
||||
set_object_flag_bank2(OBJ_BANNER1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_BANNER1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0131, OBJ_BANNER1, 0x04ff, 0xff)
|
||||
show_object(OBJ_BANNER2)
|
||||
set_object_flag_bank2(OBJ_BANNER1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_BANNER1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0132, OBJ_BANNER2, 0x04ff, 0xff)
|
||||
|
||||
wait_for_camera_finished
|
||||
@@ -2930,16 +2930,16 @@ u8 func0422_intro_0427[] = {
|
||||
set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
show_object(OBJ_JUMPSHIP1)
|
||||
set_object_flag_bank2(OBJ_JUMPSHIP1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0134, OBJ_JUMPSHIP1, 0x04ff, 0xff)
|
||||
show_object(OBJ_ROPE)
|
||||
set_object_flag_bank2(OBJ_ROPE, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_ROPE, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0135, OBJ_ROPE, 0x04ff, 0xff)
|
||||
show_object(OBJ_BANNER1)
|
||||
set_object_flag_bank2(OBJ_BANNER1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_BANNER1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0136, OBJ_BANNER1, 0x04ff, 0xff)
|
||||
show_object(OBJ_BANNER2)
|
||||
set_object_flag_bank2(OBJ_BANNER1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_BANNER1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0137, OBJ_BANNER2, 0x04ff, 0xff)
|
||||
|
||||
wait_for_camera_finished
|
||||
@@ -2964,18 +2964,18 @@ u8 func0422_intro_0428[] = {
|
||||
set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
show_object(OBJ_JUMPSHIP1)
|
||||
set_object_flag_bank2(OBJ_JUMPSHIP1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0104, OBJ_JUMPSHIP1, 0x04ff, 0xff)
|
||||
set_object_flag_bank1(OBJ_HOVERCOP1, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(OBJ_HOVERCOP2, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(OBJ_HOVERCAR1, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(OBJ_HOVERCAR2, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(OBJ_HOVERMOTO1, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(OBJ_HOVERMOTO2, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(OBJ_HOVERTRUCK1, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(OBJ_HOVERTRUCK2, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(OBJ_HOVERCAB1, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(OBJ_HOVERCAB2, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag2(OBJ_HOVERCOP1, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(OBJ_HOVERCOP2, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(OBJ_HOVERCAR1, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(OBJ_HOVERCAR2, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(OBJ_HOVERMOTO1, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(OBJ_HOVERMOTO2, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(OBJ_HOVERTRUCK1, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(OBJ_HOVERTRUCK2, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(OBJ_HOVERCAB1, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(OBJ_HOVERCAB2, OBJFLAG2_INVISIBLE)
|
||||
|
||||
wait_for_camera_finished
|
||||
|
||||
@@ -2984,16 +2984,16 @@ u8 func0422_intro_0428[] = {
|
||||
unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
hide_object(OBJ_JUMPSHIP1)
|
||||
unset_object_flag_bank1(OBJ_HOVERCOP1, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank1(OBJ_HOVERCOP2, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank1(OBJ_HOVERCAR1, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank1(OBJ_HOVERCAR2, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank1(OBJ_HOVERMOTO1, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank1(OBJ_HOVERMOTO2, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank1(OBJ_HOVERTRUCK1, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank1(OBJ_HOVERTRUCK2, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank1(OBJ_HOVERCAB1, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank1(OBJ_HOVERCAB2, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(OBJ_HOVERCOP1, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag2(OBJ_HOVERCOP2, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag2(OBJ_HOVERCAR1, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag2(OBJ_HOVERCAR2, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag2(OBJ_HOVERMOTO1, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag2(OBJ_HOVERMOTO2, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag2(OBJ_HOVERTRUCK1, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag2(OBJ_HOVERTRUCK2, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag2(OBJ_HOVERCAB1, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag2(OBJ_HOVERCAB2, OBJFLAG2_INVISIBLE)
|
||||
label(0x36)
|
||||
set_ailist(CHR_SELF, AILIST_INTRO_0424)
|
||||
endlist
|
||||
@@ -3006,7 +3006,7 @@ u8 func0422_intro_0429[] = {
|
||||
set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
show_object(OBJ_JUMPSHIP1)
|
||||
set_object_flag_bank2(OBJ_JUMPSHIP1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0106, OBJ_JUMPSHIP1, 0x04ff, 0xff)
|
||||
set_tinted_glass_enabled(TRUE)
|
||||
|
||||
@@ -3029,14 +3029,14 @@ u8 func0422_intro_042a[] = {
|
||||
set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
show_object(OBJ_JUMPSHIP1)
|
||||
set_object_flag_bank2(OBJ_JUMPSHIP1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0108, OBJ_JUMPSHIP1, 0x04ff, 0xff)
|
||||
set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE)
|
||||
set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x0109, -1, -1, 0x06, 0x00, CHR_BOND, 4)
|
||||
set_chr_hud_visible(CHR_BOND, TRUE)
|
||||
show_object(OBJ_ROPE)
|
||||
set_object_flag_bank2(OBJ_ROPE, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_ROPE, OBJFLAG3_00000010)
|
||||
object_do_animation(0x010a, OBJ_ROPE, 0x04ff, 0xff)
|
||||
|
||||
wait_for_camera_finished
|
||||
@@ -3057,20 +3057,20 @@ u8 func0422_intro_042b[] = {
|
||||
set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
show_object(OBJ_JUMPSHIP1)
|
||||
set_object_flag_bank2(OBJ_JUMPSHIP1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_JUMPSHIP1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x010c, OBJ_JUMPSHIP1, 0x04ff, 0xff)
|
||||
set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE)
|
||||
set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x010d, -1, -1, 0x06, 0x00, CHR_BOND, 4)
|
||||
set_chr_hud_visible(CHR_BOND, TRUE)
|
||||
show_object(OBJ_ROPE)
|
||||
set_object_flag_bank2(OBJ_ROPE, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_ROPE, OBJFLAG3_00000010)
|
||||
object_do_animation(0x010e, OBJ_ROPE, 0x04ff, 0xff)
|
||||
show_object(OBJ_BANNER1)
|
||||
set_object_flag_bank2(OBJ_BANNER1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_BANNER1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x010f, OBJ_BANNER1, 0x04ff, 0xff)
|
||||
show_object(OBJ_BANNER2)
|
||||
set_object_flag_bank2(OBJ_BANNER1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_BANNER1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0118, OBJ_BANNER2, 0x04ff, 0xff)
|
||||
|
||||
wait_for_camera_finished
|
||||
@@ -3109,11 +3109,11 @@ u8 func0422_intro_042d[] = {
|
||||
label(0x36)
|
||||
show_object(OBJ_BANNER1)
|
||||
show_object(OBJ_BANNER2)
|
||||
set_object_flag_bank2(OBJ_BANNER1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_BANNER1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0161, OBJ_BANNER1, 0x08ff, 0xff)
|
||||
|
||||
// @bug: Copy/paste error - should be banner 2
|
||||
set_object_flag_bank2(OBJ_BANNER1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_BANNER1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0162, OBJ_BANNER2, 0x08ff, 0xff)
|
||||
unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
@@ -3613,12 +3613,12 @@ u8 func101d_disable_cameras[] = {
|
||||
endloop(0xc4)
|
||||
|
||||
label(0x2c)
|
||||
set_object_flag_bank0(OBJ_CAMERA1, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(OBJ_CAMERA2, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(OBJ_CAMERA3, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(OBJ_CAMERA4, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(OBJ_CAMERA5, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(OBJ_CAMERA6, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_CAMERA1, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(OBJ_CAMERA2, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(OBJ_CAMERA3, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(OBJ_CAMERA4, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(OBJ_CAMERA5, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(OBJ_CAMERA6, OBJFLAG_DEACTIVATED)
|
||||
set_stage_flag(STAGEFLAG_SECURITY_DISABLED)
|
||||
restart_timer
|
||||
|
||||
@@ -3636,37 +3636,37 @@ u8 func101d_disable_cameras[] = {
|
||||
if_object_in_good_condition(OBJ_CAMERA1, /*goto*/ 0x2c)
|
||||
goto_next(0x06)
|
||||
label(0x2c)
|
||||
unset_object_flag_bank0(OBJ_CAMERA1, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_CAMERA1, OBJFLAG_DEACTIVATED)
|
||||
|
||||
label(0x06)
|
||||
if_object_in_good_condition(OBJ_CAMERA2, /*goto*/ 0x2c)
|
||||
goto_next(0x06)
|
||||
label(0x2c)
|
||||
unset_object_flag_bank0(OBJ_CAMERA2, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_CAMERA2, OBJFLAG_DEACTIVATED)
|
||||
|
||||
label(0x06)
|
||||
if_object_in_good_condition(OBJ_CAMERA3, /*goto*/ 0x2c)
|
||||
goto_next(0x06)
|
||||
label(0x2c)
|
||||
unset_object_flag_bank0(OBJ_CAMERA3, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_CAMERA3, OBJFLAG_DEACTIVATED)
|
||||
|
||||
label(0x06)
|
||||
if_object_in_good_condition(OBJ_CAMERA4, /*goto*/ 0x2c)
|
||||
goto_next(0x06)
|
||||
label(0x2c)
|
||||
unset_object_flag_bank0(OBJ_CAMERA4, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_CAMERA4, OBJFLAG_DEACTIVATED)
|
||||
|
||||
label(0x06)
|
||||
if_object_in_good_condition(OBJ_CAMERA5, /*goto*/ 0x2c)
|
||||
goto_next(0x06)
|
||||
label(0x2c)
|
||||
unset_object_flag_bank0(OBJ_CAMERA5, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_CAMERA5, OBJFLAG_DEACTIVATED)
|
||||
|
||||
label(0x06)
|
||||
if_object_in_good_condition(OBJ_CAMERA6, /*goto*/ 0x2c)
|
||||
goto_next(0x06)
|
||||
label(0x2c)
|
||||
unset_object_flag_bank0(OBJ_CAMERA6, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_CAMERA6, OBJFLAG_DEACTIVATED)
|
||||
|
||||
label(0x06)
|
||||
message(CHR_BOND, 0x0261) // "Security system is now back online."
|
||||
@@ -3803,9 +3803,9 @@ u8 func042f_surrendering_guard[] = {
|
||||
|
||||
u8 func101f_setup_rtracker[] = {
|
||||
yield
|
||||
set_object_flag_bank2(OBJ_FALCONSIL1, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag_bank2(OBJ_FALCONSIL2, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag_bank2(OBJ_LAPTOPGUN, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_FALCONSIL1, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_FALCONSIL2, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_LAPTOPGUN, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
||||
+11
-11
@@ -1463,7 +1463,7 @@ u8 func1005_check_bodyguards_dead[] = {
|
||||
|
||||
set_stage_flag(STAGEFLAG_TOP_BODYGUARDS_DEAD)
|
||||
unlock_door(OBJ_TOPROOMDOOR, 0x02)
|
||||
unset_object_flag_bank1(OBJ_TOPROOMDOOR, OBJECTFLAG1_20000000)
|
||||
unset_object_flag2(OBJ_TOPROOMDOOR, OBJFLAG2_20000000)
|
||||
if_difficulty_lt(DIFF_SA, /*goto*/ 0x26)
|
||||
|
||||
if_alive_goto_00(0x16, 0x20)
|
||||
@@ -1584,7 +1584,7 @@ u8 func1009_init_top_room[] = {
|
||||
endloop(0x1f)
|
||||
|
||||
label(0x00)
|
||||
set_object_flag_bank0(OBJ_TOPROOMDOOR, OBJECTFLAG0_02000000)
|
||||
set_object_flag(OBJ_TOPROOMDOOR, OBJFLAG_02000000)
|
||||
set_chr_target_chr(CHR_CASS, CHR_P1P2)
|
||||
set_chr_target_chr(CHR_TOPGUARD1, CHR_P1P2)
|
||||
set_chr_target_chr(CHR_TOPGUARD2, CHR_P1P2)
|
||||
@@ -1959,7 +1959,7 @@ u8 func040d_cass[] = {
|
||||
endloop(0x25)
|
||||
|
||||
label(0x26)
|
||||
unset_object_flag_bank0(OBJ_TOPROOMDOOR, OBJECTFLAG0_02000000)
|
||||
unset_object_flag(OBJ_TOPROOMDOOR, OBJFLAG_02000000)
|
||||
grant_control(CHR_BOND)
|
||||
close_door(OBJ_TOPROOMDOOR)
|
||||
if_chr_in_room(CHR_BOND, 0x00, 0x0045, /*goto*/ 0x20)
|
||||
@@ -1975,7 +1975,7 @@ u8 func040d_cass[] = {
|
||||
goto_next(0x00)
|
||||
|
||||
label(0x89)
|
||||
unset_object_flag_bank0(OBJ_TOPROOMDOOR, OBJECTFLAG0_02000000)
|
||||
unset_object_flag(OBJ_TOPROOMDOOR, OBJFLAG_02000000)
|
||||
restart_timer
|
||||
|
||||
beginloop(0x8a)
|
||||
@@ -2108,7 +2108,7 @@ u8 func101f_unlock_top_door[] = {
|
||||
|
||||
label(0x20)
|
||||
unlock_door(OBJ_TOPROOMDOOR, 0x02)
|
||||
unset_object_flag_bank1(OBJ_TOPROOMDOOR, OBJECTFLAG1_20000000)
|
||||
unset_object_flag2(OBJ_TOPROOMDOOR, OBJFLAG2_20000000)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -2410,7 +2410,7 @@ u8 func0412_outro[] = {
|
||||
set_music_track(MUSIC_EXTRACTION_OUTRO)
|
||||
set_sfx_track(MUSIC_EXTRACTION_OUTRO_SFX)
|
||||
camera_movement(0x0157)
|
||||
set_object_flag_bank1(OBJ_HOVERCOPTER, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag2(OBJ_HOVERCOPTER, OBJFLAG2_INVISIBLE)
|
||||
hide_object(OBJ_HOVERCOPTER)
|
||||
set_ailist(CHR_P1P2, GAILIST_IDLE)
|
||||
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
@@ -2455,8 +2455,8 @@ u8 func0412_outro[] = {
|
||||
chr_do_animation(0x015c, -1, -1, 0x06, 0x00, CHR_OUTRO_GUARD2, 4)
|
||||
|
||||
show_object(OBJ_JUMPSHIP)
|
||||
set_object_flag_bank2(OBJ_JUMPSHIP, OBJECTFLAG2_00000010)
|
||||
set_object_flag_bank1(OBJ_JUMPSHIP, OBJECTFLAG1_04000000)
|
||||
set_object_flag3(OBJ_JUMPSHIP, OBJFLAG3_00000010)
|
||||
set_object_flag2(OBJ_JUMPSHIP, OBJFLAG2_04000000)
|
||||
object_do_animation(0x015e, OBJ_JUMPSHIP, 0x04ff, 0xff)
|
||||
set_ailist(CHR_P1P2, GAILIST_IDLE)
|
||||
set_chr_chrflag(CHR_P1P2, CHRCFLAG_UNPLAYABLE)
|
||||
@@ -2931,7 +2931,7 @@ u8 func101a_set_rocketlauncher_flag[] = {
|
||||
if_difficulty_lt(DIFF_SA, /*goto*/ 0x20)
|
||||
|
||||
// SA and PA
|
||||
set_object_flag_bank1(OBJ_ROCKETLAUNCHER, OBJECTFLAG1_20000000)
|
||||
set_object_flag2(OBJ_ROCKETLAUNCHER, OBJFLAG2_20000000)
|
||||
|
||||
label(0x20)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
@@ -3134,8 +3134,8 @@ u8 func141e_setup_lighting[] = {
|
||||
|
||||
u8 func101d_setup_rtracker[] = {
|
||||
yield
|
||||
set_object_flag_bank2(OBJ_GRENADE, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag_bank2(OBJ_DRAGON, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_GRENADE, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_DRAGON, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
||||
@@ -597,8 +597,8 @@ u8 func0402_outro[] = {
|
||||
chr_do_animation(0x01de, -1, -1, 0x06, 0x00, CHR_PRESIDENT_OUTRO, 4)
|
||||
|
||||
show_object(0x00)
|
||||
set_object_flag_bank1(OBJ_CRATE, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_CRATE, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_CRATE, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_CRATE, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01e0, OBJ_CRATE, 0x04ff, 0xff)
|
||||
restart_timer
|
||||
set_cutscene_weapon(CHR_TARGET, WEAPON_NONE, WEAPON_NONE)
|
||||
@@ -1916,7 +1916,7 @@ u8 func1012_give_medicalscanner[] = {
|
||||
|
||||
u8 func1013_setup_rtracker[] = {
|
||||
yield
|
||||
set_object_flag_bank2(OBJ_PROXYMINE, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_PROXYMINE, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -1933,7 +1933,7 @@ u8 func1016_hide_hoverbike[] = {
|
||||
u8 func1014_setup_skedar_shuttle[] = {
|
||||
yield
|
||||
show_object(OBJ_SKEDAR_SHUTTLE)
|
||||
set_object_flag_bank2(OBJ_SKEDAR_SHUTTLE, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_SKEDAR_SHUTTLE, OBJFLAG3_00000010)
|
||||
set_object_part_visible(OBJ_SKEDAR_SHUTTLE, FALSE)
|
||||
object_do_animation(0x0486, OBJ_SKEDAR_SHUTTLE, 0x01ff, 0xff)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
+59
-59
@@ -849,8 +849,8 @@ u8 func0425_outro[] = {
|
||||
chr_do_animation(0x031b, -1, -1, 0x06, 0x00, CHR_OUTRO_NSA, 4)
|
||||
|
||||
show_object(OBJ_PLANE)
|
||||
set_object_flag_bank1(OBJ_PLANE, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_PLANE, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_PLANE, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_PLANE, OBJFLAG3_00000010)
|
||||
object_do_animation(0x031c, OBJ_PLANE, 0x04ff, 0xff)
|
||||
|
||||
set_cutscene_weapon(CHR_P1P2, WEAPON_NONE, WEAPON_NONE)
|
||||
@@ -919,15 +919,15 @@ u8 func0402_init_stripes[] = {
|
||||
};
|
||||
|
||||
u8 func1004_guard_activation[] = {
|
||||
set_object_flag_bank0(0x29, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag_bank1(0x29, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank0(0x29, OBJECTFLAG0_00000100)
|
||||
set_object_flag_bank0(0x2a, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag_bank1(0x2a, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank0(0x2a, OBJECTFLAG0_00000100)
|
||||
set_object_flag_bank1(OBJ_REMOTEMINE, OBJECTFLAG1_00020000)
|
||||
set_object_flag_bank0(OBJ_REMOTEMINE, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag_bank1(OBJ_REMOTEMINE, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag(0x29, OBJFLAG_INVINCIBLE)
|
||||
set_object_flag2(0x29, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag(0x29, OBJFLAG_00000100)
|
||||
set_object_flag(0x2a, OBJFLAG_INVINCIBLE)
|
||||
set_object_flag2(0x2a, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag(0x2a, OBJFLAG_00000100)
|
||||
set_object_flag2(OBJ_REMOTEMINE, OBJFLAG2_00020000)
|
||||
set_object_flag(OBJ_REMOTEMINE, OBJFLAG_INVINCIBLE)
|
||||
set_object_flag2(OBJ_REMOTEMINE, OBJFLAG2_INVISIBLE)
|
||||
yield
|
||||
yield
|
||||
hide_chr(0x13)
|
||||
@@ -976,12 +976,12 @@ u8 func1004_guard_activation[] = {
|
||||
label(0x02)
|
||||
hide_object(0x27)
|
||||
hide_object(0x28)
|
||||
unset_object_flag_bank0(0x29, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank1(0x29, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank0(0x29, OBJECTFLAG0_00000100)
|
||||
unset_object_flag_bank0(0x2a, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank1(0x2a, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank0(0x2a, OBJECTFLAG0_00000100)
|
||||
unset_object_flag(0x29, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag2(0x29, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag(0x29, OBJFLAG_00000100)
|
||||
unset_object_flag(0x2a, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag2(0x2a, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag(0x2a, OBJFLAG_00000100)
|
||||
|
||||
#define remove_alaskan_guard(chr) \
|
||||
set_chr_flag_bankx(chr, CHRFLAG1_WARNED, BANK_1) \
|
||||
@@ -1077,8 +1077,8 @@ u8 func1004_guard_activation[] = {
|
||||
|
||||
set_ailist(0x10, AILIST_DRAW_MAGNUM)
|
||||
set_ailist(0x11, AILIST_DRAW_MAGNUM)
|
||||
unset_object_flag_bank0(0x2b, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank1(0x2b, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag(0x2b, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag2(0x2b, OBJFLAG2_INVISIBLE)
|
||||
|
||||
beginloop(0x6d)
|
||||
if_chr_y(CHR_P1P2, -2000, OPERATOR_LESS_THAN, /*goto*/ 0x02)
|
||||
@@ -1968,7 +1968,7 @@ u8 func1009_carousel_activation[] = {
|
||||
chr_draw_weapon_in_cutscene(CHR_P1P2, WEAPON_UNARMED)
|
||||
set_stage_flag(STAGEFLAG_SUITCASE_DEPOSITED)
|
||||
play_sound(0x80aa, CHANNEL_7)
|
||||
unset_object_flag_bank1(OBJ_BRIEFCASE2, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(OBJ_BRIEFCASE2, OBJFLAG2_INVISIBLE)
|
||||
move_object_to_pad(OBJ_BRIEFCASE2, 0x00de)
|
||||
yield
|
||||
restart_timer
|
||||
@@ -1979,7 +1979,7 @@ u8 func1009_carousel_activation[] = {
|
||||
|
||||
label(0x02)
|
||||
clear_inventory(CHR_BOND)
|
||||
unset_object_flag_bank0(OBJ_BAGGAGE_CARRIER, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_BAGGAGE_CARRIER, OBJFLAG_DEACTIVATED)
|
||||
open_door(0x23)
|
||||
restart_timer
|
||||
|
||||
@@ -1988,7 +1988,7 @@ u8 func1009_carousel_activation[] = {
|
||||
endloop(0x04)
|
||||
|
||||
label(0x02)
|
||||
set_object_flag_bank0(OBJ_BAGGAGE_CARRIER, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_BAGGAGE_CARRIER, OBJFLAG_DEACTIVATED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -2786,7 +2786,7 @@ u8 func0415_alaskan_mountainlift_guard[] = {
|
||||
};
|
||||
|
||||
u8 func1010_setup_baggage_carrier[] = {
|
||||
set_object_flag_bank0(OBJ_BAGGAGE_CARRIER, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_BAGGAGE_CARRIER, OBJFLAG_DEACTIVATED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -3486,8 +3486,8 @@ u8 func141b_setup_lifts[] = {
|
||||
};
|
||||
|
||||
u8 func1018_safe_switch[] = {
|
||||
set_object_flag_bank1(OBJ_FLIGHTPLANS, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank0(OBJ_SAFE_SWITCH_COVER, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag2(OBJ_FLIGHTPLANS, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag(OBJ_SAFE_SWITCH_COVER, OBJFLAG_DEACTIVATED)
|
||||
|
||||
// Wait for player to activate switch
|
||||
beginloop(0x00)
|
||||
@@ -3497,14 +3497,14 @@ u8 func1018_safe_switch[] = {
|
||||
|
||||
// Raise switch cover
|
||||
label(0x31)
|
||||
unset_object_flag_bank0(OBJ_SAFE_SWITCH_COVER, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_SAFE_SWITCH_COVER, OBJFLAG_DEACTIVATED)
|
||||
|
||||
beginloop(0x05)
|
||||
if_lift_stationary(OBJ_SAFE_SWITCH_COVER, /*goto*/ 0x31)
|
||||
endloop(0x05)
|
||||
|
||||
label(0x31)
|
||||
set_object_flag_bank0(OBJ_SAFE_SWITCH_COVER, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_SAFE_SWITCH_COVER, OBJFLAG_DEACTIVATED)
|
||||
|
||||
// Wait for player to press button again
|
||||
beginloop(0x06)
|
||||
@@ -3522,20 +3522,20 @@ u8 func1018_safe_switch[] = {
|
||||
yield
|
||||
open_door(OBJ_SAFEDOOR)
|
||||
yield
|
||||
set_object_flag_bank0(OBJ_SAFEDOOR, OBJECTFLAG0_40000000)
|
||||
set_object_flag(OBJ_SAFEDOOR, OBJFLAG_40000000)
|
||||
|
||||
unset_object_flag_bank1(OBJ_FLIGHTPLANS, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank0(OBJ_FLIGHTPLANS, OBJECTFLAG0_00100000)
|
||||
set_object_flag_bank0(OBJ_FLIGHTPLANS, OBJECTFLAG0_COLLECTABLE)
|
||||
set_object_flag_bank1(OBJ_FLIGHTPLANS, OBJECTFLAG1_00001000)
|
||||
unset_object_flag2(OBJ_FLIGHTPLANS, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag(OBJ_FLIGHTPLANS, OBJFLAG_00100000)
|
||||
set_object_flag(OBJ_FLIGHTPLANS, OBJFLAG_COLLECTABLE)
|
||||
set_object_flag2(OBJ_FLIGHTPLANS, OBJFLAG2_00001000)
|
||||
|
||||
// 0x32 = a shield
|
||||
set_object_flag_bank1(0x34, OBJECTFLAG1_00001000)
|
||||
unset_object_flag_bank0(0x34, OBJECTFLAG0_00100000)
|
||||
set_object_flag2(0x34, OBJFLAG2_00001000)
|
||||
unset_object_flag(0x34, OBJFLAG_00100000)
|
||||
|
||||
// 0x32 = invalid object
|
||||
unset_object_flag_bank1(0x32, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank0(0x32, OBJECTFLAG0_00100000)
|
||||
unset_object_flag2(0x32, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag(0x32, OBJFLAG_00100000)
|
||||
|
||||
label(0x31)
|
||||
|
||||
@@ -3552,14 +3552,14 @@ u8 func1018_safe_switch[] = {
|
||||
};
|
||||
|
||||
u8 func1018_safe_switch_cover[] = {
|
||||
set_object_flag_bank0(OBJ_SAFE_SWITCH_COVER, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_SAFE_SWITCH_COVER, OBJFLAG_DEACTIVATED)
|
||||
|
||||
beginloop(0x00)
|
||||
if_chr_activated_object(CHR_ANY, OBJ_SAFE_SWITCH_COVER, /*goto*/ 0x31)
|
||||
endloop(0x00)
|
||||
|
||||
label(0x31)
|
||||
unset_object_flag_bank0(OBJ_SAFE_SWITCH_COVER, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_SAFE_SWITCH_COVER, OBJFLAG_DEACTIVATED)
|
||||
yield
|
||||
yield
|
||||
|
||||
@@ -3568,7 +3568,7 @@ u8 func1018_safe_switch_cover[] = {
|
||||
endloop(0x04)
|
||||
|
||||
label(0x31)
|
||||
set_object_flag_bank0(OBJ_SAFE_SWITCH_COVER, OBJECTFLAG0_02000000)
|
||||
set_object_flag(OBJ_SAFE_SWITCH_COVER, OBJFLAG_02000000)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -3621,12 +3621,12 @@ u8 func1003_intro[] = {
|
||||
set_chr_hiddenflag(0x4c, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x01ec, -1, -1, 0x06, 0x00, 0x4c, 4)
|
||||
show_object(0x22)
|
||||
set_object_flag_bank1(0x22, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x22, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x22, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x22, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01ed, 0x22, 0x04ff, 0xff)
|
||||
show_object(0x2f)
|
||||
set_object_flag_bank1(0x2f, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x2f, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x2f, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x2f, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01ee, 0x2f, 0x04ff, 0xff)
|
||||
restart_timer
|
||||
fade_to_color(0x000000ff, 0x0000)
|
||||
@@ -3842,8 +3842,8 @@ u8 func1003_intro[] = {
|
||||
set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x01e6, -2, -1, 0x06, 0x00, CHR_BOND, 2)
|
||||
set_chr_hud_visible(CHR_BOND, FALSE)
|
||||
unset_object_flag_bank1(0x22, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x22, OBJECTFLAG2_00000010)
|
||||
unset_object_flag2(0x22, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x22, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01ed, 0x22, 0x01ff, 0xfe)
|
||||
set_ailist(0x00, 0x0405)
|
||||
set_ailist(0x01, 0x0405)
|
||||
@@ -3953,10 +3953,10 @@ u8 func1023_check_office2_dead[] = {
|
||||
};
|
||||
|
||||
u8 func1024_double_dy357[] = {
|
||||
set_object_flag_bank0(0x30, OBJECTFLAG0_00100000)
|
||||
set_object_flag_bank1(0x30, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank0(0x31, OBJECTFLAG0_00100000)
|
||||
set_object_flag_bank1(0x31, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag(0x30, OBJFLAG_00100000)
|
||||
set_object_flag2(0x30, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag(0x31, OBJFLAG_00100000)
|
||||
set_object_flag2(0x31, OBJFLAG2_INVISIBLE)
|
||||
|
||||
beginloop(0x00)
|
||||
if_chr_unloaded(0x10, /*goto*/ 0x31)
|
||||
@@ -3967,10 +3967,10 @@ u8 func1024_double_dy357[] = {
|
||||
endloop(0x00)
|
||||
|
||||
label(0x31)
|
||||
unset_object_flag_bank0(0x30, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(0x30, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank0(0x31, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(0x31, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag(0x30, OBJFLAG_00100000)
|
||||
unset_object_flag2(0x30, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag(0x31, OBJFLAG_00100000)
|
||||
unset_object_flag2(0x31, OBJFLAG2_INVISIBLE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -4123,16 +4123,16 @@ u8 func141b_setup_lifts_and_doors[] = {
|
||||
label(0x31)
|
||||
hide_object(0x09)
|
||||
label(0x02)
|
||||
set_object_flag_bank0(OBJ_DIAGONAL_LIFT, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(OBJ_VERTICAL_LIFT, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_DIAGONAL_LIFT, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(OBJ_VERTICAL_LIFT, OBJFLAG_DEACTIVATED)
|
||||
|
||||
beginloop(0x04)
|
||||
if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x02)
|
||||
endloop(0x04)
|
||||
|
||||
label(0x02)
|
||||
unset_object_flag_bank0(OBJ_DIAGONAL_LIFT, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag_bank0(OBJ_VERTICAL_LIFT, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_DIAGONAL_LIFT, OBJFLAG_DEACTIVATED)
|
||||
unset_object_flag(OBJ_VERTICAL_LIFT, OBJFLAG_DEACTIVATED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -4262,8 +4262,8 @@ u8 func102f_undisguise_on_alarm[] = {
|
||||
|
||||
u8 func1030_setup_rtracker[] = {
|
||||
yield
|
||||
set_object_flag_bank2(0x30, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag_bank2(0x31, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag3(0x30, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_object_flag3(0x31, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
||||
+15
-15
@@ -843,23 +843,23 @@ u8 func0c01_outro[] = {
|
||||
chr_do_animation(0x02e4, -1, -1, 0x06, 0x00, CHR_ELVIS, 4)
|
||||
|
||||
show_object(OBJ_OUTRO_SUBMARINE)
|
||||
set_object_flag_bank1(OBJ_OUTRO_SUBMARINE, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_OUTRO_SUBMARINE, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_OUTRO_SUBMARINE, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_OUTRO_SUBMARINE, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02e5, OBJ_OUTRO_SUBMARINE, 0x04ff, 0xff)
|
||||
|
||||
show_object(OBJ_OUTRO_GRATE)
|
||||
set_object_flag_bank1(OBJ_OUTRO_GRATE, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_OUTRO_GRATE, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_OUTRO_GRATE, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_OUTRO_GRATE, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02e6, OBJ_OUTRO_GRATE, 0x04ff, 0xff)
|
||||
|
||||
show_object(OBJ_OUTRO_CRATE1)
|
||||
set_object_flag_bank1(OBJ_OUTRO_CRATE1, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_OUTRO_CRATE1, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_OUTRO_CRATE1, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_OUTRO_CRATE1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02e7, OBJ_OUTRO_CRATE1, 0x04ff, 0xff)
|
||||
|
||||
show_object(OBJ_OUTRO_CRATE2)
|
||||
set_object_flag_bank1(OBJ_OUTRO_CRATE2, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_OUTRO_CRATE2, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_OUTRO_CRATE2, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_OUTRO_CRATE2, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02e8, OBJ_OUTRO_CRATE2, 0x04ff, 0xff)
|
||||
|
||||
set_cutscene_weapon(CHR_P1P2, WEAPON_NONE, WEAPON_NONE)
|
||||
@@ -1086,7 +1086,7 @@ u8 func1009_open_reactor_hatch[] = {
|
||||
|
||||
label(0x07)
|
||||
hide_object(OBJ_REACTOR_HATCH)
|
||||
set_object_flag_bank1(OBJ_REACTOR_HATCH, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag2(OBJ_REACTOR_HATCH, OBJFLAG2_INVISIBLE)
|
||||
message(CHR_P1P2, 0x1611) // "Reactor shutdown control hatch opened."
|
||||
set_stage_flag(STAGEFLAG_REACTOR_HATCH_OPEN)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
@@ -2843,10 +2843,10 @@ u8 func101e_alarm_images[] = {
|
||||
endloop(0x00)
|
||||
|
||||
label(0x07)
|
||||
set_object_flag_bank0(0x27, OBJECTFLAG0_00100000)
|
||||
set_object_flag_bank0(0x28, OBJECTFLAG0_00100000)
|
||||
set_object_flag_bank1(0x27, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(0x28, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag(0x27, OBJFLAG_00100000)
|
||||
set_object_flag(0x28, OBJFLAG_00100000)
|
||||
set_object_flag2(0x27, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(0x28, OBJFLAG2_INVISIBLE)
|
||||
set_object_image(0x21, 0x00, 0x0f)
|
||||
set_object_image(0x22, 0x00, 0x0f)
|
||||
set_object_image(0x23, 0x00, 0x0f)
|
||||
@@ -2893,8 +2893,8 @@ u8 func101f_unlock_doors[] = {
|
||||
|
||||
u8 func1020_setup_rtracker[] = {
|
||||
yield
|
||||
set_object_flag_bank2(0x27, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag_bank2(0x28, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag3(0x27, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_object_flag3(0x28, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
||||
+71
-71
@@ -597,10 +597,10 @@ u8 func1003_laser_switch_1[] = {
|
||||
open_door(OBJ_LASER_1C)
|
||||
open_door(OBJ_LASER_1D)
|
||||
yield
|
||||
set_object_flag_bank0(OBJ_LASER_1A, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_1B, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_1C, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_1D, OBJECTFLAG0_40000000)
|
||||
set_object_flag(OBJ_LASER_1A, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_1B, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_1C, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_1D, OBJFLAG_40000000)
|
||||
assign_sound(0x043f, CHANNEL_7)
|
||||
play_sound_from_entity(CHANNEL_7, OBJ_LASERSWITCH1, 0x012c, 0x0190, 0x00)
|
||||
mute_channel(CHANNEL_0)
|
||||
@@ -664,10 +664,10 @@ u8 func1004_laser_switch_2[] = {
|
||||
open_door(OBJ_LASER_2C)
|
||||
open_door(OBJ_LASER_2D)
|
||||
yield
|
||||
set_object_flag_bank0(OBJ_LASER_2A, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_2B, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_2C, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_2D, OBJECTFLAG0_40000000)
|
||||
set_object_flag(OBJ_LASER_2A, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_2B, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_2C, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_2D, OBJFLAG_40000000)
|
||||
assign_sound(0x043f, CHANNEL_7)
|
||||
play_sound_from_entity(CHANNEL_7, OBJ_LASERSWITCH2, 0x012c, 0x0190, 0x00)
|
||||
mute_channel(CHANNEL_1)
|
||||
@@ -730,10 +730,10 @@ u8 func1005_laser_switch_3[] = {
|
||||
open_door(OBJ_LASER_3C)
|
||||
open_door(OBJ_LASER_3D)
|
||||
yield
|
||||
set_object_flag_bank0(OBJ_LASER_3A, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_3B, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_3C, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_3D, OBJECTFLAG0_40000000)
|
||||
set_object_flag(OBJ_LASER_3A, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_3B, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_3C, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_3D, OBJFLAG_40000000)
|
||||
assign_sound(0x043f, CHANNEL_7)
|
||||
play_sound_from_entity(CHANNEL_7, OBJ_LASERSWITCH3, 0x012c, 0x0190, 0x00)
|
||||
mute_channel(CHANNEL_2)
|
||||
@@ -796,10 +796,10 @@ u8 func1006_laser_switch_4[] = {
|
||||
open_door(OBJ_LASER_4C)
|
||||
open_door(OBJ_LASER_4D)
|
||||
yield
|
||||
set_object_flag_bank0(OBJ_LASER_4A, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_4B, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_4C, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_4D, OBJECTFLAG0_40000000)
|
||||
set_object_flag(OBJ_LASER_4A, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_4B, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_4C, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_4D, OBJFLAG_40000000)
|
||||
assign_sound(0x043f, CHANNEL_7)
|
||||
play_sound_from_entity(CHANNEL_7, OBJ_LASERSWITCH4, 0x012c, 0x0190, 0x00)
|
||||
mute_channel(CHANNEL_3)
|
||||
@@ -900,22 +900,22 @@ u8 func1007_init_lasers[] = {
|
||||
open_door(OBJ_LASER_3D)
|
||||
open_door(OBJ_LASER_4D)
|
||||
yield
|
||||
set_object_flag_bank0(OBJ_LASER_1A, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_2A, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_3A, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_4A, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_1B, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_2B, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_3B, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_4B, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_1C, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_2C, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_3C, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_4C, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_1D, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_2D, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_3D, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_LASER_4D, OBJECTFLAG0_40000000)
|
||||
set_object_flag(OBJ_LASER_1A, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_2A, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_3A, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_4A, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_1B, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_2B, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_3B, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_4B, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_1C, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_2C, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_3C, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_4C, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_1D, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_2D, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_3D, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_LASER_4D, OBJFLAG_40000000)
|
||||
set_stage_flag(STAGEFLAG_LASERSET1_DISABLED)
|
||||
set_stage_flag(STAGEFLAG_LASERSET2_DISABLED)
|
||||
set_stage_flag(STAGEFLAG_LASERSET3_DISABLED)
|
||||
@@ -1110,12 +1110,12 @@ u8 func0402_init_swat2[] = {
|
||||
};
|
||||
|
||||
u8 func100a_give_keycards[] = {
|
||||
set_object_flag_bank0(OBJ_KEYCARD1, OBJECTFLAG0_00100000)
|
||||
set_object_flag_bank1(OBJ_KEYCARD1, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank0(OBJ_KEYCARD2, OBJECTFLAG0_00100000)
|
||||
set_object_flag_bank1(OBJ_KEYCARD2, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(OBJ_CROSSBOW, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank0(OBJ_CROSSBOW, OBJECTFLAG0_00100000)
|
||||
set_object_flag(OBJ_KEYCARD1, OBJFLAG_00100000)
|
||||
set_object_flag2(OBJ_KEYCARD1, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag(OBJ_KEYCARD2, OBJFLAG_00100000)
|
||||
set_object_flag2(OBJ_KEYCARD2, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(OBJ_CROSSBOW, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag(OBJ_CROSSBOW, OBJFLAG_00100000)
|
||||
|
||||
set_chr_chrflag(CHR_CLOAK_1A, CHRCFLAG_KILLCOUNTABLE)
|
||||
set_chr_chrflag(CHR_CLOAK_1B, CHRCFLAG_KILLCOUNTABLE)
|
||||
@@ -1147,10 +1147,10 @@ u8 func100a_give_keycards[] = {
|
||||
set_target_chr(CHR_CLOAK_1B)
|
||||
|
||||
label(0x2c)
|
||||
unset_object_flag_bank0(OBJ_KEYCARD1, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(OBJ_KEYCARD1, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank1(OBJ_CROSSBOW, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank0(OBJ_CROSSBOW, OBJECTFLAG0_00100000)
|
||||
unset_object_flag(OBJ_KEYCARD1, OBJFLAG_00100000)
|
||||
unset_object_flag2(OBJ_KEYCARD1, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag2(OBJ_CROSSBOW, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag(OBJ_CROSSBOW, OBJFLAG_00100000)
|
||||
|
||||
// Wait for the chr who holds the keycard to die
|
||||
beginloop(0x55)
|
||||
@@ -1160,8 +1160,8 @@ u8 func100a_give_keycards[] = {
|
||||
endloop(0x55)
|
||||
|
||||
label(0x2c)
|
||||
set_object_flag_bank1(OBJ_CROSSBOW, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank0(OBJ_CROSSBOW, OBJECTFLAG0_00100000)
|
||||
set_object_flag2(OBJ_CROSSBOW, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag(OBJ_CROSSBOW, OBJFLAG_00100000)
|
||||
hide_object(OBJ_CROSSBOW)
|
||||
|
||||
beginloop(0x08)
|
||||
@@ -1204,8 +1204,8 @@ u8 func100a_give_keycards[] = {
|
||||
dprint 'G','I','V','E',' ','T','O','7',0,
|
||||
|
||||
label(0x2c)
|
||||
unset_object_flag_bank0(OBJ_KEYCARD2, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(OBJ_KEYCARD2, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag(OBJ_KEYCARD2, OBJFLAG_00100000)
|
||||
unset_object_flag2(OBJ_KEYCARD2, OBJFLAG2_INVISIBLE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -1248,18 +1248,18 @@ u8 func100e_check_conspirators_alerted[] = {
|
||||
|
||||
// These objects are doors
|
||||
label(0x06)
|
||||
unset_object_flag_bank1(0x3f, OBJECTFLAG1_20000000)
|
||||
unset_object_flag_bank1(0x40, OBJECTFLAG1_20000000)
|
||||
unset_object_flag_bank1(0x41, OBJECTFLAG1_20000000)
|
||||
unset_object_flag_bank1(0x42, OBJECTFLAG1_20000000)
|
||||
unset_object_flag_bank1(0x43, OBJECTFLAG1_20000000)
|
||||
unset_object_flag_bank1(0x44, OBJECTFLAG1_20000000)
|
||||
unset_object_flag_bank1(0x45, OBJECTFLAG1_20000000)
|
||||
unset_object_flag_bank1(0x46, OBJECTFLAG1_20000000)
|
||||
unset_object_flag_bank1(0x34, OBJECTFLAG1_20000000)
|
||||
unset_object_flag_bank1(0x35, OBJECTFLAG1_20000000)
|
||||
unset_object_flag_bank1(0x36, OBJECTFLAG1_20000000)
|
||||
unset_object_flag_bank1(0x37, OBJECTFLAG1_20000000)
|
||||
unset_object_flag2(0x3f, OBJFLAG2_20000000)
|
||||
unset_object_flag2(0x40, OBJFLAG2_20000000)
|
||||
unset_object_flag2(0x41, OBJFLAG2_20000000)
|
||||
unset_object_flag2(0x42, OBJFLAG2_20000000)
|
||||
unset_object_flag2(0x43, OBJFLAG2_20000000)
|
||||
unset_object_flag2(0x44, OBJFLAG2_20000000)
|
||||
unset_object_flag2(0x45, OBJFLAG2_20000000)
|
||||
unset_object_flag2(0x46, OBJFLAG2_20000000)
|
||||
unset_object_flag2(0x34, OBJFLAG2_20000000)
|
||||
unset_object_flag2(0x35, OBJFLAG2_20000000)
|
||||
unset_object_flag2(0x36, OBJFLAG2_20000000)
|
||||
unset_object_flag2(0x37, OBJFLAG2_20000000)
|
||||
|
||||
set_stage_flag(STAGEFLAG_ALARM_SOUNDING)
|
||||
if_stage_flag_eq(STAGEFLAG_MEETING_STARTED, TRUE, /*goto*/ 0x06)
|
||||
@@ -1375,7 +1375,7 @@ u8 func1010_safe_cracking[] = {
|
||||
control_sound_from_object(CHANNEL_1, OBJ_SAFEKEYPAD, TRUE)
|
||||
message(CHR_P1P2, 0x1825) // "Door Decoder finished - door unlocked."
|
||||
unlock_door(OBJ_SAFEDOOR, 0x40)
|
||||
unset_object_flag_bank1(OBJ_SAFEDOOR, OBJECTFLAG1_20000000)
|
||||
unset_object_flag2(OBJ_SAFEDOOR, OBJFLAG2_20000000)
|
||||
open_door(OBJ_SAFEDOOR)
|
||||
hide_countdown_timer
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
@@ -2377,10 +2377,10 @@ u8 func101b_cloak2_entry[] = {
|
||||
lock_door(0x35, 0x10)
|
||||
lock_door(0x36, 0x10)
|
||||
lock_door(0x37, 0x10)
|
||||
set_object_flag_bank1(0x34, OBJECTFLAG1_10000000)
|
||||
set_object_flag_bank1(0x35, OBJECTFLAG1_10000000)
|
||||
set_object_flag_bank1(0x36, OBJECTFLAG1_08000000)
|
||||
set_object_flag_bank1(0x37, OBJECTFLAG1_10000000)
|
||||
set_object_flag2(0x34, OBJFLAG2_10000000)
|
||||
set_object_flag2(0x35, OBJFLAG2_10000000)
|
||||
set_object_flag2(0x36, OBJFLAG2_08000000)
|
||||
set_object_flag2(0x37, OBJFLAG2_10000000)
|
||||
close_door(0x34)
|
||||
close_door(0x35)
|
||||
close_door(0x36)
|
||||
@@ -2536,12 +2536,12 @@ u8 func101c_check_visited_top_door[] = {
|
||||
|
||||
u8 func101d_init_mines[] = {
|
||||
yield
|
||||
set_object_flag_bank1(OBJ_MINE1, OBJECTFLAG1_00020000)
|
||||
set_object_flag_bank1(OBJ_MINE2, OBJECTFLAG1_00020000)
|
||||
set_object_flag_bank1(OBJ_MINE1, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(OBJ_MINE2, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank0(OBJ_MINE1, OBJECTFLAG0_00000100)
|
||||
unset_object_flag_bank0(OBJ_MINE2, OBJECTFLAG0_00000100)
|
||||
set_object_flag2(OBJ_MINE1, OBJFLAG2_00020000)
|
||||
set_object_flag2(OBJ_MINE2, OBJFLAG2_00020000)
|
||||
set_object_flag2(OBJ_MINE1, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(OBJ_MINE2, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag(OBJ_MINE1, OBJFLAG_00000100)
|
||||
unset_object_flag(OBJ_MINE2, OBJFLAG_00000100)
|
||||
set_chr_team(CHR_ANTI, TEAM_ENEMY)
|
||||
|
||||
label(0x06)
|
||||
@@ -3017,8 +3017,8 @@ u8 func1028_cloak2_check_one_remaining[] = {
|
||||
|
||||
u8 func1029_set_secret_weapon_props[] = {
|
||||
yield
|
||||
set_object_flag_bank2(OBJ_NBOMB_CRATE, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag_bank2(OBJ_CROSSBOW, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_NBOMB_CRATE, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_CROSSBOW, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
||||
+107
-107
@@ -810,8 +810,8 @@ u8 func1002_devicetraining_camspy[] = {
|
||||
lock_door(0x89, 0x40)
|
||||
show_object(OBJ_CAMSPY)
|
||||
move_object_to_pad(OBJ_CAMSPY, 0x011d)
|
||||
unset_object_flag_bank0(OBJ_CAMSPY, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(OBJ_CAMSPY, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag(OBJ_CAMSPY, OBJFLAG_00100000)
|
||||
unset_object_flag2(OBJ_CAMSPY, OBJFLAG2_INVISIBLE)
|
||||
unset_stage_flag(STAGEFLAG_TRIGGER_CANNOTEXIT_MSG)
|
||||
close_door(0x31)
|
||||
close_door(0x8a)
|
||||
@@ -924,8 +924,8 @@ u8 func1003_devicetraining_nightvision[] = {
|
||||
lock_door(0x89, 0x40)
|
||||
show_object(0x27)
|
||||
move_object_to_pad(0x27, 0x011d)
|
||||
unset_object_flag_bank0(0x27, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(0x27, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag(0x27, OBJFLAG_00100000)
|
||||
unset_object_flag2(0x27, OBJFLAG2_INVISIBLE)
|
||||
unset_stage_flag(STAGEFLAG_TRIGGER_CANNOTEXIT_MSG)
|
||||
close_door(0x31)
|
||||
close_door(0x8a)
|
||||
@@ -1051,15 +1051,15 @@ u8 func1004_devicetraining_doordecoder[] = {
|
||||
endloop(0x0f)
|
||||
|
||||
label(0x81)
|
||||
set_object_flag_bank1(0x88, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag2(0x88, OBJFLAG2_INVISIBLE)
|
||||
set_stage_flag(STAGEFLAG_IN_TRAINING)
|
||||
lock_door(0x31, 0x40)
|
||||
lock_door(0x8a, 0x40)
|
||||
lock_door(0x89, 0x40)
|
||||
show_object(0x28)
|
||||
move_object_to_pad(0x28, 0x011d)
|
||||
unset_object_flag_bank0(0x28, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(0x28, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag(0x28, OBJFLAG_00100000)
|
||||
unset_object_flag2(0x28, OBJFLAG2_INVISIBLE)
|
||||
unset_stage_flag(STAGEFLAG_TRIGGER_CANNOTEXIT_MSG)
|
||||
close_door(0x31)
|
||||
close_door(0x8a)
|
||||
@@ -1141,7 +1141,7 @@ u8 func1004_devicetraining_doordecoder[] = {
|
||||
label(0x06)
|
||||
remove_displayed_text
|
||||
message(CHR_BOND, 0x1c1b) // "Decoder attached. Initiating cracking routines..."
|
||||
unset_object_flag_bank1(0x88, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(0x88, OBJFLAG2_INVISIBLE)
|
||||
assign_sound(0x8144, CHANNEL_1)
|
||||
play_sound_from_object(CHANNEL_1, 0x35, 0x012c, 0x0190)
|
||||
restart_timer
|
||||
@@ -1191,7 +1191,7 @@ u8 func1004_devicetraining_doordecoder[] = {
|
||||
dprint 'd','o','n','e',0,
|
||||
yield
|
||||
set_stage_flag(STAGEFLAG_TRIGGER_DEVICE_SUCCESS)
|
||||
unset_object_flag_bank1(0x88, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(0x88, OBJFLAG2_INVISIBLE)
|
||||
label(0x84)
|
||||
if_chr_in_room(CHR_BOND, 0x00, 0x001e, /*goto*/ 0x90)
|
||||
label(0x90)
|
||||
@@ -1221,10 +1221,10 @@ u8 func1005_devicetraining_xray[] = {
|
||||
dprint 't','r','a','i','n','i','n','g',0,
|
||||
show_object(0x29)
|
||||
move_object_to_pad(0x29, 0x011d)
|
||||
unset_object_flag_bank0(0x29, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(0x29, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank1(0x38, OBJECTFLAG1_00000001)
|
||||
unset_object_flag_bank1(0x39, OBJECTFLAG1_00000001)
|
||||
unset_object_flag(0x29, OBJFLAG_00100000)
|
||||
unset_object_flag2(0x29, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag2(0x38, OBJFLAG2_00000001)
|
||||
unset_object_flag2(0x39, OBJFLAG2_00000001)
|
||||
unset_stage_flag(STAGEFLAG_TRIGGER_CANNOTEXIT_MSG)
|
||||
close_door(0x31)
|
||||
close_door(0x8a)
|
||||
@@ -1244,13 +1244,13 @@ u8 func1005_devicetraining_xray[] = {
|
||||
|
||||
beginloop(0x86)
|
||||
if_chr_has_weapon_equipped(CHR_BOND, WEAPON_XRAYSCANNER, /*goto*/ 0x2f)
|
||||
set_object_flag_bank0(0x38, OBJECTFLAG0_02000000)
|
||||
set_object_flag_bank0(0x39, OBJECTFLAG0_02000000)
|
||||
set_object_flag(0x38, OBJFLAG_02000000)
|
||||
set_object_flag(0x39, OBJFLAG_02000000)
|
||||
goto_next(0x30)
|
||||
|
||||
label(0x2f)
|
||||
unset_object_flag_bank0(0x38, OBJECTFLAG0_02000000)
|
||||
unset_object_flag_bank0(0x39, OBJECTFLAG0_02000000)
|
||||
unset_object_flag(0x38, OBJFLAG_02000000)
|
||||
unset_object_flag(0x39, OBJFLAG_02000000)
|
||||
label(0x30)
|
||||
if_stage_flag_eq(STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90)
|
||||
if_chr_activated_object(CHR_BOND, 0x31, /*goto*/ 0x57)
|
||||
@@ -1298,24 +1298,24 @@ u8 func1005_devicetraining_xray[] = {
|
||||
set_stage_flag(STAGEFLAG_TRIGGER_CANNOTEXIT_MSG)
|
||||
label(0x59)
|
||||
if_chr_has_weapon_equipped(CHR_BOND, WEAPON_XRAYSCANNER, /*goto*/ 0x2f)
|
||||
set_object_flag_bank0(0x38, OBJECTFLAG0_02000000)
|
||||
set_object_flag_bank0(0x39, OBJECTFLAG0_02000000)
|
||||
set_object_flag(0x38, OBJFLAG_02000000)
|
||||
set_object_flag(0x39, OBJFLAG_02000000)
|
||||
goto_next(0x30)
|
||||
|
||||
label(0x2f)
|
||||
unset_object_flag_bank0(0x38, OBJECTFLAG0_02000000)
|
||||
unset_object_flag_bank0(0x39, OBJECTFLAG0_02000000)
|
||||
unset_object_flag(0x38, OBJFLAG_02000000)
|
||||
unset_object_flag(0x39, OBJFLAG_02000000)
|
||||
label(0x30)
|
||||
if_chr_activated_object(CHR_BOND, 0x38, /*goto*/ 0x5b)
|
||||
if_chr_activated_object(CHR_BOND, 0x39, /*goto*/ 0x5c)
|
||||
endloop(0x82)
|
||||
|
||||
label(0x5b)
|
||||
if_object_flag_bank1(0x38, OBJECTFLAG1_00000001, /*goto*/ 0x87)
|
||||
if_object_flag2(0x38, OBJFLAG2_00000001, /*goto*/ 0x87)
|
||||
remove_displayed_text
|
||||
message(CHR_BOND, 0x1c29) // "Laser Grid 1 has been deactivated."
|
||||
set_object_image(0x38, 0x00, 0x12)
|
||||
set_object_flag_bank1(0x38, OBJECTFLAG1_00000001)
|
||||
set_object_flag2(0x38, OBJFLAG2_00000001)
|
||||
open_door(0x3a)
|
||||
label(0x87)
|
||||
restart_timer
|
||||
@@ -1329,11 +1329,11 @@ u8 func1005_devicetraining_xray[] = {
|
||||
endloop(0x89)
|
||||
|
||||
label(0x5c)
|
||||
if_object_flag_bank1(0x39, OBJECTFLAG1_00000001, /*goto*/ 0x88)
|
||||
if_object_flag2(0x39, OBJFLAG2_00000001, /*goto*/ 0x88)
|
||||
set_object_image(0x39, 0x00, 0x12)
|
||||
remove_displayed_text
|
||||
message(CHR_BOND, 0x1c2a) // "Laser Grid 2 has been deactivated."
|
||||
set_object_flag_bank1(0x39, OBJECTFLAG1_00000001)
|
||||
set_object_flag2(0x39, OBJFLAG2_00000001)
|
||||
open_door(0x3b)
|
||||
label(0x88)
|
||||
restart_timer
|
||||
@@ -1360,11 +1360,11 @@ u8 func1005_devicetraining_xray[] = {
|
||||
goto_next(0x06)
|
||||
|
||||
label(0x06)
|
||||
if_object_flag_bank1(0x38, OBJECTFLAG1_00000001, /*goto*/ 0x2f)
|
||||
if_object_flag2(0x38, OBJFLAG2_00000001, /*goto*/ 0x2f)
|
||||
goto_first(0x82)
|
||||
|
||||
label(0x2f)
|
||||
if_object_flag_bank1(0x39, OBJECTFLAG1_00000001, /*goto*/ 0x2f)
|
||||
if_object_flag2(0x39, OBJFLAG2_00000001, /*goto*/ 0x2f)
|
||||
goto_first(0x82)
|
||||
|
||||
label(0x09)
|
||||
@@ -1433,8 +1433,8 @@ u8 func1006_devicetraining_disguise[] = {
|
||||
dprint 't','r','a','i','n','i','n','g',0,
|
||||
show_object(0x2a)
|
||||
move_object_to_pad(0x2a, 0x011d)
|
||||
unset_object_flag_bank0(0x2a, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(0x2a, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag(0x2a, OBJFLAG_00100000)
|
||||
unset_object_flag2(0x2a, OBJFLAG2_INVISIBLE)
|
||||
set_ailist(0x03, AILIST_GRIMSHAW_DISGUISE)
|
||||
unset_stage_flag(STAGEFLAG_TRIGGER_CANNOTEXIT_MSG)
|
||||
close_door(0x31)
|
||||
@@ -1576,8 +1576,8 @@ u8 func1007_devicetrainign_ir[] = {
|
||||
dprint 't','r','a','i','n','i','n','g',0,
|
||||
show_object(0x2b)
|
||||
move_object_to_pad(0x2b, 0x011d)
|
||||
unset_object_flag_bank0(0x2b, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(0x2b, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag(0x2b, OBJFLAG_00100000)
|
||||
unset_object_flag2(0x2b, OBJFLAG2_INVISIBLE)
|
||||
unset_stage_flag(STAGEFLAG_TRIGGER_CANNOTEXIT_MSG)
|
||||
close_door(0x31)
|
||||
close_door(0x8a)
|
||||
@@ -1597,10 +1597,10 @@ u8 func1007_devicetrainign_ir[] = {
|
||||
|
||||
beginloop(0x86)
|
||||
if_chr_has_weapon_equipped(CHR_BOND, WEAPON_IRSCANNER, /*goto*/ 0x2f)
|
||||
set_object_flag_bank0(0x37, OBJECTFLAG0_02000000)
|
||||
set_object_flag(0x37, OBJFLAG_02000000)
|
||||
goto_next(0x30)
|
||||
label(0x2f)
|
||||
unset_object_flag_bank0(0x37, OBJECTFLAG0_02000000)
|
||||
unset_object_flag(0x37, OBJFLAG_02000000)
|
||||
label(0x30)
|
||||
if_stage_flag_eq(STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90)
|
||||
if_chr_activated_object(CHR_BOND, 0x31, /*goto*/ 0x57)
|
||||
@@ -1626,11 +1626,11 @@ u8 func1007_devicetrainign_ir[] = {
|
||||
|
||||
beginloop(0x8e)
|
||||
if_chr_has_weapon_equipped(CHR_BOND, WEAPON_IRSCANNER, /*goto*/ 0x2f)
|
||||
set_object_flag_bank0(0x37, OBJECTFLAG0_02000000)
|
||||
set_object_flag(0x37, OBJFLAG_02000000)
|
||||
goto_next(0x30)
|
||||
|
||||
label(0x2f)
|
||||
unset_object_flag_bank0(0x37, OBJECTFLAG0_02000000)
|
||||
unset_object_flag(0x37, OBJFLAG_02000000)
|
||||
label(0x30)
|
||||
if_stage_flag_eq(STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90)
|
||||
if_chr_has_weapon_equipped(CHR_BOND, WEAPON_IRSCANNER, /*goto*/ 0x2f)
|
||||
@@ -1646,10 +1646,10 @@ u8 func1007_devicetrainign_ir[] = {
|
||||
|
||||
beginloop(0x82)
|
||||
if_chr_has_weapon_equipped(CHR_BOND, WEAPON_IRSCANNER, /*goto*/ 0x2f)
|
||||
set_object_flag_bank0(0x37, OBJECTFLAG0_02000000)
|
||||
set_object_flag(0x37, OBJFLAG_02000000)
|
||||
goto_next(0x30)
|
||||
label(0x2f)
|
||||
unset_object_flag_bank0(0x37, OBJECTFLAG0_02000000)
|
||||
unset_object_flag(0x37, OBJFLAG_02000000)
|
||||
label(0x30)
|
||||
if_stage_flag_eq(STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90)
|
||||
if_door_state(0x31, (DOORSTATE_OPEN | DOORSTATE_OPENING), /*goto*/ 0x85)
|
||||
@@ -1714,8 +1714,8 @@ u8 func1008_devicetraining_rtracker[] = {
|
||||
dprint 't','r','a','i','n','i','n','g',0,
|
||||
show_object(0x2c)
|
||||
move_object_to_pad(0x2c, 0x011d)
|
||||
unset_object_flag_bank0(0x2c, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(0x2c, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag(0x2c, OBJFLAG_00100000)
|
||||
unset_object_flag2(0x2c, OBJFLAG2_INVISIBLE)
|
||||
unset_stage_flag(STAGEFLAG_TRIGGER_CANNOTEXIT_MSG)
|
||||
close_door(0x31)
|
||||
close_door(0x8a)
|
||||
@@ -1767,11 +1767,11 @@ u8 func1008_devicetraining_rtracker[] = {
|
||||
goto_first(0x8d)
|
||||
|
||||
label(0x2f)
|
||||
unset_object_flag_bank0(0x36, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(0x36, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag(0x36, OBJFLAG_00100000)
|
||||
unset_object_flag2(0x36, OBJFLAG2_INVISIBLE)
|
||||
show_object(0x36)
|
||||
move_object_to_pad(0x36, 0x011e)
|
||||
set_object_flag_bank2(0x36, OBJECTFLAG2_RTRACKED_YELLOW)
|
||||
set_object_flag3(0x36, OBJFLAG3_RTRACKED_YELLOW)
|
||||
remove_displayed_text
|
||||
display_text(0x01, COLOR_04_ORANGE, 0x1c1e) // "Locate IR Scanner using Tracker."
|
||||
|
||||
@@ -1845,8 +1845,8 @@ u8 func1009_devicetraining_cloak[] = {
|
||||
move_object_to_pad(0x2d, 0x011d)
|
||||
unset_stage_flag(STAGEFLAG_CLOAK_FAILED)
|
||||
unset_stage_flag(STAGEFLAG_CLOAK_COMPLETE)
|
||||
unset_object_flag_bank0(0x2d, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(0x2d, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag(0x2d, OBJFLAG_00100000)
|
||||
unset_object_flag2(0x2d, OBJFLAG2_INVISIBLE)
|
||||
unset_stage_flag(STAGEFLAG_TRIGGER_CANNOTEXIT_MSG)
|
||||
close_door(0x31)
|
||||
close_door(0x8a)
|
||||
@@ -1994,8 +1994,8 @@ u8 func100a_devicetraining_ecmmine[] = {
|
||||
lock_door(0x89, 0x40)
|
||||
show_object(0x2e)
|
||||
move_object_to_pad(0x2e, 0x011d)
|
||||
unset_object_flag_bank0(0x2e, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(0x2e, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag(0x2e, OBJFLAG_00100000)
|
||||
unset_object_flag2(0x2e, OBJFLAG2_INVISIBLE)
|
||||
unset_stage_flag(STAGEFLAG_TRIGGER_CANNOTEXIT_MSG)
|
||||
close_door(0x31)
|
||||
close_door(0x8a)
|
||||
@@ -2141,8 +2141,8 @@ u8 func100b_devicetraining_uplink[] = {
|
||||
unset_stage_flag(STAGEFLAG_TRIGGER_DEVICE_FAILURE)
|
||||
show_object(0x2f)
|
||||
move_object_to_pad(0x2f, 0x0131)
|
||||
unset_object_flag_bank0(0x2f, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(0x2f, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag(0x2f, OBJFLAG_00100000)
|
||||
unset_object_flag2(0x2f, OBJFLAG2_INVISIBLE)
|
||||
dprint 't','r','a','i','n','i','n','g',0,
|
||||
close_door(0x31)
|
||||
close_door(0x8a)
|
||||
@@ -2725,7 +2725,7 @@ u8 func100e_training_unlockables[] = {
|
||||
endloop(0x09)
|
||||
|
||||
label(0x2f)
|
||||
unset_object_flag_bank1(OBJ_LIGHTSWITCH, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(OBJ_LIGHTSWITCH, OBJFLAG2_INVISIBLE)
|
||||
|
||||
beginloop(0x0a)
|
||||
if_savefile_flag_is_set(SAVEFILEFLAG_CI_NIGHTVISION_DONE, /*goto*/ 0x2f)
|
||||
@@ -2780,7 +2780,7 @@ u8 func100e_training_unlockables[] = {
|
||||
label(0x06) \
|
||||
if_door_state(door, (DOORSTATE_OPEN | DOORSTATE_OPENING), /*goto*/ 0x2f) \
|
||||
open_door(door) \
|
||||
set_object_flag_bank0(door, OBJECTFLAG0_40000000) \
|
||||
set_object_flag(door, OBJFLAG_40000000) \
|
||||
restart_timer \
|
||||
\
|
||||
beginloop(0x08) \
|
||||
@@ -2832,7 +2832,7 @@ u8 func1012_cloak_doorproxy[] = {
|
||||
label(0x06)
|
||||
if_door_state(0x40, (DOORSTATE_OPEN | DOORSTATE_OPENING), /*goto*/ 0x2f)
|
||||
open_door(0x40)
|
||||
set_object_flag_bank0(0x40, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x40, OBJFLAG_40000000)
|
||||
restart_timer
|
||||
|
||||
beginloop(0x08)
|
||||
@@ -2860,7 +2860,7 @@ u8 func101b_ir_door[] = {
|
||||
label(0x06)
|
||||
if_door_state(0x37, (DOORSTATE_OPEN | DOORSTATE_OPENING), /*goto*/ 0x2f)
|
||||
open_door(0x37)
|
||||
set_object_flag_bank0(0x37, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x37, OBJFLAG_40000000)
|
||||
restart_timer
|
||||
|
||||
beginloop(0x08)
|
||||
@@ -3391,11 +3391,11 @@ u8 func1018_lightswitch[] = {
|
||||
beginloop(0x04)
|
||||
if_stage_flag_eq(STAGEFLAG_TRIGGER_NIGHTVISION, FALSE, /*goto*/ 0x2f)
|
||||
if_chr_has_weapon_equipped(CHR_BOND, WEAPON_NIGHTVISION, /*goto*/ 0x2f)
|
||||
set_object_flag_bank1(OBJ_LIGHTSWITCH, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag2(OBJ_LIGHTSWITCH, OBJFLAG2_INVISIBLE)
|
||||
reloop(0x04)
|
||||
|
||||
label(0x2f)
|
||||
unset_object_flag_bank1(OBJ_LIGHTSWITCH, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(OBJ_LIGHTSWITCH, OBJFLAG2_INVISIBLE)
|
||||
endloop(0x04)
|
||||
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
@@ -3446,30 +3446,30 @@ u8 func101c_holo1_main[] = {
|
||||
show_object(0x4d)
|
||||
show_object(0x4e)
|
||||
show_object(0x4f)
|
||||
unset_object_flag_bank1(0x48, OBJECTFLAG1_00000001)
|
||||
unset_object_flag_bank1(0x49, OBJECTFLAG1_00000001)
|
||||
unset_object_flag_bank1(0x4a, OBJECTFLAG1_00000001)
|
||||
unset_object_flag_bank1(0x4b, OBJECTFLAG1_00000001)
|
||||
unset_object_flag_bank1(0x4c, OBJECTFLAG1_00000001)
|
||||
unset_object_flag_bank1(0x4d, OBJECTFLAG1_00000001)
|
||||
unset_object_flag_bank1(0x4e, OBJECTFLAG1_00000001)
|
||||
unset_object_flag_bank1(0x4f, OBJECTFLAG1_00000001)
|
||||
unset_object_flag2(0x48, OBJFLAG2_00000001)
|
||||
unset_object_flag2(0x49, OBJFLAG2_00000001)
|
||||
unset_object_flag2(0x4a, OBJFLAG2_00000001)
|
||||
unset_object_flag2(0x4b, OBJFLAG2_00000001)
|
||||
unset_object_flag2(0x4c, OBJFLAG2_00000001)
|
||||
unset_object_flag2(0x4d, OBJFLAG2_00000001)
|
||||
unset_object_flag2(0x4e, OBJFLAG2_00000001)
|
||||
unset_object_flag2(0x4f, OBJFLAG2_00000001)
|
||||
hide_chr(0x04)
|
||||
dprint 't','r','a','i','n','i','n','g',0,
|
||||
label(0x91)
|
||||
if_object_flag_bank1(0x4c, OBJECTFLAG1_00000001, /*goto*/ 0x2f)
|
||||
if_object_flag2(0x4c, OBJFLAG2_00000001, /*goto*/ 0x2f)
|
||||
goto_next(0x06)
|
||||
|
||||
label(0x2f)
|
||||
if_object_flag_bank1(0x4d, OBJECTFLAG1_00000001, /*goto*/ 0x2f)
|
||||
if_object_flag2(0x4d, OBJFLAG2_00000001, /*goto*/ 0x2f)
|
||||
goto_next(0x06)
|
||||
|
||||
label(0x2f)
|
||||
if_object_flag_bank1(0x4e, OBJECTFLAG1_00000001, /*goto*/ 0x2f)
|
||||
if_object_flag2(0x4e, OBJFLAG2_00000001, /*goto*/ 0x2f)
|
||||
goto_next(0x06)
|
||||
|
||||
label(0x2f)
|
||||
if_object_flag_bank1(0x4f, OBJECTFLAG1_00000001, /*goto*/ 0x2f)
|
||||
if_object_flag2(0x4f, OBJFLAG2_00000001, /*goto*/ 0x2f)
|
||||
label(0x06)
|
||||
remove_displayed_text
|
||||
display_text(0x01, COLOR_04_ORANGE, 0x1c64) // "Get the access codes by examining terminals. - Use the codes on the wall terminals."
|
||||
@@ -3545,19 +3545,19 @@ u8 func101c_holo1_main[] = {
|
||||
\
|
||||
label(0x2f) \
|
||||
set_object_image(object, 0x00, 0x12) \
|
||||
unset_object_flag_bank1(object, OBJECTFLAG1_00040000) \
|
||||
unset_object_flag2(object, OBJFLAG2_00040000) \
|
||||
\
|
||||
beginloop(0x04) \
|
||||
if_chr_activated_object(CHR_ANY, object, /*goto*/ 0x2f) \
|
||||
reloop(0x04) \
|
||||
\
|
||||
label(0x2f) \
|
||||
if_object_flag_bank1(object, OBJECTFLAG1_00000001, /*goto*/ 0x2f) \
|
||||
if_object_flag2(object, OBJFLAG2_00000001, /*goto*/ 0x2f) \
|
||||
endloop(0x04) \
|
||||
\
|
||||
label(0x2f) \
|
||||
set_object_image(object, 0x00, 0x13) \
|
||||
set_object_flag_bank1(object, OBJECTFLAG1_00040000) \
|
||||
set_object_flag2(object, OBJFLAG2_00040000) \
|
||||
assign_sound(0x043a, CHANNEL_7) \
|
||||
control_sound_from_object(CHANNEL_7, object, TRUE) \
|
||||
set_returnlist(CHR_SELF, function) \
|
||||
@@ -3587,19 +3587,19 @@ u8 func1020_holo1_monitor_switches[] = {
|
||||
|
||||
label(0x2f)
|
||||
set_object_image(0x4f, 0x00, 0x12)
|
||||
unset_object_flag_bank1(0x4f, OBJECTFLAG1_00040000)
|
||||
unset_object_flag2(0x4f, OBJFLAG2_00040000)
|
||||
|
||||
beginloop(0x04)
|
||||
if_chr_activated_object(CHR_ANY, 0x4f, /*goto*/ 0x2f)
|
||||
reloop(0x04)
|
||||
|
||||
label(0x2f)
|
||||
if_object_flag_bank1(0x4f, OBJECTFLAG1_00000001, /*goto*/ 0x2f)
|
||||
if_object_flag2(0x4f, OBJFLAG2_00000001, /*goto*/ 0x2f)
|
||||
endloop(0x04)
|
||||
|
||||
label(0x2f)
|
||||
set_object_image(0x4f, 0x00, 0x13)
|
||||
set_object_flag_bank1(0x4f, OBJECTFLAG1_00040000)
|
||||
set_object_flag2(0x4f, OBJFLAG2_00040000)
|
||||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, 0x4f, TRUE)
|
||||
set_returnlist(CHR_SELF, AILIST_HOLO1_MONITOR_SWITCHES)
|
||||
@@ -3621,7 +3621,7 @@ u8 func1020_holo1_monitor_switches[] = {
|
||||
reloop(0x04) \
|
||||
\
|
||||
label(0x2f) \
|
||||
if_object_flag_bank1(object1, OBJECTFLAG1_00000001, /*goto*/ 0x2f) \
|
||||
if_object_flag2(object1, OBJFLAG2_00000001, /*goto*/ 0x2f) \
|
||||
if_chr_distance_to_pad_lt(CHR_BOND, 400, pad, /*goto*/ 0x09) \
|
||||
label(0x2f) \
|
||||
if_chr_looking_at_object(CHR_BOND, object1, /*goto*/ 0x2f) \
|
||||
@@ -3650,7 +3650,7 @@ u8 func1020_holo1_monitor_switches[] = {
|
||||
goto_first(0x57) \
|
||||
\
|
||||
label(0x2f) \
|
||||
set_object_flag_bank1(object2, OBJECTFLAG1_00000001) \
|
||||
set_object_flag2(object2, OBJFLAG2_00000001) \
|
||||
\
|
||||
beginloop(0x59) \
|
||||
if_stage_flag_eq(STAGEFLAG_TRIGGER_HOLO_SUCCESS, TRUE, /*goto*/ 0x2f) \
|
||||
@@ -3669,12 +3669,12 @@ u8 func1020_holo1_monitor_switches[] = {
|
||||
u8 func1021_holo1_code1[] = {
|
||||
label(0x8f)
|
||||
set_object_image(0x48, 0x00, 0x12)
|
||||
unset_object_flag_bank1(0x4c, OBJECTFLAG1_00000001)
|
||||
unset_object_flag2(0x4c, OBJFLAG2_00000001)
|
||||
|
||||
holo1_code_thing_p1(0x48, 0x4c, 0x0240)
|
||||
|
||||
set_object_flag_bank1(0x48, OBJECTFLAG1_00000001)
|
||||
set_object_flag_bank1(0x4c, OBJECTFLAG1_00000001)
|
||||
set_object_flag2(0x48, OBJFLAG2_00000001)
|
||||
set_object_flag2(0x4c, OBJFLAG2_00000001)
|
||||
|
||||
// 0x1c55 = "LOOK UP - Press Down C Button to look up at the target."
|
||||
// 0x1c65 = "Code 1 has been obtained."
|
||||
@@ -3686,11 +3686,11 @@ u8 func1021_holo1_code1[] = {
|
||||
u8 func1021_holo1_code2[] = {
|
||||
label(0x8f)
|
||||
set_object_image(0x49, 0x00, 0x12)
|
||||
unset_object_flag_bank1(0x4d, OBJECTFLAG1_00000001)
|
||||
unset_object_flag2(0x4d, OBJFLAG2_00000001)
|
||||
|
||||
holo1_code_thing_p1(0x49, 0x4d, 0x0241)
|
||||
|
||||
set_object_flag_bank1(0x49, OBJECTFLAG1_00000001)
|
||||
set_object_flag2(0x49, OBJFLAG2_00000001)
|
||||
|
||||
// 0x1c56 = "LOOK DOWN - Press Up C Button to look down at the target."
|
||||
// 0x1c66 = "Code 2 has been obtained."
|
||||
@@ -3700,12 +3700,12 @@ u8 func1021_holo1_code2[] = {
|
||||
|
||||
u8 func1021_holo1_code3[] = {
|
||||
label(0x8f)
|
||||
unset_object_flag_bank1(0x4e, OBJECTFLAG1_00000001)
|
||||
unset_object_flag2(0x4e, OBJFLAG2_00000001)
|
||||
set_object_image(0x4a, 0x00, 0x12)
|
||||
|
||||
holo1_code_thing_p1(0x4a, 0x4e, 0x0242)
|
||||
|
||||
set_object_flag_bank1(0x4a, OBJECTFLAG1_00000001)
|
||||
set_object_flag2(0x4a, OBJFLAG2_00000001)
|
||||
|
||||
// 0x1c55 = "LOOK UP - Press Down C Button to look up at the target."
|
||||
// 0x1c67 = "Code 3 has been obtained."
|
||||
@@ -3715,12 +3715,12 @@ u8 func1021_holo1_code3[] = {
|
||||
|
||||
u8 func1021_holo1_code4[] = {
|
||||
label(0x8f)
|
||||
unset_object_flag_bank1(0x4f, OBJECTFLAG1_00000001)
|
||||
unset_object_flag2(0x4f, OBJFLAG2_00000001)
|
||||
set_object_image(0x4b, 0x00, 0x12)
|
||||
|
||||
holo1_code_thing_p1(0x4b, 0x4f, 0x0243)
|
||||
|
||||
set_object_flag_bank1(0x4b, OBJECTFLAG1_00000001)
|
||||
set_object_flag2(0x4b, OBJFLAG2_00000001)
|
||||
|
||||
// 0x1c55 = "LOOK UP - Press Down C Button to look up at the target."
|
||||
// 0x1c68 = "Code 4 has been obtained."
|
||||
@@ -3731,22 +3731,22 @@ u8 func1021_holo1_code4[] = {
|
||||
u8 func0430_holo1_check_done[] = {
|
||||
label(0x04)
|
||||
yield
|
||||
if_object_flag_bank1(0x4c, OBJECTFLAG1_00040000, /*goto*/ 0x2f)
|
||||
if_object_flag2(0x4c, OBJFLAG2_00040000, /*goto*/ 0x2f)
|
||||
goto_next(0x06)
|
||||
|
||||
label(0x2f)
|
||||
dprint 'D','O','H','1',0,
|
||||
if_object_flag_bank1(0x4d, OBJECTFLAG1_00040000, /*goto*/ 0x2f)
|
||||
if_object_flag2(0x4d, OBJFLAG2_00040000, /*goto*/ 0x2f)
|
||||
goto_next(0x06)
|
||||
|
||||
label(0x2f)
|
||||
dprint 'D','O','H','2',0,
|
||||
if_object_flag_bank1(0x4e, OBJECTFLAG1_00040000, /*goto*/ 0x2f)
|
||||
if_object_flag2(0x4e, OBJFLAG2_00040000, /*goto*/ 0x2f)
|
||||
goto_next(0x06)
|
||||
|
||||
label(0x2f)
|
||||
dprint 'D','O','H','3',0,
|
||||
if_object_flag_bank1(0x4f, OBJECTFLAG1_00040000, /*goto*/ 0x2f)
|
||||
if_object_flag2(0x4f, OBJFLAG2_00040000, /*goto*/ 0x2f)
|
||||
goto_next(0x06)
|
||||
|
||||
// All flags are set
|
||||
@@ -3803,10 +3803,10 @@ u8 func1022_holo2_main[] = {
|
||||
if_chr_activated_object(CHR_BOND, 0x75, /*goto*/ 0x2f)
|
||||
if_chr_activated_object(CHR_BOND, 0x76, /*goto*/ 0x2f)
|
||||
label(0x2f)
|
||||
unset_object_flag_bank1(0x54, OBJECTFLAG1_00000001)
|
||||
unset_object_flag_bank1(0x55, OBJECTFLAG1_00000001)
|
||||
unset_object_flag_bank1(0x56, OBJECTFLAG1_00000001)
|
||||
unset_object_flag_bank1(0x57, OBJECTFLAG1_00000001)
|
||||
unset_object_flag2(0x54, OBJFLAG2_00000001)
|
||||
unset_object_flag2(0x55, OBJFLAG2_00000001)
|
||||
unset_object_flag2(0x56, OBJFLAG2_00000001)
|
||||
unset_object_flag2(0x57, OBJFLAG2_00000001)
|
||||
set_object_image(0x54, 0x00, 0x14)
|
||||
set_object_image(0x55, 0x00, 0x14)
|
||||
set_object_image(0x56, 0x00, 0x14)
|
||||
@@ -3890,7 +3890,7 @@ u8 func1022_holo2_main[] = {
|
||||
restart_timer \
|
||||
beginloop(0x04) \
|
||||
if_chr_activated_object(CHR_ANY, object, /*goto*/ 0x2f) \
|
||||
if_object_flag_bank1(object, OBJECTFLAG1_00000001, /*goto*/ 0x06) \
|
||||
if_object_flag2(object, OBJFLAG2_00000001, /*goto*/ 0x06) \
|
||||
reloop(0x04) \
|
||||
\
|
||||
label(0x06) \
|
||||
@@ -3899,14 +3899,14 @@ u8 func1022_holo2_main[] = {
|
||||
\
|
||||
label(0x06) \
|
||||
set_object_image(object, 0x00, 0x14) \
|
||||
unset_object_flag_bank1(object, OBJECTFLAG1_00000001) \
|
||||
unset_object_flag2(object, OBJFLAG2_00000001) \
|
||||
endloop(0x04) \
|
||||
\
|
||||
label(0x2f) \
|
||||
assign_sound(0x043a, CHANNEL_7) \
|
||||
control_sound_from_object(CHANNEL_7, object, TRUE) \
|
||||
set_object_image(object, 0x00, 0x13) \
|
||||
set_object_flag_bank1(object, OBJECTFLAG1_00000001) \
|
||||
set_object_flag2(object, OBJFLAG2_00000001) \
|
||||
set_returnlist(CHR_SELF, function) \
|
||||
set_ailist(CHR_SELF, 0x041b)
|
||||
|
||||
@@ -3939,19 +3939,19 @@ u8 func041b_holo2_part1[] = {
|
||||
|
||||
label(0x04)
|
||||
yield
|
||||
if_object_flag_bank1(0x54, OBJECTFLAG1_00000001, /*goto*/ 0x2f)
|
||||
if_object_flag2(0x54, OBJFLAG2_00000001, /*goto*/ 0x2f)
|
||||
goto_next(0x06)
|
||||
|
||||
label(0x2f)
|
||||
if_object_flag_bank1(0x55, OBJECTFLAG1_00000001, /*goto*/ 0x2f)
|
||||
if_object_flag2(0x55, OBJFLAG2_00000001, /*goto*/ 0x2f)
|
||||
goto_next(0x06)
|
||||
|
||||
label(0x2f)
|
||||
if_object_flag_bank1(0x56, OBJECTFLAG1_00000001, /*goto*/ 0x2f)
|
||||
if_object_flag2(0x56, OBJFLAG2_00000001, /*goto*/ 0x2f)
|
||||
goto_next(0x06)
|
||||
|
||||
label(0x2f)
|
||||
if_object_flag_bank1(0x57, OBJECTFLAG1_00000001, /*goto*/ 0x2f)
|
||||
if_object_flag2(0x57, OBJFLAG2_00000001, /*goto*/ 0x2f)
|
||||
goto_next(0x06)
|
||||
|
||||
label(0x2f)
|
||||
@@ -4064,8 +4064,8 @@ u8 func1027_holo3_main[] = {
|
||||
if_chr_activated_object(CHR_BOND, 0x75, /*goto*/ 0x2f)
|
||||
if_chr_activated_object(CHR_BOND, 0x76, /*goto*/ 0x2f)
|
||||
label(0x2f)
|
||||
unset_object_flag_bank1(0x65, OBJECTFLAG1_00000001)
|
||||
unset_object_flag_bank1(0x66, OBJECTFLAG1_00000001)
|
||||
unset_object_flag2(0x65, OBJFLAG2_00000001)
|
||||
unset_object_flag2(0x66, OBJFLAG2_00000001)
|
||||
set_object_image(0x65, 0x00, 0x14)
|
||||
set_object_image(0x66, 0x00, 0x14)
|
||||
unset_stage_flag(STAGEFLAG_HOLO_ABORTING)
|
||||
@@ -4280,7 +4280,7 @@ u8 func102c_holo3_object1[] = {
|
||||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, 0x65, TRUE)
|
||||
set_object_image(0x65, 0x00, 0x13)
|
||||
set_object_flag_bank1(0x65, OBJECTFLAG1_00000001)
|
||||
set_object_flag2(0x65, OBJFLAG2_00000001)
|
||||
set_returnlist(CHR_SELF, AILIST_HOLO3_OBJECT1)
|
||||
set_ailist(CHR_SELF, AILIST_HOLO3_CHECK_DONE)
|
||||
endlist
|
||||
@@ -4295,7 +4295,7 @@ u8 func102d_holo3_object2[] = {
|
||||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, 0x65, TRUE)
|
||||
set_object_image(0x66, 0x00, 0x13)
|
||||
set_object_flag_bank1(0x66, OBJECTFLAG1_00000001)
|
||||
set_object_flag2(0x66, OBJFLAG2_00000001)
|
||||
set_returnlist(CHR_SELF, AILIST_HOLO3_OBJECT2)
|
||||
set_ailist(CHR_SELF, AILIST_HOLO3_CHECK_DONE)
|
||||
endlist
|
||||
@@ -4304,11 +4304,11 @@ u8 func102d_holo3_object2[] = {
|
||||
u8 func041c_holo3_check_done[] = {
|
||||
label(0x04)
|
||||
yield
|
||||
if_object_flag_bank1(0x65, OBJECTFLAG1_00000001, /*goto*/ 0x2f)
|
||||
if_object_flag2(0x65, OBJFLAG2_00000001, /*goto*/ 0x2f)
|
||||
goto_next(0x06)
|
||||
|
||||
label(0x2f)
|
||||
if_object_flag_bank1(0x66, OBJECTFLAG1_00000001, /*goto*/ 0x2f)
|
||||
if_object_flag2(0x66, OBJFLAG2_00000001, /*goto*/ 0x2f)
|
||||
goto_next(0x06)
|
||||
|
||||
label(0x2f)
|
||||
@@ -5812,9 +5812,9 @@ u8 func1040_lift_door_sounds[] = {
|
||||
endloop(0x57)
|
||||
|
||||
label(0x2f)
|
||||
set_object_flag_bank0(0x8b, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(0x8c, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(0x8d, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(0x8b, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(0x8c, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(0x8d, OBJFLAG_DEACTIVATED)
|
||||
|
||||
// Play sounds when lift doors activated
|
||||
beginloop(0x8f)
|
||||
|
||||
+12
-12
@@ -1309,12 +1309,12 @@ u8 func1009_weaponscache[] = {
|
||||
control_sound_from_object(CHANNEL_5, OBJ_CMP150_1, TRUE)
|
||||
hide_object(OBJ_CACHEDOOR1)
|
||||
hide_object(OBJ_CACHEDOOR2)
|
||||
unset_object_flag_bank0(OBJ_CMP150_1, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(OBJ_CMP150_1, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank0(OBJ_CMP150_2, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(OBJ_CMP150_2, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(OBJ_CMP150_1, OBJECTFLAG1_00001000)
|
||||
set_object_flag_bank1(OBJ_CMP150_2, OBJECTFLAG1_00001000)
|
||||
unset_object_flag(OBJ_CMP150_1, OBJFLAG_00100000)
|
||||
unset_object_flag2(OBJ_CMP150_1, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag(OBJ_CMP150_2, OBJFLAG_00100000)
|
||||
unset_object_flag2(OBJ_CMP150_2, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(OBJ_CMP150_1, OBJFLAG2_00001000)
|
||||
set_object_flag2(OBJ_CMP150_2, OBJFLAG2_00001000)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
label(0x2f)
|
||||
@@ -1474,9 +1474,9 @@ u8 func1003_bot_programming_terminal[] = {
|
||||
|
||||
u8 func1004_check_items_collected[] = {
|
||||
yield
|
||||
set_object_flag_bank2(OBJ_K7AVENGER, OBJECTFLAG2_00400000)
|
||||
set_object_flag_bank2(OBJ_NIGHTVISION, OBJECTFLAG2_00400000)
|
||||
set_object_flag_bank2(OBJ_SHIELD, OBJECTFLAG2_00400000)
|
||||
set_object_flag3(OBJ_K7AVENGER, OBJFLAG3_00400000)
|
||||
set_object_flag3(OBJ_NIGHTVISION, OBJFLAG3_00400000)
|
||||
set_object_flag3(OBJ_SHIELD, OBJFLAG3_00400000)
|
||||
|
||||
beginloop(0x04)
|
||||
if_chr_has_object(CHR_BOND, OBJ_K7AVENGER, /*goto*/ 0x2f)
|
||||
@@ -3254,9 +3254,9 @@ u8 func1020_lock_agent_doors[] = {
|
||||
|
||||
u8 func1022_setup_rtracker[] = {
|
||||
yield
|
||||
set_object_flag_bank2(OBJ_CMP150_1, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag_bank2(OBJ_CMP150_2, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag_bank2(OBJ_PROXYMINES, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_CMP150_1, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_CMP150_2, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_PROXYMINES, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
||||
+18
-18
@@ -798,8 +798,8 @@ u8 func1002_intro[] = {
|
||||
set_chr_hiddenflag(CHR_TAKER2, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x0174, -1, -1, 0x06, 0x00, CHR_TAKER2, 4)
|
||||
show_object(OBJ_DROPSHIP)
|
||||
set_object_flag_bank1(OBJ_DROPSHIP, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_DROPSHIP, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_DROPSHIP, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_DROPSHIP, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0175, OBJ_DROPSHIP, 0x04ff, 0xff)
|
||||
restart_timer
|
||||
fade_to_color(0x000000ff, 0)
|
||||
@@ -1049,8 +1049,8 @@ u8 func1002_intro[] = {
|
||||
chr_do_animation(0x01bc, -1, -1, 0x06, 0x00, CHR_BOND, 4)
|
||||
|
||||
show_object(OBJ_DROPSHIP)
|
||||
set_object_flag_bank1(OBJ_DROPSHIP, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_DROPSHIP, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_DROPSHIP, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_DROPSHIP, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01bd, OBJ_DROPSHIP, 0x04ff, 0xff)
|
||||
|
||||
restart_timer
|
||||
@@ -2082,7 +2082,7 @@ u8 func1009_windmill_switch[] = {
|
||||
message(CHR_P1P2, 0x2012) // "Windmill has been reactivated."
|
||||
yield
|
||||
set_stage_flag(STAGEFLAG_WINDMILL_ACTIVATED)
|
||||
set_object_flag_bank1(OBJ_WINDMILL, OBJECTFLAG1_20000000)
|
||||
set_object_flag2(OBJ_WINDMILL, OBJFLAG2_20000000)
|
||||
unlock_door(0x06, 0x02)
|
||||
unlock_door(0x07, 0x02)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
@@ -2163,8 +2163,8 @@ u8 func100b_invoke_hackers[] = {
|
||||
label(0x06)
|
||||
speak(CHR_BOND, 0x2016, 0x819f, CHANNEL_4, COLOR_05_GREEN) // "Joanna! It's Grimshaw. We've got hackers at the vi..."
|
||||
set_stage_flag(STAGEFLAG_HACKERS_STARTED)
|
||||
set_object_flag_bank2(0x0b, OBJECTFLAG2_RTRACKED_YELLOW)
|
||||
set_object_flag_bank2(0x0d, OBJECTFLAG2_RTRACKED_YELLOW)
|
||||
set_object_flag3(0x0b, OBJFLAG3_RTRACKED_YELLOW)
|
||||
set_object_flag3(0x0d, OBJFLAG3_RTRACKED_YELLOW)
|
||||
show_chr(CHR_HACKER1)
|
||||
yield
|
||||
show_chr(CHR_HACKER2)
|
||||
@@ -2423,8 +2423,8 @@ u8 func1014_give_keycard[] = {
|
||||
set_chr_chrflag(CHR_BASEMENT7, CHRCFLAG_KILLCOUNTABLE)
|
||||
set_chr_chrflag(CHR_BASEMENT8, CHRCFLAG_KILLCOUNTABLE)
|
||||
set_chr_chrflag(CHR_BASEMENT9, CHRCFLAG_KILLCOUNTABLE)
|
||||
set_object_flag_bank0(OBJ_KEYCARD, OBJECTFLAG0_00100000)
|
||||
set_object_flag_bank1(OBJ_KEYCARD, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag(OBJ_KEYCARD, OBJFLAG_00100000)
|
||||
set_object_flag2(OBJ_KEYCARD, OBJFLAG2_INVISIBLE)
|
||||
|
||||
// Wait until one basement guard remaining
|
||||
beginloop(0x04)
|
||||
@@ -2458,8 +2458,8 @@ u8 func1014_give_keycard[] = {
|
||||
|
||||
// Gave key
|
||||
label(0x09)
|
||||
unset_object_flag_bank0(OBJ_KEYCARD, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(OBJ_KEYCARD, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag(OBJ_KEYCARD, OBJFLAG_00100000)
|
||||
unset_object_flag2(OBJ_KEYCARD, OBJFLAG2_INVISIBLE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -2931,10 +2931,10 @@ u8 func101d_dual_cmp150[] = {
|
||||
endloop(0x08)
|
||||
|
||||
label(0x2d)
|
||||
unset_object_flag_bank0(OBJ_CMP150_1, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank0(OBJ_CMP150_2, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(OBJ_CMP150_1, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank1(OBJ_CMP150_1, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag(OBJ_CMP150_1, OBJFLAG_00100000)
|
||||
unset_object_flag(OBJ_CMP150_2, OBJFLAG_00100000)
|
||||
unset_object_flag2(OBJ_CMP150_1, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag2(OBJ_CMP150_1, OBJFLAG2_INVISIBLE)
|
||||
|
||||
label(0x06)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
@@ -3153,9 +3153,9 @@ u8 func1021_toggle_last_basement_guard[] = {
|
||||
|
||||
u8 func1022_setup_rtracker[] = {
|
||||
yield
|
||||
set_object_flag_bank2(OBJ_CMP150_1, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag_bank2(OBJ_CMP150_2, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag_bank2(OBJ_DEVASTATOR, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_CMP150_1, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_CMP150_2, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_DEVASTATOR, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
||||
+48
-48
@@ -739,9 +739,9 @@ u8 func100b_setup_autoguns[] = {
|
||||
endloop(0x71)
|
||||
|
||||
label(0x2e)
|
||||
set_object_flag_bank0(OBJ_AUTOGUN1, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(OBJ_AUTOGUN2, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(OBJ_AUTOGUN3, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_AUTOGUN1, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(OBJ_AUTOGUN2, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(OBJ_AUTOGUN3, OBJFLAG_DEACTIVATED)
|
||||
|
||||
label(0x2f)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
@@ -820,7 +820,7 @@ u8 func1005_check_safeinfo_destroyed[] = {
|
||||
play_sound(0x043a, CHANNEL_7) \
|
||||
message(CHR_P1P2, 0x220f) /* "Automatic gun activated." */ \
|
||||
label(0x0e) \
|
||||
unset_object_flag_bank0(autogun, OBJECTFLAG0_DEACTIVATED) \
|
||||
unset_object_flag(autogun, OBJFLAG_DEACTIVATED) \
|
||||
set_stage_flag(stageflag) \
|
||||
\
|
||||
beginloop(0x0f) \
|
||||
@@ -874,8 +874,8 @@ u8 func0c01_outro[] = {
|
||||
|
||||
#define show_object_with_animation(object, chr_do_animation) \
|
||||
show_object(object) \
|
||||
set_object_flag_bank1(object, OBJECTFLAG1_04000000) \
|
||||
set_object_flag_bank2(object, OBJECTFLAG2_00000010) \
|
||||
set_object_flag2(object, OBJFLAG2_04000000) \
|
||||
set_object_flag3(object, OBJFLAG3_00000010) \
|
||||
object_do_animation(chr_do_animation, object, 0x04ff, 0xff)
|
||||
|
||||
|
||||
@@ -889,16 +889,16 @@ u8 func0c01_outro[] = {
|
||||
show_object_with_animation(0x14, 0x01aa)
|
||||
|
||||
show_object(0x0d)
|
||||
unset_object_flag_bank0(0x0d, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank1(0x0d, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x0d, OBJECTFLAG2_00000010)
|
||||
unset_object_flag(0x0d, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag2(0x0d, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x0d, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01b4, 0x0d, 0x01ff, 0xff)
|
||||
|
||||
show_nonessential_chrs(FALSE)
|
||||
open_door(0x51)
|
||||
restart_timer
|
||||
yield
|
||||
set_object_flag_bank0(0x51, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x51, OBJFLAG_40000000)
|
||||
set_cutscene_weapon(CHR_P1P2, WEAPON_NONE, WEAPON_NONE)
|
||||
yield
|
||||
set_cutscene_weapon(CHR_P1P2, WEAPON_AR34, WEAPON_NONE)
|
||||
@@ -986,8 +986,8 @@ u8 func0c01_outro[] = {
|
||||
show_object_with_animation(0x0d, 0x030f)
|
||||
|
||||
show_object(0x16)
|
||||
set_object_flag_bank1(0x16, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x16, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x16, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x16, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01b1, 0x16, 0x02ff, 0xff)
|
||||
|
||||
wait_until(372, 0x7a)
|
||||
@@ -1176,8 +1176,8 @@ u8 func1002_intro[] = {
|
||||
set_chr_hiddenflag(0x1a, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x02c0, -1, -1, 0x06, 0x00, 0x1a, 4)
|
||||
show_object(0x0d)
|
||||
set_object_flag_bank1(0x0d, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x0d, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x0d, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x0d, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02c1, 0x0d, 0x04ff, 0xff)
|
||||
restart_timer
|
||||
set_cutscene_weapon(0x1a, WEAPON_NONE, WEAPON_NONE)
|
||||
@@ -1341,7 +1341,7 @@ u8 func1002_intro[] = {
|
||||
|
||||
wait_until(3142, 0xae)
|
||||
play_sound(0x0167, CHANNEL_10)
|
||||
unset_object_flag_bank1(0x0d, OBJECTFLAG1_04000000)
|
||||
unset_object_flag2(0x0d, OBJFLAG2_04000000)
|
||||
|
||||
wait_until(3144, 0xa5)
|
||||
play_sound(0x0166, CHANNEL_10)
|
||||
@@ -1401,7 +1401,7 @@ u8 func1002_intro[] = {
|
||||
mute_channel(CHANNEL_10)
|
||||
camera_movement(0x02c2)
|
||||
cmd0175(60)
|
||||
unset_object_flag_bank1(0x0d, OBJECTFLAG1_04000000)
|
||||
unset_object_flag2(0x0d, OBJFLAG2_04000000)
|
||||
if_controller_button_pressed(/*goto*/ 0xcc)
|
||||
unset_chr_chrflag(CHR_SKEDAR4, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_SKEDAR4, CHRCFLAG_UNPLAYABLE)
|
||||
@@ -1411,12 +1411,12 @@ u8 func1002_intro[] = {
|
||||
set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x02c4, -1, -1, 0x06, 0x00, CHR_BOND, 4)
|
||||
show_object(0x52)
|
||||
set_object_flag_bank1(0x52, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x52, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x52, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x52, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02c5, 0x52, 0x04ff, 0xff)
|
||||
show_object(0x53)
|
||||
set_object_flag_bank1(0x53, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x53, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x53, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x53, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02c6, 0x53, 0x04ff, 0xff)
|
||||
restart_timer
|
||||
|
||||
@@ -1505,17 +1505,17 @@ u8 func1002_intro[] = {
|
||||
unset_chr_chrflag(CHR_SKEDAR4, CHRCFLAG_UNPLAYABLE)
|
||||
set_chr_hiddenflag(CHR_SKEDAR4, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x02c3, -2, -1, 0x06, 0x00, CHR_SKEDAR4, 2)
|
||||
unset_object_flag_bank1(0x0d, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank0(0x0d, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank2(0x0d, OBJECTFLAG2_00000010)
|
||||
unset_object_flag2(0x0d, OBJFLAG2_04000000)
|
||||
set_object_flag(0x0d, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag3(0x0d, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01b4, 0x0d, 0x01ff, 0xff)
|
||||
show_object(0x52)
|
||||
set_object_flag_bank1(0x52, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x52, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x52, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x52, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02c5, 0x52, 0x04ff, 0xfe)
|
||||
show_object(0x53)
|
||||
set_object_flag_bank1(0x53, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x53, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x53, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x53, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02c6, 0x53, 0x04ff, 0xfe)
|
||||
set_stage_flag(STAGEFLAG_INTRO_FINISHED)
|
||||
restart_default_music
|
||||
@@ -2956,8 +2956,8 @@ u8 func1015_firingrange_pc[] = {
|
||||
|
||||
label(0x08)
|
||||
message(CHR_P1P2, 0x221f) // "Emergency overrides have been engaged."
|
||||
unset_object_flag_bank0(OBJ_RCP120, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank0(OBJ_RCP120_GLASS, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(OBJ_RCP120, OBJFLAG_00100000)
|
||||
unset_object_flag(OBJ_RCP120_GLASS, OBJFLAG_INVINCIBLE)
|
||||
destroy_object(OBJ_RCP120_GLASS)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
@@ -3192,11 +3192,11 @@ u8 func1022_skedar_shuttle[] = {
|
||||
|
||||
label(0x08)
|
||||
show_object(OBJ_SKEDAR_SHUTTLE)
|
||||
set_object_flag_bank1(OBJ_SKEDAR_SHUTTLE, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_SKEDAR_SHUTTLE, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_SKEDAR_SHUTTLE, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_SKEDAR_SHUTTLE, OBJFLAG3_00000010)
|
||||
object_do_animation(0x045a, OBJ_SKEDAR_SHUTTLE, 0x04ff, 0xff)
|
||||
set_object_part_visible(OBJ_SKEDAR_SHUTTLE, FALSE)
|
||||
set_object_flag_bank0(OBJ_SKEDAR_SHUTTLE, OBJECTFLAG0_00000100)
|
||||
set_object_flag(OBJ_SKEDAR_SHUTTLE, OBJFLAG_00000100)
|
||||
|
||||
unset_chr_chrflag(CHR_BLONDE1, CHRCFLAG_HIDDEN)
|
||||
unset_chr_chrflag(CHR_BLONDE2, CHRCFLAG_HIDDEN)
|
||||
@@ -3438,8 +3438,8 @@ u8 func1018_hurt_carrington[] = {
|
||||
|
||||
u8 func1019_setup_safeinfo[] = {
|
||||
label(0x08)
|
||||
unset_object_flag_bank0(OBJ_SAFEDOOR, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank0(OBJ_SAFEINFO, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(OBJ_SAFEDOOR, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag(OBJ_SAFEINFO, OBJFLAG_INVINCIBLE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -3686,8 +3686,8 @@ u8 func100e_setup_firingrange_doors[] = {
|
||||
|
||||
// Unset some flags on them
|
||||
label(0x2e)
|
||||
unset_object_flag_bank1(0x23, OBJECTFLAG1_20000000)
|
||||
unset_object_flag_bank1(0x24, OBJECTFLAG1_20000000)
|
||||
unset_object_flag2(0x23, OBJFLAG2_20000000)
|
||||
unset_object_flag2(0x24, OBJFLAG2_20000000)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -3806,7 +3806,7 @@ u8 func1028_shuttle_immunity[] = {
|
||||
reloop(0xe4)
|
||||
|
||||
label(0x2e)
|
||||
unset_object_flag_bank0(OBJ_SKEDAR_SHUTTLE, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(OBJ_SKEDAR_SHUTTLE, OBJFLAG_INVINCIBLE)
|
||||
endloop(0xe4)
|
||||
|
||||
label(0x08)
|
||||
@@ -3816,7 +3816,7 @@ u8 func1028_shuttle_immunity[] = {
|
||||
|
||||
u8 func1029_setup_rtracker[] = {
|
||||
yield
|
||||
set_object_flag_bank2(OBJ_DEVASTATOR, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_DEVASTATOR, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -3835,7 +3835,7 @@ u8 func102a_setup_lighting[] = {
|
||||
|
||||
u8 func102b_safedoor_immunity[] = {
|
||||
if_difficulty_lt(DIFF_PA, /*goto*/ 0x10)
|
||||
set_object_flag_bank0(OBJ_SAFEDOOR, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag(OBJ_SAFEDOOR, OBJFLAG_INVINCIBLE)
|
||||
|
||||
beginloop(0x04)
|
||||
if_objective_complete(2, /*goto*/ 0x2e)
|
||||
@@ -3862,16 +3862,16 @@ u8 func102b_safedoor_immunity[] = {
|
||||
|
||||
// No one in office room with laser equipped
|
||||
label(0x0e)
|
||||
set_object_flag_bank0(OBJ_SAFEDOOR, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag(OBJ_SAFEDOOR, OBJFLAG_INVINCIBLE)
|
||||
reloop(0x04)
|
||||
|
||||
label(0x0f)
|
||||
unset_object_flag_bank0(OBJ_SAFEDOOR, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(OBJ_SAFEDOOR, OBJFLAG_INVINCIBLE)
|
||||
endloop(0x04)
|
||||
|
||||
// A and SA
|
||||
label(0x10)
|
||||
set_object_flag_bank0(OBJ_SAFEDOOR, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag(OBJ_SAFEDOOR, OBJFLAG_INVINCIBLE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -3881,16 +3881,16 @@ u8 func102c_door_flags[] = {
|
||||
if_chr_death_animation_finished(CHR_ANTI, /*goto*/ 0x0f)
|
||||
lock_door(0x23, 0x40)
|
||||
lock_door(0x24, 0x40)
|
||||
set_object_flag_bank1(0x23, OBJECTFLAG1_00000004)
|
||||
set_object_flag_bank1(0x24, OBJECTFLAG1_00000004)
|
||||
set_object_flag2(0x23, OBJFLAG2_00000004)
|
||||
set_object_flag2(0x24, OBJFLAG2_00000004)
|
||||
lock_door(0x43, 0x40)
|
||||
lock_door(0x44, 0x40)
|
||||
set_object_flag_bank1(0x43, OBJECTFLAG1_00000004)
|
||||
set_object_flag_bank1(0x44, OBJECTFLAG1_00000004)
|
||||
set_object_flag2(0x43, OBJFLAG2_00000004)
|
||||
set_object_flag2(0x44, OBJFLAG2_00000004)
|
||||
lock_door(0x54, 0x40)
|
||||
set_object_flag_bank1(0x54, OBJECTFLAG1_00000004)
|
||||
set_object_flag2(0x54, OBJFLAG2_00000004)
|
||||
lock_door(0x19, 0x40)
|
||||
set_object_flag_bank1(0x19, OBJECTFLAG1_00000004)
|
||||
set_object_flag2(0x19, OBJFLAG2_00000004)
|
||||
|
||||
beginloop(0xe4)
|
||||
if_chr_activated_object(CHR_BOND, 0x23, /*goto*/ 0x0a)
|
||||
|
||||
+65
-65
@@ -539,8 +539,8 @@ u8 func1001_objectives_failed_msg[] = {
|
||||
};
|
||||
|
||||
u8 func1400_setup_counterop[] = {
|
||||
set_object_flag_bank0(OBJ_HANGARLIFT_ELVIS, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(OBJ_HANGARLIFT_JO, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_HANGARLIFT_ELVIS, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(OBJ_HANGARLIFT_JO, OBJFLAG_DEACTIVATED)
|
||||
yield
|
||||
set_chr_team(CHR_ANTI, TEAM_ENEMY)
|
||||
set_ailist(CHR_SELF, GAILIST_REBUILD_GROUPS)
|
||||
@@ -575,10 +575,10 @@ u8 func1019_check_shields_lowered[] = {
|
||||
|
||||
u8 func1004_check_hangar_doors_opened[] = {
|
||||
yield
|
||||
set_object_flag_bank0(OBJ_HANGARDOOR1, OBJECTFLAG0_02000000)
|
||||
set_object_flag_bank0(OBJ_HANGARDOOR2, OBJECTFLAG0_02000000)
|
||||
set_object_flag_bank0(OBJ_HANGARDOOR3, OBJECTFLAG0_02000000)
|
||||
set_object_flag_bank0(OBJ_HANGARDOOR4, OBJECTFLAG0_02000000)
|
||||
set_object_flag(OBJ_HANGARDOOR1, OBJFLAG_02000000)
|
||||
set_object_flag(OBJ_HANGARDOOR2, OBJFLAG_02000000)
|
||||
set_object_flag(OBJ_HANGARDOOR3, OBJFLAG_02000000)
|
||||
set_object_flag(OBJ_HANGARDOOR4, OBJFLAG_02000000)
|
||||
|
||||
beginloop(0x04)
|
||||
chr_toggle_p1p2(CHR_SELF)
|
||||
@@ -624,10 +624,10 @@ u8 func1004_check_hangar_doors_opened[] = {
|
||||
open_door(OBJ_HANGARDOOR2)
|
||||
open_door(OBJ_HANGARDOOR3)
|
||||
open_door(OBJ_HANGARDOOR4)
|
||||
set_object_flag_bank0(OBJ_HANGARDOOR1, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_HANGARDOOR2, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_HANGARDOOR3, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_HANGARDOOR4, OBJECTFLAG0_40000000)
|
||||
set_object_flag(OBJ_HANGARDOOR1, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_HANGARDOOR2, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_HANGARDOOR3, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_HANGARDOOR4, OBJFLAG_40000000)
|
||||
restart_timer
|
||||
|
||||
beginloop(0x09)
|
||||
@@ -1255,8 +1255,8 @@ u8 func1007_check_entered_slayer_area[] = {
|
||||
};
|
||||
|
||||
u8 func1008_hangar_lifts[] = {
|
||||
set_object_flag_bank0(OBJ_HANGARLIFT_ELVIS, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(OBJ_HANGARLIFT_JO, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_HANGARLIFT_ELVIS, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(OBJ_HANGARLIFT_JO, OBJFLAG_DEACTIVATED)
|
||||
|
||||
// Wait until kills done
|
||||
beginloop(0x08)
|
||||
@@ -1266,7 +1266,7 @@ u8 func1008_hangar_lifts[] = {
|
||||
// Activate Jo's lift so it starts going to bottom
|
||||
label(0x2c)
|
||||
dprint 'U','N','\n',0,
|
||||
unset_object_flag_bank0(OBJ_HANGARLIFT_JO, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_HANGARLIFT_JO, OBJFLAG_DEACTIVATED)
|
||||
yield
|
||||
yield
|
||||
yield
|
||||
@@ -1287,13 +1287,13 @@ u8 func1008_hangar_lifts[] = {
|
||||
|
||||
// Deactivate lift and open door
|
||||
label(0x66)
|
||||
set_object_flag_bank0(0x39, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x3a, OBJECTFLAG0_40000000)
|
||||
unset_object_flag_bank0(OBJ_HANGARLIFT_JO, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(0x39, OBJFLAG_40000000)
|
||||
set_object_flag(0x3a, OBJFLAG_40000000)
|
||||
unset_object_flag(OBJ_HANGARLIFT_JO, OBJFLAG_DEACTIVATED)
|
||||
open_door(0x39)
|
||||
open_door(0x3a)
|
||||
yield
|
||||
set_object_flag_bank0(OBJ_HANGARLIFT_JO, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_HANGARLIFT_JO, OBJFLAG_DEACTIVATED)
|
||||
|
||||
beginloop(0x67)
|
||||
dprint 'T','R','\n',0,
|
||||
@@ -1320,9 +1320,9 @@ u8 func1008_hangar_lifts[] = {
|
||||
// hence the 5 second wait if entered as soon as the door opens.
|
||||
label(0x2c)
|
||||
set_chr_hiddenflag(CHR_BOND, CHRHFLAG_TRIGGER_BUDDY_WARP)
|
||||
unset_object_flag_bank0(0x39, OBJECTFLAG0_40000000)
|
||||
unset_object_flag_bank0(0x3a, OBJECTFLAG0_40000000)
|
||||
unset_object_flag_bank0(OBJ_HANGARLIFT_JO, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(0x39, OBJFLAG_40000000)
|
||||
unset_object_flag(0x3a, OBJFLAG_40000000)
|
||||
unset_object_flag(OBJ_HANGARLIFT_JO, OBJFLAG_DEACTIVATED)
|
||||
|
||||
// Wait until Y coordinate >= 400
|
||||
beginloop(0x09)
|
||||
@@ -1341,8 +1341,8 @@ u8 func1008_hangar_lifts[] = {
|
||||
endloop(0x0a)
|
||||
|
||||
label(0x2c)
|
||||
set_object_flag_bank0(OBJ_HANGARLIFT_JO, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag_bank0(OBJ_HANGARLIFT_ELVIS, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_HANGARLIFT_JO, OBJFLAG_DEACTIVATED)
|
||||
unset_object_flag(OBJ_HANGARLIFT_ELVIS, OBJFLAG_DEACTIVATED)
|
||||
if_chr_death_animation_finished(CHR_ELVIS, /*goto*/ 0x2c)
|
||||
if_chr_unloaded(CHR_ELVIS, /*goto*/ 0x2c)
|
||||
if_chr_dying(CHR_ELVIS, /*goto*/ 0x2c)
|
||||
@@ -1362,7 +1362,7 @@ u8 func1008_hangar_lifts[] = {
|
||||
|
||||
// Activate his lift and wait 2 seconds
|
||||
label(0x2c)
|
||||
unset_object_flag_bank0(OBJ_HANGARLIFT_ELVIS, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_HANGARLIFT_ELVIS, OBJFLAG_DEACTIVATED)
|
||||
restart_timer
|
||||
|
||||
beginloop(0x0b)
|
||||
@@ -1384,9 +1384,9 @@ u8 func1008_hangar_lifts[] = {
|
||||
// Check Elvis actually rode the lift up, and if not then go into a loop
|
||||
// attempting to warp him.
|
||||
beginloop(0x64)
|
||||
set_object_flag_bank0(OBJ_HANGARLIFT_ELVIS, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag_bank0(0x3b, OBJECTFLAG0_02000000)
|
||||
unset_object_flag_bank0(0x3c, OBJECTFLAG0_02000000)
|
||||
set_object_flag(OBJ_HANGARLIFT_ELVIS, OBJFLAG_DEACTIVATED)
|
||||
unset_object_flag(0x3b, OBJFLAG_02000000)
|
||||
unset_object_flag(0x3c, OBJFLAG_02000000)
|
||||
unset_chr_hiddenflag(CHR_BOND, CHRHFLAG_TRIGGER_BUDDY_WARP)
|
||||
if_chr_y(CHR_ELVIS, 400, OPERATOR_LESS_THAN, /*goto*/ 0x06)
|
||||
goto_next(0x68)
|
||||
@@ -1417,7 +1417,7 @@ u8 func1008_hangar_lifts[] = {
|
||||
// Bring Elvis's lift down
|
||||
label(0x2c)
|
||||
play_sound(0x81a6, -1)
|
||||
unset_object_flag_bank0(OBJ_HANGARLIFT_ELVIS, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_HANGARLIFT_ELVIS, OBJFLAG_DEACTIVATED)
|
||||
yield
|
||||
yield
|
||||
yield
|
||||
@@ -1921,21 +1921,21 @@ u8 func100c_engineroom[] = {
|
||||
|
||||
// Timer expired
|
||||
label(0x2c)
|
||||
unset_object_flag_bank0(0x1b, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank0(0x1c, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank0(0x1d, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank0(0x1e, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank0(0x1f, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank0(0x20, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag_bank1(0x1b, OBJECTFLAG1_80000000)
|
||||
set_object_flag_bank1(0x1c, OBJECTFLAG1_80000000)
|
||||
set_object_flag_bank1(0x1d, OBJECTFLAG1_80000000)
|
||||
set_object_flag_bank1(0x1e, OBJECTFLAG1_80000000)
|
||||
set_object_flag_bank1(0x1f, OBJECTFLAG1_80000000)
|
||||
set_object_flag_bank1(0x20, OBJECTFLAG1_80000000)
|
||||
unset_object_flag(0x1b, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag(0x1c, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag(0x1d, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag(0x1e, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag(0x1f, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag(0x20, OBJFLAG_INVINCIBLE)
|
||||
set_object_flag2(0x1b, OBJFLAG2_80000000)
|
||||
set_object_flag2(0x1c, OBJFLAG2_80000000)
|
||||
set_object_flag2(0x1d, OBJFLAG2_80000000)
|
||||
set_object_flag2(0x1e, OBJFLAG2_80000000)
|
||||
set_object_flag2(0x1f, OBJFLAG2_80000000)
|
||||
set_object_flag2(0x20, OBJFLAG2_80000000)
|
||||
label(0x06)
|
||||
hide_countdown_timer
|
||||
unset_object_flag_bank0(0x21, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(0x21, OBJFLAG_INVINCIBLE)
|
||||
destroy_object(0x21)
|
||||
destroy_object(0x1b)
|
||||
destroy_object(0x1c)
|
||||
@@ -1973,9 +1973,9 @@ u8 func100d_prebridgelift[] = {
|
||||
// Deactivate lift
|
||||
label(0x2c)
|
||||
label(0x64)
|
||||
set_object_flag_bank0(OBJ_PREBRIDGELIFT, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag_bank0(0x3d, OBJECTFLAG0_02000000)
|
||||
unset_object_flag_bank0(0x3e, OBJECTFLAG0_02000000)
|
||||
set_object_flag(OBJ_PREBRIDGELIFT, OBJFLAG_DEACTIVATED)
|
||||
unset_object_flag(0x3d, OBJFLAG_02000000)
|
||||
unset_object_flag(0x3e, OBJFLAG_02000000)
|
||||
|
||||
// Wait until lift called at bottom by buddy or counterop
|
||||
beginloop(0x68)
|
||||
@@ -1989,7 +1989,7 @@ u8 func100d_prebridgelift[] = {
|
||||
// Activate lift
|
||||
label(0x2c)
|
||||
play_sound(0x81a6, -1)
|
||||
unset_object_flag_bank0(OBJ_PREBRIDGELIFT, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_PREBRIDGELIFT, OBJFLAG_DEACTIVATED)
|
||||
yield
|
||||
yield
|
||||
yield
|
||||
@@ -2055,9 +2055,9 @@ u8 func100e_bridgelift[] = {
|
||||
|
||||
// Deactive lift
|
||||
label(0x64)
|
||||
set_object_flag_bank0(OBJ_BRIDGELIFT, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag_bank0(0x2f, OBJECTFLAG0_02000000)
|
||||
unset_object_flag_bank0(0x30, OBJECTFLAG0_02000000)
|
||||
set_object_flag(OBJ_BRIDGELIFT, OBJFLAG_DEACTIVATED)
|
||||
unset_object_flag(0x2f, OBJFLAG_02000000)
|
||||
unset_object_flag(0x30, OBJFLAG_02000000)
|
||||
|
||||
// Wait until lift called from below by buddy or counterop
|
||||
beginloop(0x68)
|
||||
@@ -2071,7 +2071,7 @@ u8 func100e_bridgelift[] = {
|
||||
// Activate lift
|
||||
label(0x2c)
|
||||
play_sound(0x81a6, -1)
|
||||
unset_object_flag_bank0(OBJ_BRIDGELIFT, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_BRIDGELIFT, OBJFLAG_DEACTIVATED)
|
||||
yield
|
||||
yield
|
||||
yield
|
||||
@@ -2807,8 +2807,8 @@ u8 func0c01_outro[] = {
|
||||
chr_do_animation(0x01e3, -1, -1, 0x06, 0x00, CHR_ELVIS, 4)
|
||||
|
||||
show_object(OBJ_OUTRO_SHUTTLE)
|
||||
set_object_flag_bank1(OBJ_OUTRO_SHUTTLE, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_OUTRO_SHUTTLE, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_OUTRO_SHUTTLE, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_OUTRO_SHUTTLE, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01e4, OBJ_OUTRO_SHUTTLE, 0x04ff, 0xff)
|
||||
set_object_part_visible(OBJ_OUTRO_SHUTTLE, FALSE)
|
||||
|
||||
@@ -2895,10 +2895,10 @@ u8 func0c01_outro[] = {
|
||||
open_door(OBJ_HANGARDOOR2)
|
||||
open_door(OBJ_HANGARDOOR3)
|
||||
open_door(OBJ_HANGARDOOR4)
|
||||
set_object_flag_bank0(OBJ_HANGARDOOR1, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_HANGARDOOR2, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_HANGARDOOR3, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(OBJ_HANGARDOOR4, OBJECTFLAG0_40000000)
|
||||
set_object_flag(OBJ_HANGARDOOR1, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_HANGARDOOR2, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_HANGARDOOR3, OBJFLAG_40000000)
|
||||
set_object_flag(OBJ_HANGARDOOR4, OBJFLAG_40000000)
|
||||
|
||||
beginloop(0x08)
|
||||
if_camera_animating(/*goto*/ 0x2c)
|
||||
@@ -3365,7 +3365,7 @@ u8 func1018_place_elvis_in_hangar[] = {
|
||||
u8 func1002_hangar_shuttle[] = {
|
||||
yield
|
||||
show_object(OBJ_HANGAR_SHUTTLE)
|
||||
set_object_flag_bank2(OBJ_HANGAR_SHUTTLE, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_HANGAR_SHUTTLE, OBJFLAG3_00000010)
|
||||
set_object_part_visible(OBJ_HANGAR_SHUTTLE, FALSE)
|
||||
|
||||
label(0x09)
|
||||
@@ -3481,10 +3481,10 @@ u8 func040c_elvis_run_from_engineroom[] = {
|
||||
u8 func101f_enable_bridge_skedar[] = {
|
||||
lock_door(0x41, 0x80)
|
||||
lock_door(0x42, 0x80)
|
||||
set_object_flag_bank1(0x41, OBJECTFLAG1_10000000)
|
||||
set_object_flag_bank1(0x42, OBJECTFLAG1_08000000)
|
||||
set_object_flag_bank1(0x41, OBJECTFLAG1_20000000)
|
||||
set_object_flag_bank1(0x42, OBJECTFLAG1_20000000)
|
||||
set_object_flag2(0x41, OBJFLAG2_10000000)
|
||||
set_object_flag2(0x42, OBJFLAG2_08000000)
|
||||
set_object_flag2(0x41, OBJFLAG2_20000000)
|
||||
set_object_flag2(0x42, OBJFLAG2_20000000)
|
||||
|
||||
// Wait until first 4 objectives complete
|
||||
beginloop(0x04)
|
||||
@@ -3508,10 +3508,10 @@ u8 func101f_enable_bridge_skedar[] = {
|
||||
label(0x2c)
|
||||
unlock_door(0x41, 0x80)
|
||||
unlock_door(0x42, 0x80)
|
||||
unset_object_flag_bank1(0x41, OBJECTFLAG1_10000000)
|
||||
unset_object_flag_bank1(0x42, OBJECTFLAG1_08000000)
|
||||
unset_object_flag_bank1(0x41, OBJECTFLAG1_20000000)
|
||||
unset_object_flag_bank1(0x42, OBJECTFLAG1_20000000)
|
||||
unset_object_flag2(0x41, OBJFLAG2_10000000)
|
||||
unset_object_flag2(0x42, OBJFLAG2_08000000)
|
||||
unset_object_flag2(0x41, OBJFLAG2_20000000)
|
||||
unset_object_flag2(0x42, OBJFLAG2_20000000)
|
||||
show_chr(0x21)
|
||||
show_chr(0x22)
|
||||
show_chr(CHR_BRIDGE1)
|
||||
@@ -3565,8 +3565,8 @@ u8 func1021_check_ammo_wasted[] = {
|
||||
u8 func1022_setup_rtracker[] = {
|
||||
// @bug: The Slayer is not R-tracked
|
||||
yield
|
||||
set_object_flag_bank2(OBJ_MAULER1, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag_bank2(OBJ_MAULER2, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_MAULER1, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_MAULER2, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
||||
+49
-49
@@ -1597,14 +1597,14 @@ u8 func100a_random_doors[] = {
|
||||
endloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
set_object_flag_bank0(0x07, OBJECTFLAG0_02000000)
|
||||
set_object_flag_bank0(0x09, OBJECTFLAG0_02000000)
|
||||
set_object_flag_bank0(0x0b, OBJECTFLAG0_02000000)
|
||||
set_object_flag_bank0(0x0d, OBJECTFLAG0_02000000)
|
||||
set_object_flag_bank0(0x08, OBJECTFLAG0_02000000)
|
||||
set_object_flag_bank0(0x0a, OBJECTFLAG0_02000000)
|
||||
set_object_flag_bank0(0x0c, OBJECTFLAG0_02000000)
|
||||
set_object_flag_bank0(0x0e, OBJECTFLAG0_02000000)
|
||||
set_object_flag(0x07, OBJFLAG_02000000)
|
||||
set_object_flag(0x09, OBJFLAG_02000000)
|
||||
set_object_flag(0x0b, OBJFLAG_02000000)
|
||||
set_object_flag(0x0d, OBJFLAG_02000000)
|
||||
set_object_flag(0x08, OBJFLAG_02000000)
|
||||
set_object_flag(0x0a, OBJFLAG_02000000)
|
||||
set_object_flag(0x0c, OBJFLAG_02000000)
|
||||
set_object_flag(0x0e, OBJFLAG_02000000)
|
||||
|
||||
beginloop(0x03)
|
||||
// 55 in 256 chance of doing anything on a given frame
|
||||
@@ -1812,8 +1812,8 @@ u8 func0418_doorman[] = {
|
||||
|
||||
// Unlocking
|
||||
label(0x06)
|
||||
unset_object_flag_bank1(0x4a, OBJECTFLAG1_20000000)
|
||||
unset_object_flag_bank1(0x4b, OBJECTFLAG1_20000000)
|
||||
unset_object_flag2(0x4a, OBJFLAG2_20000000)
|
||||
unset_object_flag2(0x4b, OBJFLAG2_20000000)
|
||||
unlock_door(0x4a, 0x40)
|
||||
unlock_door(0x4b, 0x40)
|
||||
open_door(0x4a)
|
||||
@@ -2240,7 +2240,7 @@ u8 func1010_give_keycard[] = {
|
||||
dprint 'G','I','V','E',' ','T','O','7',0,
|
||||
|
||||
label(0x2d)
|
||||
unset_object_flag_bank1(0x10, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(0x10, OBJFLAG2_INVISIBLE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -2470,7 +2470,7 @@ u8 func1014_check_crate_destroyed[] = {
|
||||
// have been changed at some point, but the unsetting of the flag remains.
|
||||
beginloop(0x04)
|
||||
if_object_in_good_condition(OBJ_CRATE, /*goto*/ 0x06)
|
||||
unset_object_flag_bank0(OBJ_WALL, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(OBJ_WALL, OBJFLAG_INVINCIBLE)
|
||||
yield
|
||||
yield
|
||||
yield
|
||||
@@ -2968,7 +2968,7 @@ u8 func0420_labtech_doors[] = {
|
||||
};
|
||||
|
||||
u8 func1017_activate_autogun[] = {
|
||||
set_object_flag_bank0(OBJ_AUTOGUN, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_AUTOGUN, OBJFLAG_DEACTIVATED)
|
||||
|
||||
beginloop(0x04)
|
||||
if_stage_flag_eq(STAGEFLAG_AUTOGUN_ACTIVATED, TRUE, /*goto*/ 0x06)
|
||||
@@ -2979,7 +2979,7 @@ u8 func1017_activate_autogun[] = {
|
||||
goto_next(0x06)
|
||||
|
||||
label(0x2d)
|
||||
unset_object_flag_bank0(OBJ_AUTOGUN, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_AUTOGUN, OBJFLAG_DEACTIVATED)
|
||||
label(0x06)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
@@ -3134,14 +3134,14 @@ u8 func0422_labtech_records[] = {
|
||||
* go up and down.
|
||||
*/
|
||||
u8 func1018_disable_chambers[] = {
|
||||
set_object_flag_bank0(OBJ_CHAMBER1, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(OBJ_CHAMBER2, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(OBJ_CHAMBER3, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(OBJ_CHAMBER4, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(OBJ_CHAMBER5, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(OBJ_CHAMBER6, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(OBJ_CHAMBER7, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(OBJ_CHAMBER8, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_CHAMBER1, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(OBJ_CHAMBER2, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(OBJ_CHAMBER3, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(OBJ_CHAMBER4, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(OBJ_CHAMBER5, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(OBJ_CHAMBER6, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(OBJ_CHAMBER7, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(OBJ_CHAMBER8, OBJFLAG_DEACTIVATED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -3167,7 +3167,7 @@ u8 func1018_disable_chambers[] = {
|
||||
control_sound_from_object(CHANNEL_7, switch, TRUE) \
|
||||
message(CHR_P1P2, 0x2a42) /* "Containment unit raised up." */ \
|
||||
set_object_image(switch, 0x00, 0x13) \
|
||||
unset_object_flag_bank0(chamber, OBJECTFLAG0_DEACTIVATED) \
|
||||
unset_object_flag(chamber, OBJFLAG_DEACTIVATED) \
|
||||
set_stage_flag(stageflag) \
|
||||
restart_timer \
|
||||
\
|
||||
@@ -3179,7 +3179,7 @@ u8 func1018_disable_chambers[] = {
|
||||
mute_channel(CHANNEL_0) \
|
||||
assign_sound(0x042c, CHANNEL_0) \
|
||||
control_sound_from_object(CHANNEL_0, chamber, TRUE) \
|
||||
set_object_flag_bank0(chamber, OBJECTFLAG0_DEACTIVATED) \
|
||||
set_object_flag(chamber, OBJFLAG_DEACTIVATED) \
|
||||
reloop(0x04) \
|
||||
\
|
||||
/* Lowering chamber */ \
|
||||
@@ -3191,7 +3191,7 @@ u8 func1018_disable_chambers[] = {
|
||||
control_sound_from_object(CHANNEL_7, switch, TRUE) \
|
||||
message(CHR_P1P2, 0x2a43) /* "Containment unit lowered down." */ \
|
||||
set_object_image(switch, 0x00, 0x12) \
|
||||
unset_object_flag_bank0(chamber, OBJECTFLAG0_DEACTIVATED) \
|
||||
unset_object_flag(chamber, OBJFLAG_DEACTIVATED) \
|
||||
unset_stage_flag(stageflag) \
|
||||
restart_timer \
|
||||
\
|
||||
@@ -3203,7 +3203,7 @@ u8 func1018_disable_chambers[] = {
|
||||
mute_channel(CHANNEL_0) \
|
||||
assign_sound(0x042c, CHANNEL_0) \
|
||||
control_sound_from_object(CHANNEL_0, chamber, TRUE) \
|
||||
set_object_flag_bank0(chamber, OBJECTFLAG0_DEACTIVATED) \
|
||||
set_object_flag(chamber, OBJFLAG_DEACTIVATED) \
|
||||
endloop(0x04)
|
||||
|
||||
|
||||
@@ -3229,7 +3229,7 @@ u8 func1019_chamber1[] = {
|
||||
control_sound_from_object(CHANNEL_7, OBJ_CHAMBER1_SWITCH, TRUE)
|
||||
set_object_image(OBJ_CHAMBER1_SWITCH, 0x00, 0x13)
|
||||
message(CHR_P1P2, 0x2a42) // "Containment unit raised up."
|
||||
unset_object_flag_bank0(OBJ_CHAMBER1, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_CHAMBER1, OBJFLAG_DEACTIVATED)
|
||||
set_stage_flag(STAGEFLAG_CHAMBER1_RAISED)
|
||||
restart_timer
|
||||
|
||||
@@ -3252,7 +3252,7 @@ u8 func1019_chamber1[] = {
|
||||
unset_chr_chrflag(CHR_ALIEN, CHRCFLAG_HIDDEN)
|
||||
set_ailist(CHR_ALIEN, AILIST_CHECK_LOOKING_AT_ALIEN)
|
||||
label(0x06)
|
||||
set_object_flag_bank0(OBJ_CHAMBER1, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_CHAMBER1, OBJFLAG_DEACTIVATED)
|
||||
reloop(0x04)
|
||||
|
||||
// Lowering chamber
|
||||
@@ -3265,7 +3265,7 @@ u8 func1019_chamber1[] = {
|
||||
control_sound_from_object(CHANNEL_7, OBJ_CHAMBER1_SWITCH, TRUE)
|
||||
set_object_image(OBJ_CHAMBER1_SWITCH, 0x00, 0x12)
|
||||
message(CHR_P1P2, 0x2a43) // "Containment unit lowered down."
|
||||
unset_object_flag_bank0(OBJ_CHAMBER1, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_CHAMBER1, OBJFLAG_DEACTIVATED)
|
||||
unset_stage_flag(STAGEFLAG_CHAMBER1_RAISED)
|
||||
restart_timer
|
||||
|
||||
@@ -3277,7 +3277,7 @@ u8 func1019_chamber1[] = {
|
||||
mute_channel(CHANNEL_0)
|
||||
assign_sound(0x042c, CHANNEL_0)
|
||||
control_sound_from_object(CHANNEL_0, OBJ_CHAMBER1, TRUE)
|
||||
set_object_flag_bank0(OBJ_CHAMBER1, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_CHAMBER1, OBJFLAG_DEACTIVATED)
|
||||
endloop(0x04)
|
||||
endlist
|
||||
};
|
||||
@@ -3300,7 +3300,7 @@ u8 func101a_chamber2[] = {
|
||||
control_sound_from_object(CHANNEL_7, OBJ_CHAMBER2_SWITCH, TRUE)
|
||||
set_object_image(OBJ_CHAMBER2_SWITCH, 0x00, 0x13)
|
||||
message(CHR_P1P2, 0x2a42) // "Containment unit raised up."
|
||||
unset_object_flag_bank0(OBJ_CHAMBER2, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_CHAMBER2, OBJFLAG_DEACTIVATED)
|
||||
set_stage_flag(STAGEFLAG_CHAMBER2_RAISED)
|
||||
restart_timer
|
||||
|
||||
@@ -3313,7 +3313,7 @@ u8 func101a_chamber2[] = {
|
||||
assign_sound(0x042c, CHANNEL_0)
|
||||
control_sound_from_object(CHANNEL_0, OBJ_CHAMBER2, TRUE)
|
||||
|
||||
set_object_flag_bank0(OBJ_CHAMBER2, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_CHAMBER2, OBJFLAG_DEACTIVATED)
|
||||
reloop(0x04)
|
||||
|
||||
// Lowering chamber
|
||||
@@ -3325,7 +3325,7 @@ u8 func101a_chamber2[] = {
|
||||
control_sound_from_object(CHANNEL_7, OBJ_CHAMBER2_SWITCH, TRUE)
|
||||
set_object_image(OBJ_CHAMBER2_SWITCH, 0x00, 0x12)
|
||||
message(CHR_P1P2, 0x2a43) // "Containment unit lowered down."
|
||||
unset_object_flag_bank0(OBJ_CHAMBER2, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_CHAMBER2, OBJFLAG_DEACTIVATED)
|
||||
unset_stage_flag(STAGEFLAG_CHAMBER2_RAISED)
|
||||
restart_timer
|
||||
|
||||
@@ -3337,7 +3337,7 @@ u8 func101a_chamber2[] = {
|
||||
mute_channel(CHANNEL_0)
|
||||
assign_sound(0x042c, CHANNEL_0)
|
||||
control_sound_from_object(CHANNEL_0, OBJ_CHAMBER2, TRUE)
|
||||
set_object_flag_bank0(OBJ_CHAMBER2, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_CHAMBER2, OBJFLAG_DEACTIVATED)
|
||||
endloop(0x04)
|
||||
endlist
|
||||
};
|
||||
@@ -3387,7 +3387,7 @@ u8 func1020_chamber8[] = {
|
||||
control_sound_from_object(CHANNEL_7, OBJ_CHAMBER8_SWITCH, TRUE)
|
||||
message(CHR_P1P2, 0x2a42) // "Containment unit raised up."
|
||||
set_object_image(OBJ_CHAMBER8_SWITCH, 0x00, 0x13)
|
||||
unset_object_flag_bank0(OBJ_CHAMBER8, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_CHAMBER8, OBJFLAG_DEACTIVATED)
|
||||
set_stage_flag(STAGEFLAG_CHAMBER8_RAISED)
|
||||
restart_timer
|
||||
|
||||
@@ -3400,7 +3400,7 @@ u8 func1020_chamber8[] = {
|
||||
assign_sound(0x042c, CHANNEL_0)
|
||||
control_sound_from_object(CHANNEL_0, OBJ_CHAMBER8, TRUE)
|
||||
|
||||
set_object_flag_bank0(OBJ_CHAMBER8, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_CHAMBER8, OBJFLAG_DEACTIVATED)
|
||||
reloop(0x04)
|
||||
|
||||
// Lowering chamber
|
||||
@@ -3413,7 +3413,7 @@ u8 func1020_chamber8[] = {
|
||||
control_sound_from_object(CHANNEL_7, OBJ_CHAMBER8_SWITCH, TRUE)
|
||||
message(CHR_P1P2, 0x2a43) // "Containment unit lowered down."
|
||||
set_object_image(OBJ_CHAMBER8_SWITCH, 0x00, 0x12)
|
||||
unset_object_flag_bank0(OBJ_CHAMBER8, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_CHAMBER8, OBJFLAG_DEACTIVATED)
|
||||
unset_stage_flag(STAGEFLAG_CHAMBER8_RAISED)
|
||||
restart_timer
|
||||
|
||||
@@ -3425,7 +3425,7 @@ u8 func1020_chamber8[] = {
|
||||
mute_channel(CHANNEL_0)
|
||||
assign_sound(0x042c, CHANNEL_0)
|
||||
control_sound_from_object(CHANNEL_0, OBJ_CHAMBER8, TRUE)
|
||||
set_object_flag_bank0(OBJ_CHAMBER8, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_CHAMBER8, OBJFLAG_DEACTIVATED)
|
||||
endloop(0x04)
|
||||
endlist
|
||||
};
|
||||
@@ -3659,8 +3659,8 @@ u8 func0c01_outro[] = {
|
||||
set_chr_hiddenflag(CHR_BIOTECH2, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x019b, -1, -1, 0x06, 0x00, CHR_BIOTECH2, 4)
|
||||
|
||||
set_object_flag_bank1(0x2f, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x2f, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x2f, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x2f, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01a1, 0x2f, 0x04ff, 0xff)
|
||||
show_nonessential_chrs(FALSE)
|
||||
restart_timer
|
||||
@@ -3761,8 +3761,8 @@ u8 func1002_intro[] = {
|
||||
set_chr_hiddenflag(CHR_INTRO_DEAD_GUARD, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x01c9, -1, -1, 0x06, 0x00, CHR_INTRO_DEAD_GUARD, 4)
|
||||
|
||||
set_object_flag_bank1(OBJ_CRATE, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_CRATE, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_CRATE, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_CRATE, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01ca, OBJ_CRATE, 0x04ff, 0xff)
|
||||
|
||||
restart_timer
|
||||
@@ -3912,8 +3912,8 @@ u8 func1002_intro[] = {
|
||||
set_chr_hiddenflag(CHR_INTRO_DEAD_GUARD, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x01c9, -2, -1, 0x06, 0x00, CHR_INTRO_DEAD_GUARD, 2)
|
||||
mute_channel(CHANNEL_10)
|
||||
unset_object_flag_bank1(OBJ_CRATE, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_CRATE, OBJECTFLAG2_00000010)
|
||||
unset_object_flag2(OBJ_CRATE, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_CRATE, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01ca, OBJ_CRATE, 0x01ff, 0xfe)
|
||||
close_door(0x33)
|
||||
close_door(0x34)
|
||||
@@ -4317,7 +4317,7 @@ u8 func0416_become_unaware[] = {
|
||||
};
|
||||
|
||||
u8 unregistered_function2[] = {
|
||||
set_object_flag_bank0(OBJ_WALL, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag(OBJ_WALL, OBJFLAG_INVINCIBLE)
|
||||
|
||||
beginloop(0x04)
|
||||
if_object_in_good_condition(OBJ_CRATE, /*goto*/ 0x2d)
|
||||
@@ -4328,7 +4328,7 @@ u8 unregistered_function2[] = {
|
||||
|
||||
// Crate destroyed
|
||||
label(0x06)
|
||||
unset_object_flag_bank0(OBJ_WALL, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(OBJ_WALL, OBJFLAG_INVINCIBLE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -4516,9 +4516,9 @@ u8 func1033_update_buddy_placed_flag[] = {
|
||||
|
||||
u8 func1034_setup_rtracker[] = {
|
||||
yield
|
||||
set_object_flag_bank2(OBJ_FALCON2SILENCED1, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag_bank2(OBJ_FALCON2SILENCED2, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag_bank2(OBJ_PHOENIX, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_FALCON2SILENCED1, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_FALCON2SILENCED2, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_PHOENIX, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
||||
+54
-54
@@ -929,7 +929,7 @@ u8 func0c00_init_intro[] = {
|
||||
};
|
||||
|
||||
u8 func140e_check_interceptors_destroyed[] = {
|
||||
set_object_flag_bank0(OBJ_AUTOGUN_AT_START, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_AUTOGUN_AT_START, OBJFLAG_DEACTIVATED)
|
||||
|
||||
beginloop(0x04)
|
||||
if_object_in_good_condition(OBJ_INTERCEPTOR1, /*goto*/ 0x2e)
|
||||
@@ -1104,7 +1104,7 @@ u8 func1004_check_antenna_destroyed[] = {
|
||||
};
|
||||
|
||||
u8 func1405_antenna_switch[] = {
|
||||
set_object_flag_bank0(OBJ_ANTENNA, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_ANTENNA, OBJFLAG_DEACTIVATED)
|
||||
|
||||
beginloop(0x04)
|
||||
chr_toggle_p1p2(CHR_SELF)
|
||||
@@ -1116,7 +1116,7 @@ u8 func1405_antenna_switch[] = {
|
||||
play_sound_from_object2(CHANNEL_9, OBJ_ANTENNA_SWITCH, 0x801e, 0x00, 0x00)
|
||||
play_sound_from_object2(CHANNEL_1, OBJ_ANTENNA, 0x00cd, 0x00, 0x02)
|
||||
set_object_image(OBJ_ANTENNA_SWITCH, 0x00, 0x12)
|
||||
unset_object_flag_bank0(OBJ_ANTENNA, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_ANTENNA, OBJFLAG_DEACTIVATED)
|
||||
message(CHR_P1P2, 0x2c1e) // "Antenna lowered."
|
||||
set_stage_flag(STAGEFLAG_ANTENNA_LOWERED)
|
||||
restart_timer
|
||||
@@ -1132,14 +1132,14 @@ u8 func1405_antenna_switch[] = {
|
||||
label(0x2e)
|
||||
mute_channel(CHANNEL_1)
|
||||
play_sound_from_object2(CHANNEL_9, OBJ_ANTENNA_SWITCH, 0x801f, 0x00, 0x00)
|
||||
set_object_flag_bank0(OBJ_ANTENNA, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_ANTENNA, OBJFLAG_DEACTIVATED)
|
||||
reloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
play_sound_from_object2(CHANNEL_9, OBJ_ANTENNA_SWITCH, 0x801e, 0x00, 0x00)
|
||||
play_sound_from_object2(CHANNEL_1, OBJ_ANTENNA, 0x00cd, 0x00, 0x02)
|
||||
set_object_image(OBJ_ANTENNA_SWITCH, 0x00, 0x13)
|
||||
unset_object_flag_bank0(OBJ_ANTENNA, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_ANTENNA, OBJFLAG_DEACTIVATED)
|
||||
unset_stage_flag(STAGEFLAG_ANTENNA_LOWERED)
|
||||
message(CHR_P1P2, 0x2c1d) // "Antenna raised."
|
||||
restart_timer
|
||||
@@ -1155,7 +1155,7 @@ u8 func1405_antenna_switch[] = {
|
||||
label(0x2e)
|
||||
mute_channel(CHANNEL_1)
|
||||
play_sound_from_object2(CHANNEL_9, OBJ_ANTENNA_SWITCH, 0x801f, 0x00, 0x00)
|
||||
set_object_flag_bank0(OBJ_ANTENNA, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_ANTENNA, OBJFLAG_DEACTIVATED)
|
||||
endloop(0x04)
|
||||
|
||||
endlist
|
||||
@@ -1649,13 +1649,13 @@ u8 func0416_mechanic[] = {
|
||||
|
||||
u8 func1001_objectives_failed_msg[] = {
|
||||
yield
|
||||
set_object_flag_bank1(OBJ_MINE1, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(OBJ_MINE2, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(OBJ_MINE3, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(0x1a, OBJECTFLAG1_INVISIBLE) // invalid object
|
||||
set_object_flag_bank1(OBJ_MINE4, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(OBJ_MINE5, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(OBJ_MINE6, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag2(OBJ_MINE1, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(OBJ_MINE2, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(OBJ_MINE3, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(0x1a, OBJFLAG2_INVISIBLE) // invalid object
|
||||
set_object_flag2(OBJ_MINE4, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(OBJ_MINE5, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(OBJ_MINE6, OBJFLAG2_INVISIBLE)
|
||||
set_chr_chrflag(CHR_MECHANIC, CHRCFLAG_04000000)
|
||||
set_ailist(CHR_SELF, GAILIST_SHOW_OBJ_FAILED_MSG)
|
||||
endlist
|
||||
@@ -1663,7 +1663,7 @@ u8 func1001_objectives_failed_msg[] = {
|
||||
|
||||
u8 func040a_top_interceptor[] = {
|
||||
set_chr_maxdamage(CHR_SELF, 5000)
|
||||
set_object_flag_bank0(OBJ_INTERCEPTOR3, OBJECTFLAG0_INTERCEPTOR_DISABLED)
|
||||
set_object_flag(OBJ_INTERCEPTOR3, OBJFLAG_INTERCEPTOR_DISABLED)
|
||||
restart_timer
|
||||
|
||||
beginloop(0x03)
|
||||
@@ -1674,7 +1674,7 @@ u8 func040a_top_interceptor[] = {
|
||||
endloop(0x03)
|
||||
|
||||
label(0x06)
|
||||
unset_object_flag_bank0(OBJ_INTERCEPTOR3, OBJECTFLAG0_INTERCEPTOR_DISABLED)
|
||||
unset_object_flag(OBJ_INTERCEPTOR3, OBJFLAG_INTERCEPTOR_DISABLED)
|
||||
chopper_arm_weapons
|
||||
begin_hovercar_path(0x22)
|
||||
set_chr_maxdamage(CHR_SELF, 5000)
|
||||
@@ -1728,8 +1728,8 @@ u8 func040a_top_interceptor[] = {
|
||||
|
||||
u8 func040c_init_bottom_interceptors[] = {
|
||||
set_chr_maxdamage(CHR_SELF, 5000)
|
||||
set_object_flag_bank0(OBJ_INTERCEPTOR1, OBJECTFLAG0_INTERCEPTOR_DISABLED)
|
||||
set_object_flag_bank0(OBJ_INTERCEPTOR2, OBJECTFLAG0_INTERCEPTOR_DISABLED)
|
||||
set_object_flag(OBJ_INTERCEPTOR1, OBJFLAG_INTERCEPTOR_DISABLED)
|
||||
set_object_flag(OBJ_INTERCEPTOR2, OBJFLAG_INTERCEPTOR_DISABLED)
|
||||
|
||||
beginloop(0x04)
|
||||
endloop(0x04)
|
||||
@@ -1955,8 +1955,8 @@ u8 func0410_intro[] = {
|
||||
set_chr_hiddenflag(0x2b, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x0186, -1, -1, 0x06, 0x00, 0x2b, 4)
|
||||
|
||||
set_object_flag_bank1(0x2f, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x2f, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x2f, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x2f, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0187, 0x2f, 0x04ff, 0xff)
|
||||
restart_timer
|
||||
|
||||
@@ -1980,7 +1980,7 @@ u8 func0410_intro[] = {
|
||||
unset_chr_chrflag(0x29, CHRCFLAG_UNPLAYABLE)
|
||||
unset_chr_chrflag(0x2a, CHRCFLAG_UNPLAYABLE)
|
||||
unset_chr_chrflag(0x2b, CHRCFLAG_UNPLAYABLE)
|
||||
unset_object_flag_bank1(0x2f, OBJECTFLAG1_04000000)
|
||||
unset_object_flag2(0x2f, OBJFLAG2_04000000)
|
||||
label(0x54)
|
||||
if_controller_button_pressed(/*goto*/ 0x54)
|
||||
camera_movement(0x0188)
|
||||
@@ -1996,8 +1996,8 @@ u8 func0410_intro[] = {
|
||||
set_chr_hiddenflag(0x2b, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x018a, -1, -1, 0x06, 0x00, 0x2b, 4)
|
||||
|
||||
set_object_flag_bank1(0x2f, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x2f, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x2f, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x2f, OBJFLAG3_00000010)
|
||||
object_do_animation(0x018b, 0x2f, 0x04ff, 0xff)
|
||||
restart_timer
|
||||
|
||||
@@ -2020,7 +2020,7 @@ u8 func0410_intro[] = {
|
||||
unset_chr_chrflag(CHR_BOND, CHRCFLAG_HIDDEN)
|
||||
unset_chr_chrflag(0x2a, CHRCFLAG_UNPLAYABLE)
|
||||
unset_chr_chrflag(0x2b, CHRCFLAG_UNPLAYABLE)
|
||||
unset_object_flag_bank1(0x2f, OBJECTFLAG1_04000000)
|
||||
unset_object_flag2(0x2f, OBJFLAG2_04000000)
|
||||
label(0x54)
|
||||
camera_movement(0x00f0)
|
||||
cmd0175(60)
|
||||
@@ -2099,9 +2099,9 @@ u8 func0410_intro[] = {
|
||||
unset_chr_chrflag(0x03, CHRCFLAG_UNPLAYABLE)
|
||||
set_ailist(0x02, 0x0426)
|
||||
set_ailist(0x03, 0x0426)
|
||||
unset_object_flag_bank1(OBJ_INTERCEPTOR1, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank1(OBJ_INTERCEPTOR2, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank1(OBJ_INTERCEPTOR3, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(OBJ_INTERCEPTOR1, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag2(OBJ_INTERCEPTOR2, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag2(OBJ_INTERCEPTOR3, OBJFLAG2_INVISIBLE)
|
||||
restart_default_music
|
||||
reset_ambience
|
||||
enter_firstperson
|
||||
@@ -2315,13 +2315,13 @@ u8 func1013_bunker_lasers[] = {
|
||||
|
||||
// SA and PA
|
||||
label(0x03)
|
||||
set_object_flag_bank0(0x1e, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x1f, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x20, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x21, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x22, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x23, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x24, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x1e, OBJFLAG_40000000)
|
||||
set_object_flag(0x1f, OBJFLAG_40000000)
|
||||
set_object_flag(0x20, OBJFLAG_40000000)
|
||||
set_object_flag(0x21, OBJFLAG_40000000)
|
||||
set_object_flag(0x22, OBJFLAG_40000000)
|
||||
set_object_flag(0x23, OBJFLAG_40000000)
|
||||
set_object_flag(0x24, OBJFLAG_40000000)
|
||||
open_door(0x1e)
|
||||
open_door(0x1f)
|
||||
open_door(0x20)
|
||||
@@ -2329,13 +2329,13 @@ u8 func1013_bunker_lasers[] = {
|
||||
open_door(0x22)
|
||||
open_door(0x23)
|
||||
open_door(0x24)
|
||||
set_object_flag_bank0(0x1e, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x1f, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x20, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x21, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x22, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x23, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x24, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x1e, OBJFLAG_40000000)
|
||||
set_object_flag(0x1f, OBJFLAG_40000000)
|
||||
set_object_flag(0x20, OBJFLAG_40000000)
|
||||
set_object_flag(0x21, OBJFLAG_40000000)
|
||||
set_object_flag(0x22, OBJFLAG_40000000)
|
||||
set_object_flag(0x23, OBJFLAG_40000000)
|
||||
set_object_flag(0x24, OBJFLAG_40000000)
|
||||
|
||||
beginloop(0x04)
|
||||
if_stage_flag_eq(STAGEFLAG_EXPLOSIVES_PLACED, TRUE, /*goto*/ 0x09)
|
||||
@@ -2374,7 +2374,7 @@ u8 func1011_bunker_explosives[] = {
|
||||
goto_first(0x04)
|
||||
|
||||
label(0x2e)
|
||||
unset_object_flag_bank1(OBJ_EXPLOSIVE_BRICK, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(OBJ_EXPLOSIVE_BRICK, OBJFLAG2_INVISIBLE)
|
||||
message(CHR_P1P2, 0x2c2e) // "Explosive has been placed."
|
||||
remove_weapon_from_inventory(WEAPON_EXPLOSIVES)
|
||||
set_stage_flag(STAGEFLAG_EXPLOSIVES_PLACED)
|
||||
@@ -2407,11 +2407,11 @@ u8 func1011_bunker_explosives[] = {
|
||||
|
||||
label(0x06)
|
||||
hide_countdown_timer
|
||||
unset_object_flag_bank0(OBJ_RADAR_TERMINAL, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(OBJ_RADAR_TERMINAL, OBJFLAG_INVINCIBLE)
|
||||
yield
|
||||
move_object_to_pad(0x25, 0x036b)
|
||||
hide_object(OBJ_EXPLOSIVE_BRICK)
|
||||
unset_object_flag_bank0(0x25, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(0x25, OBJFLAG_INVINCIBLE)
|
||||
destroy_object(0x25)
|
||||
destroy_object(OBJ_RADAR_TERMINAL)
|
||||
mute_channel(CHANNEL_0)
|
||||
@@ -2425,13 +2425,13 @@ u8 func1011_bunker_explosives[] = {
|
||||
|
||||
label(0x06)
|
||||
move_object_to_pad(0x26, 0x0375)
|
||||
unset_object_flag_bank0(0x26, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(0x26, OBJFLAG_INVINCIBLE)
|
||||
destroy_object(0x26)
|
||||
move_object_to_pad(0x27, 0x0376)
|
||||
unset_object_flag_bank0(0x27, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(0x27, OBJFLAG_INVINCIBLE)
|
||||
destroy_object(0x27)
|
||||
move_object_to_pad(0x28, 0x0372)
|
||||
unset_object_flag_bank0(0x28, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(0x28, OBJFLAG_INVINCIBLE)
|
||||
destroy_object(0x28)
|
||||
yield
|
||||
restart_timer
|
||||
@@ -2441,7 +2441,7 @@ u8 func1011_bunker_explosives[] = {
|
||||
endloop(0x0c)
|
||||
|
||||
label(0x06)
|
||||
unset_object_flag_bank0(0x51, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(0x51, OBJFLAG_INVINCIBLE)
|
||||
destroy_object(0x51)
|
||||
restart_timer
|
||||
|
||||
@@ -2450,7 +2450,7 @@ u8 func1011_bunker_explosives[] = {
|
||||
endloop(0x7b)
|
||||
|
||||
label(0x06)
|
||||
unset_object_flag_bank0(0x2d, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(0x2d, OBJFLAG_INVINCIBLE)
|
||||
move_object_to_pad(0x2d, 0x0379)
|
||||
destroy_object(0x2d)
|
||||
restart_timer
|
||||
@@ -2461,7 +2461,7 @@ u8 func1011_bunker_explosives[] = {
|
||||
|
||||
label(0x06)
|
||||
label(0x06)
|
||||
unset_object_flag_bank0(0x29, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(0x29, OBJFLAG_INVINCIBLE)
|
||||
move_object_to_pad(0x29, 0x0373)
|
||||
destroy_object(0x29)
|
||||
restart_timer
|
||||
@@ -2471,7 +2471,7 @@ u8 func1011_bunker_explosives[] = {
|
||||
endloop(0x0d)
|
||||
|
||||
label(0x06)
|
||||
unset_object_flag_bank0(0x2a, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(0x2a, OBJFLAG_INVINCIBLE)
|
||||
move_object_to_pad(0x2a, 0x0374)
|
||||
destroy_object(0x2a)
|
||||
restart_timer
|
||||
@@ -2481,7 +2481,7 @@ u8 func1011_bunker_explosives[] = {
|
||||
endloop(0x0e)
|
||||
|
||||
label(0x06)
|
||||
unset_object_flag_bank0(0x2b, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(0x2b, OBJFLAG_INVINCIBLE)
|
||||
move_object_to_pad(0x2b, 0x0377)
|
||||
destroy_object(0x2b)
|
||||
restart_timer
|
||||
@@ -2491,7 +2491,7 @@ u8 func1011_bunker_explosives[] = {
|
||||
endloop(0x0f)
|
||||
|
||||
label(0x06)
|
||||
unset_object_flag_bank0(0x2c, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(0x2c, OBJFLAG_INVINCIBLE)
|
||||
move_object_to_pad(0x2c, 0x0378)
|
||||
destroy_object(0x2c)
|
||||
restart_timer
|
||||
@@ -2915,7 +2915,7 @@ u8 func0421_activate_autogun[] = {
|
||||
goto_next(0x06)
|
||||
|
||||
label(0x2e)
|
||||
unset_object_flag_bank0(OBJ_AUTOGUN_AT_START, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_AUTOGUN_AT_START, OBJFLAG_DEACTIVATED)
|
||||
label(0x06)
|
||||
set_ailist(CHR_SELF, GAILIST_ALERTED)
|
||||
|
||||
@@ -3215,7 +3215,7 @@ u8 func102d_check_antenna_switch_destroyed[] = {
|
||||
|
||||
u8 func102e_setup_rtracker[] = {
|
||||
yield
|
||||
set_object_flag_bank2(OBJ_ROCKETLAUNCHER, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_ROCKETLAUNCHER, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
||||
+14
-14
@@ -64,8 +64,8 @@ u8 func0c00_017c[] = {
|
||||
label(0x59)
|
||||
camera_movement(0x045d)
|
||||
show_object(0x00)
|
||||
set_object_flag_bank1(0x00, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x00, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x00, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x00, OBJFLAG3_00000010)
|
||||
object_do_animation(0x045e, 0x00, 0x04ff, 0xff)
|
||||
|
||||
beginloop(0x08)
|
||||
@@ -81,8 +81,8 @@ u8 func0c00_017c[] = {
|
||||
hide_object(0x00)
|
||||
camera_movement(0x0464)
|
||||
show_object(0x01)
|
||||
set_object_flag_bank1(0x01, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x01, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x01, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x01, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0465, 0x01, 0x04ff, 0xff)
|
||||
|
||||
beginloop(0x0b)
|
||||
@@ -99,13 +99,13 @@ u8 func0c00_017c[] = {
|
||||
camera_movement(0x0461)
|
||||
|
||||
show_object(0x00)
|
||||
set_object_flag_bank1(0x00, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x00, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x00, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x00, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0462, 0x00, 0x04ff, 0xff)
|
||||
|
||||
show_object(0x01)
|
||||
set_object_flag_bank1(0x01, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x01, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x01, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x01, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0463, 0x01, 0x04ff, 0xff)
|
||||
|
||||
beginloop(0x0a)
|
||||
@@ -123,18 +123,18 @@ u8 func0c00_017c[] = {
|
||||
camera_movement(0x046c)
|
||||
|
||||
show_object(0x01)
|
||||
unset_object_flag_bank1(0x01, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x01, OBJECTFLAG2_00000010)
|
||||
unset_object_flag2(0x01, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x01, OBJFLAG3_00000010)
|
||||
object_do_animation(0x046e, 0x01, 0x04ff, 0xff)
|
||||
|
||||
show_object(0x00)
|
||||
set_object_flag_bank1(0x00, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x00, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x00, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x00, OBJFLAG3_00000010)
|
||||
object_do_animation(0x046d, 0x00, 0x04ff, 0xff)
|
||||
|
||||
show_object(0x02)
|
||||
set_object_flag_bank1(0x02, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x02, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x02, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x02, OBJFLAG3_00000010)
|
||||
object_do_animation(0x046f, 0x02, 0x04ff, 0xff)
|
||||
|
||||
beginloop(0x0e)
|
||||
|
||||
+31
-31
@@ -1428,9 +1428,9 @@ u8 func1003_powernode1[] = {
|
||||
label(0x2e)
|
||||
if_object_health_lt(OBJ_POWERNODE1, 250, /*goto*/ 0x2e)
|
||||
set_object_health(OBJ_POWERNODE1, 0)
|
||||
set_object_flag_bank0(OBJ_POWERNODE1, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag(OBJ_POWERNODE1, OBJFLAG_INVINCIBLE)
|
||||
open_door(0x03)
|
||||
set_object_flag_bank0(0x03, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x03, OBJFLAG_40000000)
|
||||
goto_first(0x04)
|
||||
|
||||
label(0x2e)
|
||||
@@ -1448,9 +1448,9 @@ u8 func1004_powernode2[] = {
|
||||
label(0x2e)
|
||||
if_object_health_lt(OBJ_POWERNODE2, 250, /*goto*/ 0x2e)
|
||||
set_object_health(OBJ_POWERNODE2, 0)
|
||||
set_object_flag_bank0(OBJ_POWERNODE2, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag(OBJ_POWERNODE2, OBJFLAG_INVINCIBLE)
|
||||
open_door(0x04)
|
||||
set_object_flag_bank0(0x04, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x04, OBJFLAG_40000000)
|
||||
goto_first(0x04)
|
||||
|
||||
label(0x2e)
|
||||
@@ -1467,10 +1467,10 @@ u8 func1005_powernode3[] = {
|
||||
|
||||
label(0x2e)
|
||||
if_object_health_lt(OBJ_POWERNODE3, 250, /*goto*/ 0x2e)
|
||||
set_object_flag_bank0(OBJ_POWERNODE3, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag(OBJ_POWERNODE3, OBJFLAG_INVINCIBLE)
|
||||
set_object_health(OBJ_POWERNODE3, 0)
|
||||
open_door(0x05)
|
||||
set_object_flag_bank0(0x05, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x05, OBJFLAG_40000000)
|
||||
goto_first(0x04)
|
||||
|
||||
label(0x2e)
|
||||
@@ -1500,8 +1500,8 @@ u8 func0c01_midcutscene[] = {
|
||||
set_chr_hiddenflag(CHR_DRCAROLL, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x01d7, -1, -1, 0x06, 0x00, CHR_DRCAROLL, 4)
|
||||
show_object(0xbb)
|
||||
set_object_flag_bank1(0xbb, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0xbb, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0xbb, OBJFLAG2_04000000)
|
||||
set_object_flag3(0xbb, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01d8, 0xbb, 0x04ff, 0xff)
|
||||
restart_timer
|
||||
set_cutscene_weapon(CHR_P1P2, WEAPON_NONE, WEAPON_NONE)
|
||||
@@ -2032,9 +2032,9 @@ u8 func1002_intro[] = {
|
||||
unset_chr_chrflag(CHR_ELVIS, CHRCFLAG_HIDDEN)
|
||||
set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x01f1, -1, -1, 0x06, 0x00, CHR_ELVIS, 4)
|
||||
set_object_flag_bank0(0x07, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank1(0x07, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x07, OBJECTFLAG2_00000010)
|
||||
set_object_flag(0x07, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag2(0x07, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x07, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01f2, 0x07, 0x04ff, 0xff)
|
||||
set_chr_chrflag(0x40, CHRCFLAG_UNPLAYABLE)
|
||||
unset_chr_chrflag(0x40, CHRCFLAG_HIDDEN)
|
||||
@@ -2190,9 +2190,9 @@ u8 func1002_intro[] = {
|
||||
set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x01f1, -2, -1, 0x06, 0x00, CHR_ELVIS, 2)
|
||||
if_coop_mode(/*goto*/ 0x45)
|
||||
unset_object_flag_bank0(0x07, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag_bank1(0x07, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x07, OBJECTFLAG2_00000010)
|
||||
unset_object_flag(0x07, OBJFLAG_DEACTIVATED)
|
||||
unset_object_flag2(0x07, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x07, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01f2, 0x07, 0x01ff, 0xfe)
|
||||
goto_next(0x46)
|
||||
|
||||
@@ -3966,7 +3966,7 @@ u8 func040a_check_pa_canisters_destroyed[] = {
|
||||
|
||||
// Both canisters destroyed
|
||||
label(0x2e)
|
||||
set_object_flag_bank0(0x0f, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x0f, OBJFLAG_40000000)
|
||||
set_lights_state(0x00bc, 0x03, 0xff, 0x0a, 0x78)
|
||||
|
||||
beginloop(0x08)
|
||||
@@ -4380,24 +4380,24 @@ u8 func042e_elvis_run_to_exit[] = {
|
||||
u8 func1027_powernode_illumination[] = {
|
||||
beginloop(0x04)
|
||||
if_door_state(0x03, (DOORSTATE_OPEN | DOORSTATE_OPENING), /*goto*/ 0x2e)
|
||||
unset_object_flag_bank0(OBJ_POWERNODE1, OBJECTFLAG0_ILLUMINATED)
|
||||
unset_object_flag(OBJ_POWERNODE1, OBJFLAG_ILLUMINATED)
|
||||
goto_next(0x06)
|
||||
label(0x2e)
|
||||
set_object_flag_bank0(OBJ_POWERNODE1, OBJECTFLAG0_ILLUMINATED)
|
||||
set_object_flag(OBJ_POWERNODE1, OBJFLAG_ILLUMINATED)
|
||||
|
||||
label(0x06)
|
||||
if_door_state(0x04, (DOORSTATE_OPEN | DOORSTATE_OPENING), /*goto*/ 0x2e)
|
||||
unset_object_flag_bank0(OBJ_POWERNODE2, OBJECTFLAG0_ILLUMINATED)
|
||||
unset_object_flag(OBJ_POWERNODE2, OBJFLAG_ILLUMINATED)
|
||||
goto_next(0x06)
|
||||
label(0x2e)
|
||||
set_object_flag_bank0(OBJ_POWERNODE2, OBJECTFLAG0_ILLUMINATED)
|
||||
set_object_flag(OBJ_POWERNODE2, OBJFLAG_ILLUMINATED)
|
||||
|
||||
label(0x06)
|
||||
if_door_state(0x05, (DOORSTATE_OPEN | DOORSTATE_OPENING), /*goto*/ 0x2e)
|
||||
unset_object_flag_bank0(OBJ_POWERNODE3, OBJECTFLAG0_ILLUMINATED)
|
||||
unset_object_flag(OBJ_POWERNODE3, OBJFLAG_ILLUMINATED)
|
||||
goto_next(0x06)
|
||||
label(0x2e)
|
||||
set_object_flag_bank0(OBJ_POWERNODE3, OBJECTFLAG0_ILLUMINATED)
|
||||
set_object_flag(OBJ_POWERNODE3, OBJFLAG_ILLUMINATED)
|
||||
label(0x06)
|
||||
endloop(0x04)
|
||||
|
||||
@@ -4475,8 +4475,8 @@ u8 func102b_proxymines[] = {
|
||||
endloop(0x04)
|
||||
|
||||
label(0x2e)
|
||||
set_object_flag_bank0(OBJ_PROXYMINES, OBJECTFLAG0_00100000)
|
||||
set_object_flag_bank1(OBJ_PROXYMINES, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag(OBJ_PROXYMINES, OBJFLAG_00100000)
|
||||
set_object_flag2(OBJ_PROXYMINES, OBJFLAG2_INVISIBLE)
|
||||
|
||||
label(0x06)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
@@ -4491,8 +4491,8 @@ u8 func102c_lock_doors[] = {
|
||||
// PA
|
||||
lock_door(0xb1, 0x80)
|
||||
lock_door(0xb2, 0x80)
|
||||
set_object_flag_bank1(0xb1, OBJECTFLAG1_20000000)
|
||||
set_object_flag_bank1(0xb2, OBJECTFLAG1_20000000)
|
||||
set_object_flag2(0xb1, OBJFLAG2_20000000)
|
||||
set_object_flag2(0xb2, OBJFLAG2_20000000)
|
||||
|
||||
// A and SA
|
||||
label(0x2e)
|
||||
@@ -4555,11 +4555,11 @@ u8 func102e_open_powernode_doors_on_agent[] = {
|
||||
// Agent
|
||||
label(0x08)
|
||||
open_door(0x03)
|
||||
set_object_flag_bank0(0x03, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x03, OBJFLAG_40000000)
|
||||
open_door(0x04)
|
||||
set_object_flag_bank0(0x04, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x04, OBJFLAG_40000000)
|
||||
open_door(0x05)
|
||||
set_object_flag_bank0(0x05, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x05, OBJFLAG_40000000)
|
||||
label(0x2e)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
@@ -4591,8 +4591,8 @@ u8 func102f_unlock_drcaroll_door[] = {
|
||||
label(0x2e)
|
||||
unlock_door(0x75, 0x02)
|
||||
unlock_door(0x76, 0x02)
|
||||
unset_object_flag_bank1(0x75, OBJECTFLAG1_20000000)
|
||||
unset_object_flag_bank1(0x76, OBJECTFLAG1_20000000)
|
||||
unset_object_flag2(0x75, OBJFLAG2_20000000)
|
||||
unset_object_flag2(0x76, OBJFLAG2_20000000)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -4666,7 +4666,7 @@ u8 unregistered_function3[] = {
|
||||
|
||||
u8 func1032_setup_rtracker[] = {
|
||||
yield
|
||||
set_object_flag_bank2(OBJ_PROXYMINES, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_PROXYMINES, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
||||
+14
-14
@@ -480,8 +480,8 @@ s32 path13[] = {
|
||||
|
||||
#define chicago_car_do_animation(object, chr_do_animation) \
|
||||
show_object(object) \
|
||||
set_object_flag_bank1(object, OBJECTFLAG1_04000000) \
|
||||
set_object_flag_bank2(object, OBJECTFLAG2_00000010) \
|
||||
set_object_flag2(object, OBJFLAG2_04000000) \
|
||||
set_object_flag3(object, OBJFLAG3_00000010) \
|
||||
object_do_animation(chr_do_animation, object, 0x04ff, 0xff)
|
||||
|
||||
|
||||
@@ -558,8 +558,8 @@ u8 func0403_3c74[] = {
|
||||
camera_movement(0x00d1)
|
||||
set_chr_chrflag(CHR_BOND, CHRCFLAG_HIDDEN)
|
||||
show_object(OBJ_CAR4)
|
||||
set_object_flag_bank1(OBJ_CAR4, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_CAR4, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_CAR4, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_CAR4, OBJFLAG3_00000010)
|
||||
object_do_animation(0x00de, OBJ_CAR4, 0x04ff, 0xff)
|
||||
set_chr_chrflag(CHR_CIA1, CHRCFLAG_HIDDEN)
|
||||
|
||||
@@ -579,8 +579,8 @@ u8 func0403_3c74[] = {
|
||||
|
||||
u8 func0404_3ce0[] = {
|
||||
show_object(OBJ_WIREFENCE)
|
||||
set_object_flag_bank1(OBJ_WIREFENCE, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_WIREFENCE, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_WIREFENCE, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_WIREFENCE, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0470, OBJ_WIREFENCE, 0x01ff, 0xff)
|
||||
|
||||
if_controller_button_pressed(/*goto*/ 0x00)
|
||||
@@ -897,8 +897,8 @@ u8 func040d_limo[] = {
|
||||
endloop(0x2d)
|
||||
|
||||
label(0x04)
|
||||
set_object_flag_bank1(OBJ_LIMO, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_LIMO, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_LIMO, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_LIMO, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02d6, OBJ_LIMO, 0x04ff, 0xff)
|
||||
|
||||
assign_sound(0x01b4, CHANNEL_1)
|
||||
@@ -943,7 +943,7 @@ u8 func040c_taxi[] = {
|
||||
assign_sound(0x8000, CHANNEL_0)
|
||||
play_sound_from_object(CHANNEL_0, OBJ_TAXI, 0x0960, 0x0c80)
|
||||
object_do_animation(0x0168, OBJ_TAXI, 0x04ff, 0xff)
|
||||
set_object_flag_bank1(OBJ_TAXI, OBJECTFLAG1_04000000)
|
||||
set_object_flag2(OBJ_TAXI, OBJFLAG2_04000000)
|
||||
|
||||
// Wait for flag
|
||||
beginloop(0x06)
|
||||
@@ -1281,7 +1281,7 @@ u8 func040c_taxi_timing[] = {
|
||||
|
||||
label(0x04)
|
||||
set_stage_flag(STAGEFLAG_TAXI_ALMOST_READY_TO_CRASH)
|
||||
unset_object_flag_bank1(OBJ_TAXI, OBJECTFLAG1_04000000)
|
||||
unset_object_flag2(OBJ_TAXI, OBJFLAG2_04000000)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -3118,8 +3118,8 @@ u8 func040d_limo_flags[] = {
|
||||
|
||||
label(0x03)
|
||||
hide_object(OBJ_LIMO)
|
||||
set_object_flag_bank0(OBJ_LIMO, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag_bank1(OBJ_LIMO, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag(OBJ_LIMO, OBJFLAG_INVINCIBLE)
|
||||
set_object_flag2(OBJ_LIMO, OBJFLAG2_INVISIBLE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -3225,7 +3225,7 @@ u8 func0412_cia_invincibility[] = {
|
||||
|
||||
u8 func1025_rtracker[] = {
|
||||
yield
|
||||
set_object_flag_bank2(OBJ_FALCON2, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_FALCON2, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -3240,7 +3240,7 @@ u8 func1027_untrack_dumpster[] = {
|
||||
endloop(0x10)
|
||||
|
||||
label(0x03)
|
||||
unset_object_flag_bank2(OBJ_DUMPSTER, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
unset_object_flag3(OBJ_DUMPSTER, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
||||
+70
-70
@@ -571,14 +571,14 @@ u8 func1024_give_objects[] = {
|
||||
give_object_to_chr(OBJ_EQUIPMENT_COOP, CHR_COOP)
|
||||
|
||||
label(0x2d)
|
||||
set_object_flag_bank1(OBJ_DATAUPLINK_BOND, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank0(OBJ_DATAUPLINK_BOND, OBJECTFLAG0_00100000)
|
||||
set_object_flag_bank1(OBJ_REMOTEMINE_BOND, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank0(OBJ_REMOTEMINE_BOND, OBJECTFLAG0_00100000)
|
||||
set_object_flag_bank1(OBJ_DATAUPLINK_COOP, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank0(OBJ_DATAUPLINK_COOP, OBJECTFLAG0_00100000)
|
||||
set_object_flag_bank1(OBJ_REMOTEMINE_COOP, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank0(OBJ_REMOTEMINE_COOP, OBJECTFLAG0_00100000)
|
||||
set_object_flag2(OBJ_DATAUPLINK_BOND, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag(OBJ_DATAUPLINK_BOND, OBJFLAG_00100000)
|
||||
set_object_flag2(OBJ_REMOTEMINE_BOND, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag(OBJ_REMOTEMINE_BOND, OBJFLAG_00100000)
|
||||
set_object_flag2(OBJ_DATAUPLINK_COOP, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag(OBJ_DATAUPLINK_COOP, OBJFLAG_00100000)
|
||||
set_object_flag2(OBJ_REMOTEMINE_COOP, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag(OBJ_REMOTEMINE_COOP, OBJFLAG_00100000)
|
||||
|
||||
beginloop(0x04)
|
||||
chr_toggle_p1p2(CHR_SELF)
|
||||
@@ -873,11 +873,11 @@ u8 unregistered_function1[] = {
|
||||
};
|
||||
|
||||
#define check_mine_wasted(chr1, chr2, myflag, buddyflag) \
|
||||
set_object_flag_bank0(OBJ_COMMSHUB1, OBJECTFLAG0_00002000) \
|
||||
set_object_flag_bank0(OBJ_COMMSHUB2, OBJECTFLAG0_00002000) \
|
||||
set_object_flag_bank0(OBJ_COMMSHUB3, OBJECTFLAG0_00002000) \
|
||||
set_object_flag_bank0(OBJ_COMMSHUB4, OBJECTFLAG0_00002000) \
|
||||
set_object_flag_bank0(OBJ_COMMSHUB5, OBJECTFLAG0_00002000) \
|
||||
set_object_flag(OBJ_COMMSHUB1, OBJFLAG_00002000) \
|
||||
set_object_flag(OBJ_COMMSHUB2, OBJFLAG_00002000) \
|
||||
set_object_flag(OBJ_COMMSHUB3, OBJFLAG_00002000) \
|
||||
set_object_flag(OBJ_COMMSHUB4, OBJFLAG_00002000) \
|
||||
set_object_flag(OBJ_COMMSHUB5, OBJFLAG_00002000) \
|
||||
yield \
|
||||
yield \
|
||||
if_difficulty_lt(DIFF_SA, /*goto*/ 0x06) \
|
||||
@@ -904,11 +904,11 @@ u8 unregistered_function1[] = {
|
||||
label(0x2d) \
|
||||
if_stage_flag_eq(STAGEFLAG_MIDCUTSCENE_FINISHED, FALSE, /*goto*/ 0x0a) \
|
||||
label(0x2d) \
|
||||
unset_object_flag_bank0(OBJ_COMMSHUB1, OBJECTFLAG0_INVINCIBLE) \
|
||||
unset_object_flag_bank0(OBJ_COMMSHUB2, OBJECTFLAG0_INVINCIBLE) \
|
||||
unset_object_flag_bank0(OBJ_COMMSHUB3, OBJECTFLAG0_INVINCIBLE) \
|
||||
unset_object_flag_bank0(OBJ_COMMSHUB4, OBJECTFLAG0_INVINCIBLE) \
|
||||
unset_object_flag_bank0(OBJ_COMMSHUB5, OBJECTFLAG0_INVINCIBLE) \
|
||||
unset_object_flag(OBJ_COMMSHUB1, OBJFLAG_INVINCIBLE) \
|
||||
unset_object_flag(OBJ_COMMSHUB2, OBJFLAG_INVINCIBLE) \
|
||||
unset_object_flag(OBJ_COMMSHUB3, OBJFLAG_INVINCIBLE) \
|
||||
unset_object_flag(OBJ_COMMSHUB4, OBJFLAG_INVINCIBLE) \
|
||||
unset_object_flag(OBJ_COMMSHUB5, OBJFLAG_INVINCIBLE) \
|
||||
restart_timer \
|
||||
\
|
||||
/* Wait 8.3 seconds or until commshub destroyed */ \
|
||||
@@ -1001,9 +1001,9 @@ u8 func101e_blow_mines[] = {
|
||||
label(0x06)
|
||||
|
||||
// 1
|
||||
unset_object_flag_bank0(0x2f, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank1(0x33, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank0(0x33, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(0x2f, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag2(0x33, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag(0x33, OBJFLAG_INVINCIBLE)
|
||||
destroy_object(0x33)
|
||||
restart_timer
|
||||
|
||||
@@ -1012,13 +1012,13 @@ u8 func101e_blow_mines[] = {
|
||||
endloop(0x60)
|
||||
|
||||
label(0x2d)
|
||||
unset_object_flag_bank1(0x2f, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(0x2f, OBJFLAG2_INVISIBLE)
|
||||
destroy_object(0x2f)
|
||||
|
||||
// 2
|
||||
unset_object_flag_bank0(0x30, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank1(0x34, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank0(0x34, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(0x30, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag2(0x34, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag(0x34, OBJFLAG_INVINCIBLE)
|
||||
destroy_object(0x34)
|
||||
restart_timer
|
||||
|
||||
@@ -1027,13 +1027,13 @@ u8 func101e_blow_mines[] = {
|
||||
endloop(0x77)
|
||||
|
||||
label(0x2d)
|
||||
unset_object_flag_bank1(0x30, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(0x30, OBJFLAG2_INVISIBLE)
|
||||
destroy_object(0x30)
|
||||
|
||||
// 3
|
||||
unset_object_flag_bank0(0x31, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank1(0x35, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank0(0x35, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(0x31, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag2(0x35, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag(0x35, OBJFLAG_INVINCIBLE)
|
||||
destroy_object(0x35)
|
||||
restart_timer
|
||||
|
||||
@@ -1042,13 +1042,13 @@ u8 func101e_blow_mines[] = {
|
||||
endloop(0x78)
|
||||
|
||||
label(0x2d)
|
||||
unset_object_flag_bank1(0x31, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(0x31, OBJFLAG2_INVISIBLE)
|
||||
destroy_object(0x31)
|
||||
|
||||
// 4
|
||||
unset_object_flag_bank0(0x32, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank1(0x36, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank0(0x36, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(0x32, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag2(0x36, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag(0x36, OBJFLAG_INVINCIBLE)
|
||||
destroy_object(0x36)
|
||||
restart_timer
|
||||
|
||||
@@ -1057,7 +1057,7 @@ u8 func101e_blow_mines[] = {
|
||||
endloop(0x79)
|
||||
|
||||
label(0x2d)
|
||||
unset_object_flag_bank1(0x32, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(0x32, OBJFLAG2_INVISIBLE)
|
||||
destroy_object(0x32)
|
||||
|
||||
yield
|
||||
@@ -1379,10 +1379,10 @@ u8 func0405_president_in_room[] = {
|
||||
rebuild_squadrons
|
||||
hide_object(OBJ_EXTERIOR_DOOR)
|
||||
hide_object(OBJ_FLOORHATCH)
|
||||
set_object_flag_bank0(OBJ_FLOOR_HATCH_DETACHED, OBJECTFLAG0_00000100)
|
||||
unset_object_flag_bank1(OBJ_FLOOR_HATCH_DETACHED, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank1(OBJ_EXTERIOR_DOOR_DETACHED, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank0(OBJ_EXTERIOR_DOOR_DETACHED, OBJECTFLAG0_00000100)
|
||||
set_object_flag(OBJ_FLOOR_HATCH_DETACHED, OBJFLAG_00000100)
|
||||
unset_object_flag2(OBJ_FLOOR_HATCH_DETACHED, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag2(OBJ_EXTERIOR_DOOR_DETACHED, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag(OBJ_EXTERIOR_DOOR_DETACHED, OBJFLAG_00000100)
|
||||
play_sound(0x8098, -1)
|
||||
restart_timer
|
||||
|
||||
@@ -2200,7 +2200,7 @@ u8 func1002_intro[] = {
|
||||
*/
|
||||
u8 func1010_dumbwaiter1[] = {
|
||||
label(0x03)
|
||||
set_object_flag_bank0(OBJ_DUMBWAITER1, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_DUMBWAITER1, OBJFLAG_DEACTIVATED)
|
||||
set_object_image(OBJ_DUMBWAITER1_SWITCH, 0x00, 0x12)
|
||||
|
||||
beginloop(0x04)
|
||||
@@ -2211,7 +2211,7 @@ u8 func1010_dumbwaiter1[] = {
|
||||
label(0x2d)
|
||||
play_sound(0x043a, CHANNEL_7)
|
||||
set_object_image(OBJ_DUMBWAITER1_SWITCH, 0x00, 0x13)
|
||||
unset_object_flag_bank0(OBJ_DUMBWAITER1, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_DUMBWAITER1, OBJFLAG_DEACTIVATED)
|
||||
yield
|
||||
yield
|
||||
yield
|
||||
@@ -2221,7 +2221,7 @@ u8 func1010_dumbwaiter1[] = {
|
||||
endloop(0x08)
|
||||
|
||||
label(0x06)
|
||||
set_object_flag_bank0(OBJ_DUMBWAITER1, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_DUMBWAITER1, OBJFLAG_DEACTIVATED)
|
||||
restart_timer
|
||||
|
||||
beginloop(0x09)
|
||||
@@ -2229,7 +2229,7 @@ u8 func1010_dumbwaiter1[] = {
|
||||
endloop(0x09)
|
||||
|
||||
label(0x2d)
|
||||
unset_object_flag_bank0(OBJ_DUMBWAITER1, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_DUMBWAITER1, OBJFLAG_DEACTIVATED)
|
||||
yield
|
||||
yield
|
||||
yield
|
||||
@@ -2261,7 +2261,7 @@ u8 func1010_dumbwaiter1[] = {
|
||||
|
||||
u8 func1011_dumbwaiter2[] = {
|
||||
label(0x03)
|
||||
set_object_flag_bank0(OBJ_DUMBWAITER2, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_DUMBWAITER2, OBJFLAG_DEACTIVATED)
|
||||
set_object_image(OBJ_DUMBWAITER2_SWITCH, 0x00, 0x12)
|
||||
|
||||
beginloop(0x04)
|
||||
@@ -2272,7 +2272,7 @@ u8 func1011_dumbwaiter2[] = {
|
||||
label(0x2d)
|
||||
play_sound(0x043a, CHANNEL_7)
|
||||
set_object_image(OBJ_DUMBWAITER2_SWITCH, 0x00, 0x13)
|
||||
unset_object_flag_bank0(OBJ_DUMBWAITER2, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_DUMBWAITER2, OBJFLAG_DEACTIVATED)
|
||||
yield
|
||||
yield
|
||||
yield
|
||||
@@ -2282,7 +2282,7 @@ u8 func1011_dumbwaiter2[] = {
|
||||
endloop(0x08)
|
||||
|
||||
label(0x06)
|
||||
set_object_flag_bank0(OBJ_DUMBWAITER2, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_DUMBWAITER2, OBJFLAG_DEACTIVATED)
|
||||
restart_timer
|
||||
|
||||
beginloop(0x09)
|
||||
@@ -2290,7 +2290,7 @@ u8 func1011_dumbwaiter2[] = {
|
||||
endloop(0x09)
|
||||
|
||||
label(0x2d)
|
||||
unset_object_flag_bank0(OBJ_DUMBWAITER2, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_DUMBWAITER2, OBJFLAG_DEACTIVATED)
|
||||
yield
|
||||
yield
|
||||
yield
|
||||
@@ -3447,20 +3447,20 @@ u8 func0423_outro[] = {
|
||||
set_chr_hiddenflag(CHR_ELVIS, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x02d9, -1, -1, 0x06, 0x00, CHR_ELVIS, 4)
|
||||
show_object(0x19)
|
||||
set_object_flag_bank1(0x19, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x19, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x19, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x19, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02db, 0x19, 0x04ff, 0xff)
|
||||
show_object(0x1a)
|
||||
set_object_flag_bank1(0x1a, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x1a, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x1a, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x1a, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02dc, 0x1a, 0x04ff, 0xff)
|
||||
show_object(0x23)
|
||||
set_object_flag_bank1(0x23, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x23, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x23, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x23, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02dd, 0x23, 0x04ff, 0xff)
|
||||
show_object(0x37)
|
||||
set_object_flag_bank1(0x37, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x37, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x37, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x37, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02de, 0x37, 0x04ff, 0xff)
|
||||
restart_timer
|
||||
set_cutscene_weapon(CHR_TARGET, WEAPON_NONE, WEAPON_NONE)
|
||||
@@ -3569,14 +3569,14 @@ u8 func1019_midcutscene[] = {
|
||||
camera_movement(0x02df)
|
||||
|
||||
show_object(0x19)
|
||||
set_object_flag_bank1(0x19, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x19, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x19, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x19, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02e0, 0x19, 0x04ff, 0xff)
|
||||
set_object_part_visible(0x19, TRUE)
|
||||
|
||||
show_object(0x37)
|
||||
set_object_flag_bank1(0x37, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x37, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x37, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x37, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02e1, 0x37, 0x04ff, 0xff)
|
||||
|
||||
restart_timer
|
||||
@@ -3613,7 +3613,7 @@ u8 func1019_midcutscene_from_menu[] = {
|
||||
};
|
||||
|
||||
u8 func101a_equipment_switch[] = {
|
||||
set_object_flag_bank0(0x1b, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(0x1b, OBJFLAG_DEACTIVATED)
|
||||
set_object_image(OBJ_EQUIPMENT_SWITCH, 0x00, 0x12)
|
||||
|
||||
beginloop(0x04)
|
||||
@@ -3642,7 +3642,7 @@ u8 func101a_equipment_switch[] = {
|
||||
message(CHR_P1P2, 0x363d) // "Cargo bay has been raised."
|
||||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_EQUIPMENT_SWITCH, TRUE)
|
||||
unset_object_flag_bank0(0x1b, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(0x1b, OBJFLAG_DEACTIVATED)
|
||||
yield
|
||||
yield
|
||||
yield
|
||||
@@ -3656,7 +3656,7 @@ u8 func101a_equipment_switch[] = {
|
||||
endloop(0x08)
|
||||
|
||||
label(0x06)
|
||||
set_object_flag_bank0(0x1b, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(0x1b, OBJFLAG_DEACTIVATED)
|
||||
set_object_image(OBJ_EQUIPMENT_SWITCH, 0x00, 0x12)
|
||||
|
||||
beginloop(0x09)
|
||||
@@ -3672,7 +3672,7 @@ u8 func101a_equipment_switch[] = {
|
||||
|
||||
u8 func101b_hoverbike_switch[] = {
|
||||
unset_savefile_flag(SAVEFILEFLAG_CRASHSITE_BIKE)
|
||||
set_object_flag_bank0(0x1f, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(0x1f, OBJFLAG_DEACTIVATED)
|
||||
set_object_image(OBJ_HOVERBIKE_SWITCH, 0x00, 0x12)
|
||||
label(0x08)
|
||||
open_door(0x20)
|
||||
@@ -3706,7 +3706,7 @@ u8 func101b_hoverbike_switch[] = {
|
||||
set_savefile_flag(SAVEFILEFLAG_CRASHSITE_BIKE)
|
||||
assign_sound(0x043a, CHANNEL_7)
|
||||
control_sound_from_object(CHANNEL_7, OBJ_HOVERBIKE_SWITCH, TRUE)
|
||||
unset_object_flag_bank0(0x1f, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(0x1f, OBJFLAG_DEACTIVATED)
|
||||
restart_timer
|
||||
|
||||
beginloop(0x0c)
|
||||
@@ -3721,7 +3721,7 @@ u8 func101b_hoverbike_switch[] = {
|
||||
endloop(0x0b)
|
||||
|
||||
label(0x06)
|
||||
set_object_flag_bank0(0x1f, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(0x1f, OBJFLAG_DEACTIVATED)
|
||||
set_object_image(OBJ_HOVERBIKE_SWITCH, 0x00, 0x12)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
@@ -3814,8 +3814,8 @@ u8 func101d_handle_early_president_death[] = {
|
||||
|
||||
label(0x06)
|
||||
hide_object(OBJ_EXTERIOR_DOOR)
|
||||
unset_object_flag_bank1(OBJ_EXTERIOR_DOOR_DETACHED, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank0(OBJ_EXTERIOR_DOOR_DETACHED, OBJECTFLAG0_00000100)
|
||||
unset_object_flag2(OBJ_EXTERIOR_DOOR_DETACHED, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag(OBJ_EXTERIOR_DOOR_DETACHED, OBJFLAG_00000100)
|
||||
|
||||
beginloop(0x08)
|
||||
if_chr_death_animation_finished(CHR_PRESIDENT, /*goto*/ 0x2d)
|
||||
@@ -3844,8 +3844,8 @@ u8 func1007_check_pod_destroyed[] = {
|
||||
|
||||
u8 func101f_setup_rtracker[] = {
|
||||
yield
|
||||
set_object_flag_bank2(0x38, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag_bank2(0x39, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag3(0x38, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_object_flag3(0x39, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -3986,8 +3986,8 @@ u8 func1026_buddy_floor_hatch[] = {
|
||||
// Maybe the AI has difficulty opening the floor hatch so they removed it?
|
||||
label(0x2d)
|
||||
hide_object(OBJ_FLOORHATCH)
|
||||
set_object_flag_bank0(OBJ_FLOOR_HATCH_DETACHED, OBJECTFLAG0_00000100)
|
||||
unset_object_flag_bank1(OBJ_FLOOR_HATCH_DETACHED, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag(OBJ_FLOOR_HATCH_DETACHED, OBJFLAG_00000100)
|
||||
unset_object_flag2(OBJ_FLOOR_HATCH_DETACHED, OBJFLAG2_INVISIBLE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
||||
+13
-13
@@ -1294,14 +1294,14 @@ u8 func0410_clone_spawner2[] = {
|
||||
|
||||
u8 func1007_disable_pods[] = {
|
||||
// Pods are the things that you xray scan in Rescue
|
||||
set_object_flag_bank0(0x1a, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(0x1b, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(0x1c, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(0x1d, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(0x1e, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(0x1f, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(0x20, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(0x21, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(0x1a, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(0x1b, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(0x1c, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(0x1d, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(0x1e, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(0x1f, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(0x20, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(0x21, OBJFLAG_DEACTIVATED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -1521,8 +1521,8 @@ u8 func1002_intro[] = {
|
||||
set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE)
|
||||
set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x0477, -1, -1, 0x06, 0x00, CHR_BOND, 4)
|
||||
set_object_flag_bank1(OBJ_TROLLEY, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_TROLLEY, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_TROLLEY, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_TROLLEY, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0478, OBJ_TROLLEY, 0x04ff, 0xff)
|
||||
restart_timer
|
||||
fade_to_color(0x000000ff, 0)
|
||||
@@ -1565,8 +1565,8 @@ u8 func1002_intro[] = {
|
||||
unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE)
|
||||
set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x0477, -2, -1, 0x06, 0x00, CHR_BOND, 2)
|
||||
unset_object_flag_bank1(OBJ_TROLLEY, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_TROLLEY, OBJECTFLAG2_00000010)
|
||||
unset_object_flag2(OBJ_TROLLEY, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_TROLLEY, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0478, OBJ_TROLLEY, 0x04ff, 0xfe)
|
||||
restart_default_music
|
||||
reset_ambience
|
||||
@@ -1640,7 +1640,7 @@ u8 func0419_init_outro_guard[] = {
|
||||
u8 func100c_unset_trolley_flag_when_destroyed[] = {
|
||||
beginloop(0x04)
|
||||
if_object_in_good_condition(OBJ_TROLLEY, /*goto*/ 0x2c)
|
||||
unset_object_flag_bank2(OBJ_TROLLEY, OBJECTFLAG2_PUSHABLE)
|
||||
unset_object_flag3(OBJ_TROLLEY, OBJFLAG3_PUSHABLE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
label(0x2c)
|
||||
endloop(0x04)
|
||||
|
||||
+101
-101
@@ -1055,8 +1055,8 @@ u8 func100c_check_army_defeated[] = {
|
||||
endloop(0x91)
|
||||
|
||||
label(0x2d)
|
||||
unset_object_flag_bank1(0x45, OBJECTFLAG1_08000000)
|
||||
unset_object_flag_bank1(0x46, OBJECTFLAG1_10000000)
|
||||
unset_object_flag2(0x45, OBJFLAG2_08000000)
|
||||
unset_object_flag2(0x46, OBJFLAG2_10000000)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -1134,11 +1134,11 @@ u8 func1005_5e0c[] = {
|
||||
u8 func1006_bridge[] = {
|
||||
beginloop(0x04)
|
||||
if_stage_flag_eq(STAGEFLAG_TRIGGER_BRIDGE, TRUE, /*goto*/ 0x2d)
|
||||
set_object_flag_bank0(OBJ_BRIDGE, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_BRIDGE, OBJFLAG_DEACTIVATED)
|
||||
endloop(0x04)
|
||||
|
||||
label(0x2d)
|
||||
unset_object_flag_bank0(OBJ_BRIDGE, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_BRIDGE, OBJFLAG_DEACTIVATED)
|
||||
mute_channel(CHANNEL_4)
|
||||
assign_sound(0x8020, CHANNEL_4)
|
||||
play_sound_from_object(CHANNEL_4, OBJ_BRIDGE, 0x04b0, 0x0640)
|
||||
@@ -1152,7 +1152,7 @@ u8 func1006_bridge[] = {
|
||||
mute_channel(CHANNEL_4)
|
||||
assign_sound(0x8027, CHANNEL_4)
|
||||
control_sound_from_object(CHANNEL_4, OBJ_BRIDGE, TRUE)
|
||||
set_object_flag_bank0(OBJ_BRIDGE, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_BRIDGE, OBJFLAG_DEACTIVATED)
|
||||
set_stage_flag(STAGEFLAG_BRIDGE_EXTENDED)
|
||||
|
||||
beginloop(0x09)
|
||||
@@ -1166,7 +1166,7 @@ u8 func1006_bridge[] = {
|
||||
endloop(0x91)
|
||||
|
||||
label(0x2d)
|
||||
unset_object_flag_bank0(OBJ_BRIDGE, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_BRIDGE, OBJFLAG_DEACTIVATED)
|
||||
mute_channel(CHANNEL_4)
|
||||
assign_sound(0x8020, CHANNEL_4)
|
||||
play_sound_from_object(CHANNEL_4, OBJ_BRIDGE, 0x04b0, 0x0640)
|
||||
@@ -1178,7 +1178,7 @@ u8 func1006_bridge[] = {
|
||||
|
||||
label(0x06)
|
||||
unset_stage_flag(STAGEFLAG_BRIDGE_EXTENDED)
|
||||
set_object_flag_bank0(OBJ_BRIDGE, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_BRIDGE, OBJFLAG_DEACTIVATED)
|
||||
mute_channel(CHANNEL_4)
|
||||
assign_sound(0x8027, CHANNEL_4)
|
||||
control_sound_from_object(CHANNEL_4, OBJ_BRIDGE, TRUE)
|
||||
@@ -1365,7 +1365,7 @@ u8 func101b_bug_throws_coop[] = {
|
||||
|
||||
label(0x09)
|
||||
dprint 'C','O','O','P',' ','1',' ','P','L','A','C','E','D','\n',0,
|
||||
unset_object_flag_bank2(OBJ_PILLAR1, OBJECTFLAG2_RTRACKED_YELLOW)
|
||||
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, 0x4219) // "Target Amplifier placed correctly."
|
||||
@@ -1374,7 +1374,7 @@ u8 func101b_bug_throws_coop[] = {
|
||||
|
||||
label(0x0b)
|
||||
dprint 'C','O','O','P',' ','2',' ','P','L','A','C','E','D','\n',0,
|
||||
unset_object_flag_bank2(OBJ_PILLAR2, OBJECTFLAG2_RTRACKED_YELLOW)
|
||||
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, 0x4219) // "Target Amplifier placed correctly."
|
||||
@@ -1383,7 +1383,7 @@ u8 func101b_bug_throws_coop[] = {
|
||||
|
||||
label(0x0c)
|
||||
dprint 'C','O','O','P',' ','3',' ','P','L','A','C','E','D','\n',0,
|
||||
unset_object_flag_bank2(OBJ_PILLAR3, OBJECTFLAG2_RTRACKED_YELLOW)
|
||||
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, 0x4219) // "Target Amplifier placed correctly."
|
||||
@@ -1441,7 +1441,7 @@ u8 func1009_altar[] = {
|
||||
|
||||
beginloop(0x08)
|
||||
chr_toggle_p1p2(CHR_SELF)
|
||||
if_object_flag_bank1(OBJ_ALTAR, OBJECTFLAG1_00002000, /*goto*/ 0x2d)
|
||||
if_object_flag2(OBJ_ALTAR, OBJFLAG2_00002000, /*goto*/ 0x2d)
|
||||
if_chr_distance_to_pad_lt(CHR_P1P2, 300, 0x0137, /*goto*/ 0x2e)
|
||||
label(0x2d)
|
||||
if_chr_activated_object(CHR_P1P2, OBJ_ALTAR, /*goto*/ 0x06)
|
||||
@@ -1460,7 +1460,7 @@ u8 func1009_altar[] = {
|
||||
|
||||
// At pad, or invalid weapon equipped
|
||||
label(0x2e)
|
||||
set_object_flag_bank1(OBJ_ALTAR, OBJECTFLAG1_00002000)
|
||||
set_object_flag2(OBJ_ALTAR, OBJFLAG2_00002000)
|
||||
message(CHR_P1P2, 0x4233) // "Make your sacrifice to the God of War."
|
||||
restart_timer
|
||||
|
||||
@@ -1472,23 +1472,23 @@ u8 func1009_altar[] = {
|
||||
goto_first(0x08)
|
||||
|
||||
label(0x92)
|
||||
unset_object_flag_bank1(OBJ_ALTAR_DEVASTATOR, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(OBJ_ALTAR_DEVASTATOR, OBJFLAG2_INVISIBLE)
|
||||
goto_next(0x2d)
|
||||
|
||||
label(0x93)
|
||||
unset_object_flag_bank1(OBJ_ALTAR_CALLISTO, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(OBJ_ALTAR_CALLISTO, OBJFLAG2_INVISIBLE)
|
||||
goto_next(0x2d)
|
||||
|
||||
label(0x94)
|
||||
unset_object_flag_bank1(OBJ_ALTAR_FALCON, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(OBJ_ALTAR_FALCON, OBJFLAG2_INVISIBLE)
|
||||
goto_next(0x2d)
|
||||
|
||||
label(0x95)
|
||||
unset_object_flag_bank1(OBJ_ALTAR_SLAYER, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(OBJ_ALTAR_SLAYER, OBJFLAG2_INVISIBLE)
|
||||
goto_next(0x2d)
|
||||
|
||||
label(0x96)
|
||||
unset_object_flag_bank1(OBJ_ALTAR_MAULER, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(OBJ_ALTAR_MAULER, OBJFLAG2_INVISIBLE)
|
||||
goto_next(0x2d)
|
||||
|
||||
label(0x2d)
|
||||
@@ -2386,11 +2386,11 @@ u8 func0412_init_king_miniskedar_clone[] = {
|
||||
};
|
||||
|
||||
u8 func100f_spikes_vulnerability[] = {
|
||||
set_object_flag_bank1(OBJ_SPIKE_ML, 0x00200002)
|
||||
set_object_flag_bank1(OBJ_SPIKE_MR, 0x00200002)
|
||||
set_object_flag_bank1(OBJ_SPIKE_BL, 0x00200002)
|
||||
set_object_flag_bank1(OBJ_SPIKE_BR, 0x00200002)
|
||||
set_object_flag_bank1(OBJ_SPIKE_T, 0x00200002)
|
||||
set_object_flag2(OBJ_SPIKE_ML, 0x00200002)
|
||||
set_object_flag2(OBJ_SPIKE_MR, 0x00200002)
|
||||
set_object_flag2(OBJ_SPIKE_BL, 0x00200002)
|
||||
set_object_flag2(OBJ_SPIKE_BR, 0x00200002)
|
||||
set_object_flag2(OBJ_SPIKE_T, 0x00200002)
|
||||
|
||||
beginloop(0x91)
|
||||
if_stage_flag_eq(STAGEFLAG_IN_INTRO, FALSE, /*goto*/ 0x86)
|
||||
@@ -2398,37 +2398,37 @@ u8 func100f_spikes_vulnerability[] = {
|
||||
|
||||
label(0x86)
|
||||
label(0x03)
|
||||
set_object_flag_bank0(OBJ_SPIKE_ML, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag_bank0(OBJ_SPIKE_MR, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag_bank0(OBJ_SPIKE_BL, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag_bank0(OBJ_SPIKE_BR, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag_bank0(OBJ_SPIKE_T, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag_bank2(OBJ_SPIKE_ML, 0x00101000)
|
||||
set_object_flag_bank2(OBJ_SPIKE_MR, 0x00101000)
|
||||
set_object_flag_bank2(OBJ_SPIKE_BL, 0x00101000)
|
||||
set_object_flag_bank2(OBJ_SPIKE_BR, 0x00101000)
|
||||
set_object_flag_bank2(OBJ_SPIKE_T, 0x00101000)
|
||||
set_object_flag(OBJ_SPIKE_ML, OBJFLAG_INVINCIBLE)
|
||||
set_object_flag(OBJ_SPIKE_MR, OBJFLAG_INVINCIBLE)
|
||||
set_object_flag(OBJ_SPIKE_BL, OBJFLAG_INVINCIBLE)
|
||||
set_object_flag(OBJ_SPIKE_BR, OBJFLAG_INVINCIBLE)
|
||||
set_object_flag(OBJ_SPIKE_T, OBJFLAG_INVINCIBLE)
|
||||
set_object_flag3(OBJ_SPIKE_ML, 0x00101000)
|
||||
set_object_flag3(OBJ_SPIKE_MR, 0x00101000)
|
||||
set_object_flag3(OBJ_SPIKE_BL, 0x00101000)
|
||||
set_object_flag3(OBJ_SPIKE_BR, 0x00101000)
|
||||
set_object_flag3(OBJ_SPIKE_T, 0x00101000)
|
||||
|
||||
beginloop(0x04)
|
||||
if_stage_flag_eq(STAGEFLAG_SPIKES_VULNERABLE, TRUE, /*goto*/ 0x2d)
|
||||
endloop(0x04)
|
||||
|
||||
label(0x2d)
|
||||
unset_object_flag_bank0(OBJ_SPIKE_ML, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank0(OBJ_SPIKE_MR, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank0(OBJ_SPIKE_BL, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank0(OBJ_SPIKE_BR, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank2(OBJ_SPIKE_ML, 0x00101000)
|
||||
unset_object_flag_bank2(OBJ_SPIKE_MR, 0x00101000)
|
||||
unset_object_flag_bank2(OBJ_SPIKE_BL, 0x00101000)
|
||||
unset_object_flag_bank2(OBJ_SPIKE_BR, 0x00101000)
|
||||
unset_object_flag(OBJ_SPIKE_ML, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag(OBJ_SPIKE_MR, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag(OBJ_SPIKE_BL, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag(OBJ_SPIKE_BR, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag3(OBJ_SPIKE_ML, 0x00101000)
|
||||
unset_object_flag3(OBJ_SPIKE_MR, 0x00101000)
|
||||
unset_object_flag3(OBJ_SPIKE_BL, 0x00101000)
|
||||
unset_object_flag3(OBJ_SPIKE_BR, 0x00101000)
|
||||
|
||||
if_stage_flag_eq(STAGEFLAG_SPIKE1_DESTROYED, FALSE, /*goto*/ 0x08)
|
||||
if_stage_flag_eq(STAGEFLAG_SPIKE2_DESTROYED, FALSE, /*goto*/ 0x08)
|
||||
if_stage_flag_eq(STAGEFLAG_SPIKE3_DESTROYED, FALSE, /*goto*/ 0x08)
|
||||
if_stage_flag_eq(STAGEFLAG_SPIKE4_DESTROYED, FALSE, /*goto*/ 0x08)
|
||||
unset_object_flag_bank0(OBJ_SPIKE_T, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank2(OBJ_SPIKE_T, 0x00101000)
|
||||
unset_object_flag(OBJ_SPIKE_T, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag3(OBJ_SPIKE_T, 0x00101000)
|
||||
|
||||
beginloop(0x08)
|
||||
if_stage_flag_eq(STAGEFLAG_SPIKES_VULNERABLE, FALSE, /*goto*/ 0x2d)
|
||||
@@ -2449,8 +2449,8 @@ u8 func100f_spikes_vulnerability[] = {
|
||||
endloop(0x03) \
|
||||
\
|
||||
label(0x06) \
|
||||
set_object_flag_bank1(shadow, OBJECTFLAG1_INVISIBLE) \
|
||||
unset_object_flag_bank1(noshadow, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag2(shadow, OBJFLAG2_INVISIBLE) \
|
||||
unset_object_flag2(noshadow, OBJFLAG2_INVISIBLE)
|
||||
|
||||
|
||||
|
||||
@@ -2677,8 +2677,8 @@ u8 func0c00_intro[] = {
|
||||
camera_movement(0x02f9)
|
||||
|
||||
show_object(0x36)
|
||||
set_object_flag_bank1(0x36, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x36, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x36, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x36, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02fa, 0x36, 0x01ff, 0xff)
|
||||
set_object_part_visible(0x36, FALSE)
|
||||
|
||||
@@ -2746,8 +2746,8 @@ u8 func0c00_intro[] = {
|
||||
if_controller_button_pressed(/*goto*/ 0x86)
|
||||
|
||||
show_object(0x36)
|
||||
set_object_flag_bank1(0x36, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x36, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x36, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x36, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0302, 0x36, 0x04ff, 0xff)
|
||||
set_object_part_visible(0x36, FALSE)
|
||||
|
||||
@@ -2780,11 +2780,11 @@ u8 func0c00_intro[] = {
|
||||
remove_chr(CHR_KING2)
|
||||
unset_chr_chrflag(CHR_KING1, CHRCFLAG_HIDDEN)
|
||||
set_ailist(CHR_KING1, AILIST_KING_WAITING)
|
||||
set_object_flag_bank1(0x2a, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank1(0x2b, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank1(0x2c, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank1(0x2d, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank1(0x2e, OBJECTFLAG1_04000000)
|
||||
set_object_flag2(0x2a, OBJFLAG2_04000000)
|
||||
set_object_flag2(0x2b, OBJFLAG2_04000000)
|
||||
set_object_flag2(0x2c, OBJFLAG2_04000000)
|
||||
set_object_flag2(0x2d, OBJFLAG2_04000000)
|
||||
set_object_flag2(0x2e, OBJFLAG2_04000000)
|
||||
unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
restart_default_music
|
||||
@@ -2885,33 +2885,33 @@ u8 func0414_outro[] = {
|
||||
object_do_animation(0x0452, OBJ_SPIKE_T, 0x04ff, 0xff)
|
||||
|
||||
show_object(0x37)
|
||||
set_object_flag_bank1(0x37, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x37, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x37, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x37, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0453, 0x37, 0x04ff, 0xff)
|
||||
|
||||
show_object(0x38)
|
||||
set_object_flag_bank1(0x38, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x38, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x38, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x38, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0454, 0x38, 0x04ff, 0xff)
|
||||
|
||||
show_object(0x39)
|
||||
set_object_flag_bank1(0x39, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x39, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x39, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x39, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0455, 0x39, 0x04ff, 0xff)
|
||||
|
||||
show_object(0x3a)
|
||||
set_object_flag_bank1(0x3a, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x3a, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x3a, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x3a, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0456, 0x3a, 0x04ff, 0xff)
|
||||
|
||||
show_object(0x3b)
|
||||
set_object_flag_bank1(0x3b, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x3b, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x3b, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x3b, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0457, 0x3b, 0x04ff, 0xff)
|
||||
show_object(0x3c)
|
||||
|
||||
set_object_flag_bank1(0x3c, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x3c, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x3c, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x3c, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0458, 0x3c, 0x04ff, 0xff)
|
||||
|
||||
beginloop(0x09)
|
||||
@@ -2938,23 +2938,23 @@ u8 func0414_outro[] = {
|
||||
chr_do_animation(0x02c9, -1, -1, 0x06, 0x00, CHR_ELVIS, 4)
|
||||
|
||||
show_object(0x23)
|
||||
set_object_flag_bank1(0x23, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x23, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x23, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x23, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02ca, 0x23, 0x04ff, 0xff)
|
||||
|
||||
show_object(0x24)
|
||||
set_object_flag_bank1(0x24, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x24, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x24, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x24, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02cb, 0x24, 0x04ff, 0xff)
|
||||
|
||||
show_object(0x25)
|
||||
set_object_flag_bank1(0x25, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x25, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x25, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x25, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02cc, 0x25, 0x04ff, 0xff)
|
||||
|
||||
show_object(0x26)
|
||||
set_object_flag_bank1(0x26, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x26, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x26, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x26, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02cd, 0x26, 0x04ff, 0xff)
|
||||
|
||||
beginloop(0x0b)
|
||||
@@ -3104,11 +3104,11 @@ u8 func1019_blow_pillars[] = {
|
||||
|
||||
// 1
|
||||
label(0x2d)
|
||||
unset_object_flag_bank0(0x27, OBJECTFLAG0_00000100)
|
||||
unset_object_flag_bank0(0x28, OBJECTFLAG0_00000100)
|
||||
unset_object_flag_bank0(0x29, OBJECTFLAG0_00000100)
|
||||
unset_object_flag_bank0(OBJ_PILLAR1, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank0(0x27, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(0x27, OBJFLAG_00000100)
|
||||
unset_object_flag(0x28, OBJFLAG_00000100)
|
||||
unset_object_flag(0x29, OBJFLAG_00000100)
|
||||
unset_object_flag(OBJ_PILLAR1, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag(0x27, OBJFLAG_INVINCIBLE)
|
||||
destroy_object(0x27)
|
||||
yield
|
||||
yield
|
||||
@@ -3123,8 +3123,8 @@ u8 func1019_blow_pillars[] = {
|
||||
|
||||
// 2
|
||||
label(0x2d)
|
||||
unset_object_flag_bank0(OBJ_PILLAR2, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank0(0x28, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(OBJ_PILLAR2, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag(0x28, OBJFLAG_INVINCIBLE)
|
||||
destroy_object(0x28)
|
||||
yield
|
||||
yield
|
||||
@@ -3139,8 +3139,8 @@ u8 func1019_blow_pillars[] = {
|
||||
|
||||
// 3
|
||||
label(0x2d)
|
||||
unset_object_flag_bank0(OBJ_PILLAR3, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank0(0x29, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(OBJ_PILLAR3, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag(0x29, OBJFLAG_INVINCIBLE)
|
||||
destroy_object(0x29)
|
||||
yield
|
||||
yield
|
||||
@@ -3155,12 +3155,12 @@ u8 func1004_setup_pillars[] = {
|
||||
yield
|
||||
shuffle_ruins_pillars(OBJ_PILLAR1, OBJ_PILLAR2, OBJ_PILLAR3, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x27, 0x28, 0x29, 0x2f, 0x30, 0x31, 0x32, 0x33)
|
||||
yield
|
||||
set_object_flag_bank2(OBJ_PILLAR1, OBJECTFLAG2_RTRACKED_YELLOW)
|
||||
set_object_flag_bank2(OBJ_PILLAR2, OBJECTFLAG2_RTRACKED_YELLOW)
|
||||
set_object_flag_bank2(OBJ_PILLAR3, OBJECTFLAG2_RTRACKED_YELLOW)
|
||||
set_object_flag_bank0(OBJ_PILLAR1, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag_bank0(OBJ_PILLAR2, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag_bank0(OBJ_PILLAR3, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag3(OBJ_PILLAR1, OBJFLAG3_RTRACKED_YELLOW)
|
||||
set_object_flag3(OBJ_PILLAR2, OBJFLAG3_RTRACKED_YELLOW)
|
||||
set_object_flag3(OBJ_PILLAR3, OBJFLAG3_RTRACKED_YELLOW)
|
||||
set_object_flag(OBJ_PILLAR1, OBJFLAG_INVINCIBLE)
|
||||
set_object_flag(OBJ_PILLAR2, OBJFLAG_INVINCIBLE)
|
||||
set_object_flag(OBJ_PILLAR3, OBJFLAG_INVINCIBLE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -3174,8 +3174,8 @@ u8 func101d_remove_pillar_shadow[] = {
|
||||
label(0x06)
|
||||
hide_object(0x3d)
|
||||
hide_object(0x3e)
|
||||
unset_object_flag_bank1(0x4e, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank1(0x4f, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(0x4e, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag2(0x4f, OBJFLAG2_INVISIBLE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
label(0x2d)
|
||||
@@ -3585,10 +3585,10 @@ u8 func1020_show_phoenix[] = {
|
||||
if_object_in_good_condition(0x2c, /*goto*/ 0x2d)
|
||||
if_object_in_good_condition(0x2d, /*goto*/ 0x2d)
|
||||
if_object_in_good_condition(0x2e, /*goto*/ 0x2d)
|
||||
unset_object_flag_bank0(OBJ_PHOENIX1, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(OBJ_PHOENIX1, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank0(OBJ_PHOENIX2, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(OBJ_PHOENIX2, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag(OBJ_PHOENIX1, OBJFLAG_00100000)
|
||||
unset_object_flag2(OBJ_PHOENIX1, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag(OBJ_PHOENIX2, OBJFLAG_00100000)
|
||||
unset_object_flag2(OBJ_PHOENIX2, OBJFLAG2_INVISIBLE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
label(0x2d)
|
||||
endloop(0x04)
|
||||
@@ -3615,8 +3615,8 @@ u8 func1021_handle_mine[] = {
|
||||
|
||||
u8 func1022_armyroom_exitdoors[] = {
|
||||
yield
|
||||
set_object_flag_bank1(0x45, OBJECTFLAG1_08000000)
|
||||
set_object_flag_bank1(0x46, OBJECTFLAG1_10000000)
|
||||
set_object_flag2(0x45, OBJFLAG2_08000000)
|
||||
set_object_flag2(0x46, OBJFLAG2_10000000)
|
||||
if_difficulty_gt(DIFF_SA, /*goto*/ 0x2d)
|
||||
|
||||
// A and SA
|
||||
@@ -3625,8 +3625,8 @@ u8 func1022_armyroom_exitdoors[] = {
|
||||
endloop(0x91)
|
||||
|
||||
label(0x06)
|
||||
unset_object_flag_bank1(0x45, OBJECTFLAG1_08000000)
|
||||
unset_object_flag_bank1(0x46, OBJECTFLAG1_10000000)
|
||||
unset_object_flag2(0x45, OBJFLAG2_08000000)
|
||||
unset_object_flag2(0x46, OBJFLAG2_10000000)
|
||||
|
||||
// All difficulties
|
||||
label(0x2d)
|
||||
@@ -3653,7 +3653,7 @@ u8 unregistered_function1[] = {
|
||||
*/
|
||||
u8 unregistered_function2[] = {
|
||||
beginloop(0x04)
|
||||
if_object_flag_bank2(OBJ_PUZZLEROCK, OBJECTFLAG2_PUSHABLE, /*goto*/ 0x2d)
|
||||
if_object_flag3(OBJ_PUZZLEROCK, OBJFLAG3_PUSHABLE, /*goto*/ 0x2d)
|
||||
dprint 'C','A','N','T',' ','P','U','S','H','\n',0,
|
||||
reloop(0x04)
|
||||
|
||||
@@ -3713,8 +3713,8 @@ u8 func1024_check_grenades_wasted[] = {
|
||||
|
||||
u8 func1023_setup_rtracker[] = {
|
||||
yield
|
||||
set_object_flag_bank2(OBJ_PHOENIX1, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag_bank2(OBJ_PHOENIX2, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_PHOENIX1, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_PHOENIX2, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
||||
@@ -914,7 +914,7 @@ u8 func1005_check_leader_dead[] = {
|
||||
};
|
||||
|
||||
u8 func1009_check_king1_dead[] = {
|
||||
set_object_flag_bank0(OBJ_BRIDGE, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_BRIDGE, OBJFLAG_DEACTIVATED)
|
||||
|
||||
beginloop(0x03)
|
||||
if_chr_death_animation_finished(CHR_KING1, /*goto*/ 0x2d)
|
||||
@@ -932,7 +932,7 @@ u8 func1009_check_king1_dead[] = {
|
||||
};
|
||||
|
||||
u8 func100a_check_king2_dead[] = {
|
||||
set_object_flag_bank0(OBJ_BRIDGE, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_BRIDGE, OBJFLAG_DEACTIVATED)
|
||||
if_difficulty_lt(DIFF_SA, /*goto*/ 0x0e)
|
||||
|
||||
beginloop(0x03)
|
||||
@@ -950,7 +950,7 @@ u8 func100a_check_king2_dead[] = {
|
||||
};
|
||||
|
||||
u8 func100b_check_king3_dead[] = {
|
||||
set_object_flag_bank0(OBJ_BRIDGE, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_BRIDGE, OBJFLAG_DEACTIVATED)
|
||||
if_difficulty_lt(DIFF_PA, /*goto*/ 0x0e)
|
||||
|
||||
beginloop(0x03)
|
||||
|
||||
+68
-68
@@ -742,13 +742,13 @@ u8 func1005_jon_msgs_meetup[] = {
|
||||
label(0x06)
|
||||
set_stage_flag(STAGEFLAG_ELVIS_STASHED)
|
||||
mute_channel(CHANNEL_0)
|
||||
unset_object_flag_bank1(0x0d, OBJECTFLAG1_08000000)
|
||||
set_object_flag_bank1(0x0d, OBJECTFLAG1_10000000)
|
||||
unset_object_flag2(0x0d, OBJFLAG2_08000000)
|
||||
set_object_flag2(0x0d, OBJFLAG2_10000000)
|
||||
unlock_door(0x0d, 0x20)
|
||||
release_grabbed_object(CHR_BOND)
|
||||
yield
|
||||
unset_object_flag_bank2(OBJ_HOVERBED, OBJECTFLAG2_GRABBABLE)
|
||||
unset_object_flag_bank2(OBJ_HOVERBED, OBJECTFLAG2_PUSHABLE)
|
||||
unset_object_flag3(OBJ_HOVERBED, OBJFLAG3_GRABBABLE)
|
||||
unset_object_flag3(OBJ_HOVERBED, OBJFLAG3_PUSHABLE)
|
||||
restart_timer
|
||||
speak(CHR_BOND, 0x4812, 0x8153, CHANNEL_4, COLOR_03_RED) // "Good work, Jo. We need to meet up. They're getting..."
|
||||
|
||||
@@ -1298,8 +1298,8 @@ u8 func0413_jonathan_hangar[] = {
|
||||
set_stage_flag(STAGEFLAG_INNER_DOOR_OPENING)
|
||||
open_door(0x2c)
|
||||
open_door(0x2d)
|
||||
set_object_flag_bank0(0x2c, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x2d, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x2c, OBJFLAG_40000000)
|
||||
set_object_flag(0x2d, OBJFLAG_40000000)
|
||||
message(CHR_P1P2, 0x4827) // "Inner hangar door is opening."
|
||||
|
||||
label(0x32)
|
||||
@@ -1324,8 +1324,8 @@ u8 func0413_jonathan_hangar[] = {
|
||||
set_stage_flag(STAGEFLAG_OUTER_DOOR_OPENING)
|
||||
open_door(0x2e)
|
||||
open_door(0x2f)
|
||||
set_object_flag_bank0(0x2e, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x2f, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x2e, OBJFLAG_40000000)
|
||||
set_object_flag(0x2f, OBJFLAG_40000000)
|
||||
message(CHR_P1P2, 0x4825) // "Outer hangar door is opening."
|
||||
|
||||
beginloop(0x20)
|
||||
@@ -1838,10 +1838,10 @@ u8 func1009_blow_up_wall[] = {
|
||||
endloop(0x08)
|
||||
|
||||
label(0x06)
|
||||
unset_object_flag_bank0(OBJ_WALLMINE, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank0(OBJ_WALLMINE, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank0(OBJ_WALLOBJECT, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank0(OBJ_WALLDOOR, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(OBJ_WALLMINE, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag(OBJ_WALLMINE, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag(OBJ_WALLOBJECT, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag(OBJ_WALLDOOR, OBJFLAG_INVINCIBLE)
|
||||
yield
|
||||
yield
|
||||
destroy_object(OBJ_WALLMINE)
|
||||
@@ -2052,8 +2052,8 @@ u8 func100f_terminals[] = {
|
||||
label(0x32)
|
||||
open_door(0x2c)
|
||||
open_door(0x2d)
|
||||
set_object_flag_bank0(0x2c, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x2d, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x2c, OBJFLAG_40000000)
|
||||
set_object_flag(0x2d, OBJFLAG_40000000)
|
||||
reloop(0x04)
|
||||
|
||||
// Terminal 2
|
||||
@@ -2073,8 +2073,8 @@ u8 func100f_terminals[] = {
|
||||
label(0x32)
|
||||
open_door(0x2e)
|
||||
open_door(0x2f)
|
||||
set_object_flag_bank0(0x2e, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x2f, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x2e, OBJFLAG_40000000)
|
||||
set_object_flag(0x2f, OBJFLAG_40000000)
|
||||
reloop(0x04)
|
||||
|
||||
// Wait 2 seconds
|
||||
@@ -2240,7 +2240,7 @@ u8 func1012_hoverbike_auto_doors[] = {
|
||||
reloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
set_object_flag_bank0(0x0a, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x0a, OBJFLAG_40000000)
|
||||
open_door(0x0a)
|
||||
reloop(0x04)
|
||||
|
||||
@@ -2250,7 +2250,7 @@ u8 func1012_hoverbike_auto_doors[] = {
|
||||
reloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
set_object_flag_bank0(0x0b, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x0b, OBJFLAG_40000000)
|
||||
open_door(0x0b)
|
||||
reloop(0x04)
|
||||
|
||||
@@ -2260,8 +2260,8 @@ u8 func1012_hoverbike_auto_doors[] = {
|
||||
reloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
set_object_flag_bank0(0x08, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x09, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x08, OBJFLAG_40000000)
|
||||
set_object_flag(0x09, OBJFLAG_40000000)
|
||||
open_door(0x08)
|
||||
open_door(0x09)
|
||||
reloop(0x04)
|
||||
@@ -2272,7 +2272,7 @@ u8 func1012_hoverbike_auto_doors[] = {
|
||||
reloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
set_object_flag_bank0(0x0c, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x0c, OBJFLAG_40000000)
|
||||
open_door(0x0c)
|
||||
reloop(0x04)
|
||||
|
||||
@@ -2282,7 +2282,7 @@ u8 func1012_hoverbike_auto_doors[] = {
|
||||
reloop(0x04)
|
||||
|
||||
label(0x06)
|
||||
set_object_flag_bank0(0x05, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x05, OBJFLAG_40000000)
|
||||
open_door(0x05)
|
||||
endloop(0x04)
|
||||
|
||||
@@ -2474,8 +2474,8 @@ u8 func1002_intro[] = {
|
||||
set_chr_hiddenflag(0x24, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x019f, -1, -1, 0x06, 0x00, 0x24, 4)
|
||||
|
||||
set_object_flag_bank1(0x00, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x00, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x00, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x00, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01a0, 0x00, 0x04ff, 0xff)
|
||||
restart_timer
|
||||
fade_to_color(0x000000ff, 0)
|
||||
@@ -2763,8 +2763,8 @@ u8 func1002_intro[] = {
|
||||
set_chr_hiddenflag(0x24, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x019f, -2, -1, 0x06, 0x00, 0x24, 2)
|
||||
|
||||
unset_object_flag_bank1(OBJ_HOVERBED, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_HOVERBED, OBJECTFLAG2_00000010)
|
||||
unset_object_flag2(OBJ_HOVERBED, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_HOVERBED, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01a0, OBJ_HOVERBED, 0x04ff, 0xfe)
|
||||
|
||||
drop_concealed_items(0x23)
|
||||
@@ -2823,8 +2823,8 @@ u8 func0c01_midcutscene[] = {
|
||||
set_chr_hiddenflag(CHR_JONATHAN, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x01cd, -1, -1, 0x06, 0x00, CHR_JONATHAN, 4)
|
||||
|
||||
set_object_flag_bank1(0x11, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x11, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(0x11, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x11, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01cf, 0x11, 0x04ff, 0xff)
|
||||
|
||||
show_nonessential_chrs(FALSE)
|
||||
@@ -2963,11 +2963,11 @@ u8 func0c01_midcutscene[] = {
|
||||
set_chr_hiddenflag(CHR_JONATHAN, CHRHFLAG_00020000)
|
||||
chr_do_animation(0x01cd, -2, -1, 0x06, 0x00, CHR_JONATHAN, 2)
|
||||
|
||||
unset_object_flag_bank1(0x11, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(0x11, OBJECTFLAG2_00000010)
|
||||
unset_object_flag2(0x11, OBJFLAG2_04000000)
|
||||
set_object_flag3(0x11, OBJFLAG3_00000010)
|
||||
object_do_animation(0x01cf, 0x11, 0x04ff, 0xfe)
|
||||
|
||||
unset_object_flag_bank1(0x0a, OBJECTFLAG1_20000000)
|
||||
unset_object_flag2(0x0a, OBJFLAG2_20000000)
|
||||
unset_chr_chrflag(CHR_ELVIS, CHRCFLAG_INVINCIBLE_TO_GUNFIRE)
|
||||
unset_chr_chrflag(CHR_JONATHAN, CHRCFLAG_INVINCIBLE_TO_GUNFIRE)
|
||||
set_ailist(CHR_JONATHAN, AILIST_JONATHAN_HANGAR)
|
||||
@@ -2996,8 +2996,8 @@ u8 func101b_gas_sound[] = {
|
||||
u8 func0c02_outro[] = {
|
||||
open_door(0x2c)
|
||||
open_door(0x2e)
|
||||
set_object_flag_bank0(0x2c, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x2d, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x2c, OBJFLAG_40000000)
|
||||
set_object_flag(0x2d, OBJFLAG_40000000)
|
||||
label(0x32)
|
||||
set_chr_chrflag(CHR_BOND, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
@@ -3008,8 +3008,8 @@ u8 func0c02_outro[] = {
|
||||
hide_object(OBJ_UFO2)
|
||||
|
||||
show_object(OBJ_UFO1)
|
||||
set_object_flag_bank1(OBJ_UFO1, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_UFO1, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_UFO1, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_UFO1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02d3, OBJ_UFO1, 0x04ff, 0xff)
|
||||
|
||||
set_stage_flag(STAGEFLAG_STARTED_OUTRO)
|
||||
@@ -3033,8 +3033,8 @@ u8 func0c02_outro[] = {
|
||||
camera_movement(0x02d4)
|
||||
|
||||
show_object(OBJ_UFO1)
|
||||
set_object_flag_bank1(OBJ_UFO1, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_UFO1, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_UFO1, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_UFO1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02d5, OBJ_UFO1, 0x04ff, 0xff)
|
||||
|
||||
set_chr_chrflag(0x2b, CHRCFLAG_UNPLAYABLE)
|
||||
@@ -3091,8 +3091,8 @@ u8 func0415_ufo_exit[] = {
|
||||
misc_command(0x0000, 0x0e, 0x05)
|
||||
hide_object(OBJ_UFO2)
|
||||
show_object(OBJ_UFO1)
|
||||
set_object_flag_bank1(OBJ_UFO1, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_UFO1, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_UFO1, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_UFO1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02d3, OBJ_UFO1, 0x04ff, 0xff)
|
||||
set_chr_chrflag(CHR_ELVIS, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_JONATHAN, CHRCFLAG_HIDDEN)
|
||||
@@ -3154,8 +3154,8 @@ u8 func1021_jo_escaping[] = {
|
||||
set_ailist(CHR_P1P2, GAILIST_IDLE)
|
||||
|
||||
show_object(OBJ_UFO1)
|
||||
set_object_flag_bank1(OBJ_UFO1, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_UFO1, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_UFO1, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_UFO1, OBJFLAG3_00000010)
|
||||
object_do_animation(0x02d5, OBJ_UFO1, 0x04ff, 0xff)
|
||||
|
||||
set_chr_chrflag(CHR_P1P2, CHRCFLAG_UNPLAYABLE)
|
||||
@@ -3432,16 +3432,16 @@ u8 func1020_msg_jetbike[] = {
|
||||
};
|
||||
|
||||
u8 func1024_wall_immune_to_explosives[] = {
|
||||
set_object_flag_bank0(OBJ_WALLOBJECT, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag_bank0(OBJ_WALLDOOR, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag(OBJ_WALLOBJECT, OBJFLAG_INVINCIBLE)
|
||||
set_object_flag(OBJ_WALLDOOR, OBJFLAG_INVINCIBLE)
|
||||
|
||||
beginloop(0x04)
|
||||
if_stage_flag_eq(STAGEFLAG_JON_FINISHED_EXPLOSIVES, TRUE, /*goto*/ 0x32)
|
||||
endloop(0x04)
|
||||
|
||||
label(0x32)
|
||||
unset_object_flag_bank0(OBJ_WALLOBJECT, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag_bank0(OBJ_WALLDOOR, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(OBJ_WALLOBJECT, OBJFLAG_INVINCIBLE)
|
||||
unset_object_flag(OBJ_WALLDOOR, OBJFLAG_INVINCIBLE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -3454,7 +3454,7 @@ u8 func1024_wall_immune_to_explosives[] = {
|
||||
#define glass_explosives_thing(barrel) \
|
||||
beginloop(0x04) \
|
||||
if_object_in_good_condition(barrel, /*goto*/ 0x32) \
|
||||
unset_object_flag_bank0(OBJ_MEDPACK_GLASS, OBJECTFLAG0_INVINCIBLE) \
|
||||
unset_object_flag(OBJ_MEDPACK_GLASS, OBJFLAG_INVINCIBLE) \
|
||||
restart_timer \
|
||||
\
|
||||
beginloop(0x08) \
|
||||
@@ -3462,7 +3462,7 @@ u8 func1024_wall_immune_to_explosives[] = {
|
||||
endloop(0x08) \
|
||||
\
|
||||
label(0x06) \
|
||||
set_object_flag_bank0(OBJ_MEDPACK_GLASS, OBJECTFLAG0_INVINCIBLE) \
|
||||
set_object_flag(OBJ_MEDPACK_GLASS, OBJFLAG_INVINCIBLE) \
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE) \
|
||||
label(0x32) \
|
||||
endloop(0x04) \
|
||||
@@ -3472,7 +3472,7 @@ u8 func1024_wall_immune_to_explosives[] = {
|
||||
|
||||
|
||||
u8 unregistered_function2[] = {
|
||||
set_object_flag_bank0(OBJ_MEDPACK_GLASS, OBJECTFLAG0_INVINCIBLE)
|
||||
set_object_flag(OBJ_MEDPACK_GLASS, OBJFLAG_INVINCIBLE)
|
||||
glass_explosives_thing(0x23)
|
||||
endlist
|
||||
};
|
||||
@@ -3509,8 +3509,8 @@ u8 unregistered_function8[] = {
|
||||
|
||||
u8 func1026_ufo_spinning[] = {
|
||||
show_object(OBJ_UFO2)
|
||||
set_object_flag_bank1(OBJ_UFO2, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_UFO2, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_UFO2, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_UFO2, OBJFLAG3_00000010)
|
||||
|
||||
label(0x03)
|
||||
object_do_animation(0x0459, OBJ_UFO2, 0x04ff, 0xff)
|
||||
@@ -3548,8 +3548,8 @@ u8 func102e_keep_hangar_doors_open[] = {
|
||||
label(0x32)
|
||||
open_door(0x2c)
|
||||
open_door(0x2d)
|
||||
set_object_flag_bank0(0x2c, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x2d, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x2c, OBJFLAG_40000000)
|
||||
set_object_flag(0x2d, OBJFLAG_40000000)
|
||||
reloop(0x04)
|
||||
|
||||
// Door 2 closing
|
||||
@@ -3560,8 +3560,8 @@ u8 func102e_keep_hangar_doors_open[] = {
|
||||
label(0x32)
|
||||
open_door(0x2e)
|
||||
open_door(0x2f)
|
||||
set_object_flag_bank0(0x2e, OBJECTFLAG0_40000000)
|
||||
set_object_flag_bank0(0x2f, OBJECTFLAG0_40000000)
|
||||
set_object_flag(0x2e, OBJFLAG_40000000)
|
||||
set_object_flag(0x2f, OBJFLAG_40000000)
|
||||
endloop(0x04)
|
||||
|
||||
// Terminal destroyed
|
||||
@@ -3581,15 +3581,15 @@ u8 func102f_toggle_remotemines[] = {
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
label(0x06)
|
||||
unset_object_flag_bank0(OBJ_REMOTEMINES, OBJECTFLAG0_00100000)
|
||||
unset_object_flag_bank1(OBJ_REMOTEMINES, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag(OBJ_REMOTEMINES, OBJFLAG_00100000)
|
||||
unset_object_flag2(OBJ_REMOTEMINES, OBJFLAG2_INVISIBLE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
||||
u8 func1030_setup_medpack_glass[] = {
|
||||
if_difficulty_gt(DIFF_A, /*goto*/ 0x32)
|
||||
unset_object_flag_bank0(OBJ_MEDPACK_GLASS, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(OBJ_MEDPACK_GLASS, OBJFLAG_INVINCIBLE)
|
||||
destroy_object(OBJ_MEDPACK_GLASS)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
|
||||
@@ -3602,14 +3602,14 @@ u8 func1030_setup_medpack_glass[] = {
|
||||
};
|
||||
|
||||
u8 func1031_disable_chambers[] = {
|
||||
set_object_flag_bank0(0x46, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(0x47, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(0x48, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(0x49, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(0x4a, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(0x4b, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(0x4c, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag_bank0(0x4d, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(0x46, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(0x47, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(0x48, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(0x49, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(0x4a, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(0x4b, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(0x4c, OBJFLAG_DEACTIVATED)
|
||||
set_object_flag(0x4d, OBJFLAG_DEACTIVATED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -3637,9 +3637,9 @@ u8 func1433_start_lift[] = {
|
||||
|
||||
u8 func101c_setup_rtracker[] = {
|
||||
yield
|
||||
set_object_flag_bank2(OBJ_FALCON2SCOPE1, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag_bank2(OBJ_FALCON2SCOPE2, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag_bank2(OBJ_REMOTEMINES, OBJECTFLAG2_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_FALCON2SCOPE1, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_FALCON2SCOPE2, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_object_flag3(OBJ_REMOTEMINES, OBJFLAG3_RTRACKED_BLUE)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
|
||||
+20
-20
@@ -1501,7 +1501,7 @@ u8 func1006_lift_disabling[] = {
|
||||
// Disable chief's lift
|
||||
label(0x2c)
|
||||
lock_door(0x50, 0x40)
|
||||
set_object_flag_bank0(OBJ_CHIEF_LIFT, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_CHIEF_LIFT, OBJFLAG_DEACTIVATED)
|
||||
|
||||
// Wait until player Y above -4300
|
||||
beginloop(0x03)
|
||||
@@ -1515,9 +1515,9 @@ u8 func1006_lift_disabling[] = {
|
||||
label(0x06)
|
||||
set_lights_state(0x0082, 0x02, 0x00, 0x78, 0x00)
|
||||
play_sound(0x8147, -1)
|
||||
set_object_flag_bank0(OBJ_BLONDE_LIFT, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_BLONDE_LIFT, OBJFLAG_DEACTIVATED)
|
||||
unlock_door(0x50, 0x40)
|
||||
unset_object_flag_bank0(OBJ_CHIEF_LIFT, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_CHIEF_LIFT, OBJFLAG_DEACTIVATED)
|
||||
unset_chr_chrflag(CHR_CHIEF, CHRCFLAG_HIDDEN)
|
||||
set_ailist(CHR_CHIEF, AILIST_CHIEF)
|
||||
message(CHR_BOND, 0x4a19) // "Lift has been disabled."
|
||||
@@ -1541,8 +1541,8 @@ u8 func1006_lift_disabling[] = {
|
||||
|
||||
// Activate lifts and exit
|
||||
label(0x2c)
|
||||
unset_object_flag_bank0(OBJ_CHIEF_LIFT, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag_bank0(OBJ_BLONDE_LIFT, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_CHIEF_LIFT, OBJFLAG_DEACTIVATED)
|
||||
unset_object_flag(OBJ_BLONDE_LIFT, OBJFLAG_DEACTIVATED)
|
||||
set_ailist(CHR_SELF, GAILIST_IDLE)
|
||||
endlist
|
||||
};
|
||||
@@ -1625,7 +1625,7 @@ u8 func100f_disable_chiefs_lift[] = {
|
||||
|
||||
// Disable chief's lift
|
||||
label(0x06)
|
||||
set_object_flag_bank0(OBJ_CHIEF_LIFT, OBJECTFLAG0_DEACTIVATED)
|
||||
set_object_flag(OBJ_CHIEF_LIFT, OBJFLAG_DEACTIVATED)
|
||||
|
||||
// A or SA - return
|
||||
label(0x0d)
|
||||
@@ -1653,9 +1653,9 @@ u8 func1007_bomb_logic[] = {
|
||||
hide_object(OBJ_COOP_BOMB)
|
||||
assign_sound(0x8144, CHANNEL_1)
|
||||
play_sound_from_object(CHANNEL_1, OBJ_PLANTED_BOMB, 0x0258, 0x04b0)
|
||||
unset_object_flag_bank1(OBJ_PLANTED_BOMB, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag2(OBJ_PLANTED_BOMB, OBJFLAG2_INVISIBLE)
|
||||
set_object_image(OBJ_PLANTED_BOMB, 0x00, 0x0f)
|
||||
unset_object_flag_bank0(OBJ_PLANTED_BOMB, OBJECTFLAG0_INVINCIBLE)
|
||||
unset_object_flag(OBJ_PLANTED_BOMB, OBJFLAG_INVINCIBLE)
|
||||
|
||||
// Start 4 minute timer
|
||||
set_countdown_timer(240)
|
||||
@@ -1927,10 +1927,10 @@ u8 func100c_lift_doors[] = {
|
||||
};
|
||||
|
||||
u8 func0416_intro[] = {
|
||||
set_object_flag_bank1(0x61, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank1(0x62, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank0(0x61, OBJECTFLAG0_00000100)
|
||||
unset_object_flag_bank0(0x62, OBJECTFLAG0_00000100)
|
||||
set_object_flag2(0x61, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag2(0x62, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag(0x61, OBJFLAG_00000100)
|
||||
unset_object_flag(0x62, OBJFLAG_00000100)
|
||||
set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
set_music_track(MUSIC_G5_INTRO)
|
||||
@@ -1990,10 +1990,10 @@ u8 func0416_intro[] = {
|
||||
label(0xba)
|
||||
hide_object(OBJ_LOBBYDOOR_LEFT)
|
||||
hide_object(OBJ_LOBBYDOOR_RIGHT)
|
||||
unset_object_flag_bank1(0x61, OBJECTFLAG1_INVISIBLE)
|
||||
unset_object_flag_bank1(0x62, OBJECTFLAG1_INVISIBLE)
|
||||
set_object_flag_bank0(0x61, OBJECTFLAG0_00000100)
|
||||
set_object_flag_bank0(0x62, OBJECTFLAG0_00000100)
|
||||
unset_object_flag2(0x61, OBJFLAG2_INVISIBLE)
|
||||
unset_object_flag2(0x62, OBJFLAG2_INVISIBLE)
|
||||
set_object_flag(0x61, OBJFLAG_00000100)
|
||||
set_object_flag(0x62, OBJFLAG_00000100)
|
||||
mute_channel(CHANNEL_10)
|
||||
unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
||||
unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
||||
@@ -2020,8 +2020,8 @@ u8 func0417_outro[] = {
|
||||
set_chr_chrflag(CHR_CASS, CHRCFLAG_HIDDEN)
|
||||
set_chr_chrflag(CHR_CASS, CHRCFLAG_INVINCIBLE_TO_GUNFIRE)
|
||||
show_object(OBJ_SHUTTLE2)
|
||||
set_object_flag_bank1(OBJ_SHUTTLE2, OBJECTFLAG1_04000000)
|
||||
set_object_flag_bank2(OBJ_SHUTTLE2, OBJECTFLAG2_00000010)
|
||||
set_object_flag2(OBJ_SHUTTLE2, OBJFLAG2_04000000)
|
||||
set_object_flag3(OBJ_SHUTTLE2, OBJFLAG3_00000010)
|
||||
object_do_animation(0x0475, OBJ_SHUTTLE2, 0x04ff, 0xff)
|
||||
show_nonessential_chrs(FALSE)
|
||||
restart_timer
|
||||
@@ -2115,7 +2115,7 @@ u8 func1010_init_lighting[] = {
|
||||
u8 func1011_shuttle_animation[] = {
|
||||
yield
|
||||
show_object(OBJ_SHUTTLE1)
|
||||
set_object_flag_bank2(OBJ_SHUTTLE1, OBJECTFLAG2_00000010)
|
||||
set_object_flag3(OBJ_SHUTTLE1, OBJFLAG3_00000010)
|
||||
set_object_part_visible(OBJ_SHUTTLE1, FALSE)
|
||||
label(0x09)
|
||||
restart_timer
|
||||
@@ -2153,7 +2153,7 @@ u8 func1012_chief_lift[] = {
|
||||
|
||||
// Activate chief's lift
|
||||
label(0x2c)
|
||||
unset_object_flag_bank0(OBJ_CHIEF_LIFT, OBJECTFLAG0_DEACTIVATED)
|
||||
unset_object_flag(OBJ_CHIEF_LIFT, OBJFLAG_DEACTIVATED)
|
||||
|
||||
// The goto first here means that the lift continues to be activated every
|
||||
// 3 seconds, but it is never deactivated so this is a no op.
|
||||
|
||||
@@ -3098,21 +3098,21 @@ glabel aiIfChrActivatedObject
|
||||
//
|
||||
// if (obj && obj->prop) {
|
||||
// if (cmd[2] == CHR_ANY) {
|
||||
// if (obj->hidden & (OBJHIDDENFLAG_ACTIVATED_BY_BOND | OBJHIDDENFLAG_ACTIVATED_BY_COOP)) {
|
||||
// if (obj->hidden & (OBJHFLAG_ACTIVATED_BY_BOND | OBJHFLAG_ACTIVATED_BY_COOP)) {
|
||||
// pass = true;
|
||||
// obj->hidden &= ~(OBJHIDDENFLAG_ACTIVATED_BY_BOND | OBJHIDDENFLAG_ACTIVATED_BY_COOP);
|
||||
// obj->hidden &= ~(OBJHFLAG_ACTIVATED_BY_BOND | OBJHFLAG_ACTIVATED_BY_COOP);
|
||||
// }
|
||||
// } else {
|
||||
// struct chrdata *chr = chrFindById(g_Vars.chrdata, cmd[2]);
|
||||
// pass = false;
|
||||
//
|
||||
// if (chr && chr->prop) {
|
||||
// if (chr->prop == g_Vars.bond->prop && (obj->hidden & OBJHIDDENFLAG_ACTIVATED_BY_BOND)) {
|
||||
// if (chr->prop == g_Vars.bond->prop && (obj->hidden & OBJHFLAG_ACTIVATED_BY_BOND)) {
|
||||
// pass = true;
|
||||
// obj->hidden &= ~OBJHIDDENFLAG_ACTIVATED_BY_BOND;
|
||||
// } else if (g_Vars.coopplayernum >= 0 && chr->prop == g_Vars.coop->prop && (obj->hidden & OBJHIDDENFLAG_ACTIVATED_BY_COOP)) {
|
||||
// obj->hidden &= ~OBJHFLAG_ACTIVATED_BY_BOND;
|
||||
// } else if (g_Vars.coopplayernum >= 0 && chr->prop == g_Vars.coop->prop && (obj->hidden & OBJHFLAG_ACTIVATED_BY_COOP)) {
|
||||
// pass = true;
|
||||
// obj->hidden &= ~OBJHIDDENFLAG_ACTIVATED_BY_COOP;
|
||||
// obj->hidden &= ~OBJHFLAG_ACTIVATED_BY_COOP;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
@@ -8180,7 +8180,7 @@ glabel aiRemoveObjectAtPropPreset
|
||||
//{
|
||||
// if (g_Vars.chrdata->proppreset1 >= 0) {
|
||||
// struct defaultobj *obj = g_Vars.props[g_Vars.chrdata->proppreset1].obj;
|
||||
// obj->hidden &= ~OBJHIDDENFLAG_00200000;
|
||||
// obj->hidden &= ~OBJHFLAG_00200000;
|
||||
// }
|
||||
//
|
||||
// g_Vars.chrdata->proppreset1 = -1;
|
||||
@@ -11792,7 +11792,7 @@ bool ai0170(void)
|
||||
u8 *cmd = g_Vars.ailist + g_Vars.aioffset;
|
||||
struct weaponobj *weapon = g_Vars.chrdata->gunprop->weapon;
|
||||
|
||||
if (cmd[2] == 0 || ((weapon->hidden & OBJHIDDENFLAG_00000080) == 0 && cmd[2] == 1)) {
|
||||
if (cmd[2] == 0 || ((weapon->hidden & OBJHFLAG_00000080) == 0 && cmd[2] == 1)) {
|
||||
if (cmd[2] == 0) {
|
||||
func0f03ab74(g_Vars.chrdata, g_Vars.chrdata->gunprop, 1);
|
||||
}
|
||||
@@ -12158,7 +12158,7 @@ bool aiIfLiftStationary(void)
|
||||
if (obj && obj->prop && obj->type == OBJTYPE_LIFT) {
|
||||
struct liftobj *lift = (struct liftobj *)obj;
|
||||
|
||||
if ((obj->flags & OBJECTFLAG0_DEACTIVATED) || !lift->unk74) {
|
||||
if ((obj->flags & OBJFLAG_DEACTIVATED) || !lift->unk74) {
|
||||
pass = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -46180,20 +46180,20 @@ glabel func0f08df10
|
||||
|
||||
void func0f08e0c4(struct doorobj *door)
|
||||
{
|
||||
door->base.flags &= ~OBJECTFLAG0_40000000;
|
||||
door->base.hidden |= OBJHIDDENFLAG_00000200;
|
||||
door->base.flags &= ~OBJFLAG_40000000;
|
||||
door->base.hidden |= OBJHFLAG_00000200;
|
||||
|
||||
func0f08d784(door->soundtype, door->base.prop);
|
||||
doorActivatePortal(door);
|
||||
|
||||
if (door->doortype == DOORTYPE_8) {
|
||||
struct obj44 *obj44 = door->base.unk44;
|
||||
door->base.flags |= OBJECTFLAG0_02000000;
|
||||
door->base.flags |= OBJFLAG_02000000;
|
||||
door->perimfrac = 0;
|
||||
|
||||
if (obj44 && (door->base.flags & OBJECTFLAG0_00000100)) {
|
||||
if (obj44 && (door->base.flags & OBJFLAG_00000100)) {
|
||||
obj44->unk01 = 0;
|
||||
door->base.flags &= ~OBJECTFLAG0_00000100;
|
||||
door->base.flags &= ~OBJFLAG_00000100;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -46206,7 +46206,7 @@ void func0f08e0c4(struct doorobj *door)
|
||||
|
||||
void func0f08e1a0(struct doorobj *door)
|
||||
{
|
||||
door->base.flags &= ~OBJECTFLAG0_40000000;
|
||||
door->base.flags &= ~OBJFLAG_40000000;
|
||||
|
||||
func0f08daa8(door->soundtype, door->base.prop);
|
||||
|
||||
@@ -46233,7 +46233,7 @@ void func0f08e224(struct doorobj *door)
|
||||
if (door->doortype == DOORTYPE_8) {
|
||||
func0f0685e4(door->base.prop);
|
||||
|
||||
if (door->base.hidden & OBJHIDDENFLAG_00000080) {
|
||||
if (door->base.hidden & OBJHFLAG_00000080) {
|
||||
door->base.unk48->flags |= 1;
|
||||
func000159b0(&door->base.unk48->unk20);
|
||||
}
|
||||
@@ -46312,7 +46312,7 @@ void doorActivate(struct doorobj *door, s32 newmode)
|
||||
|
||||
s32 siblingmode = newmode;
|
||||
|
||||
if ((door->base.flags2 & OBJECTFLAG1_40000000) && newmode == DOORMODE_OPENING) {
|
||||
if ((door->base.flags2 & OBJFLAG2_40000000) && newmode == DOORMODE_OPENING) {
|
||||
siblingmode = DOORMODE_CLOSING;
|
||||
|
||||
if (door->mode == DOORMODE_IDLE) {
|
||||
@@ -47175,7 +47175,7 @@ glabel func0f08ed74
|
||||
// f32 maxfrac = door->mode == DOORMODE_OPENING ? door->maxfrac : 0;
|
||||
//
|
||||
// // Skedar Ruins random door stuckage
|
||||
// if (door->base.flags3 & OBJECTFLAG2_00000004) {
|
||||
// if (door->base.flags3 & OBJFLAG3_DOOR_STICKY) {
|
||||
// s32 value = (random() % 64) + 30;
|
||||
//
|
||||
// if ((g_Vars.lvframenum % value) == 0) {
|
||||
|
||||
@@ -17964,7 +17964,7 @@ void func0f197544(struct chrdata *chr)
|
||||
|
||||
if (prop && !prop->parent && prop->timetoregen == 0) {
|
||||
if (prop->type == PROPTYPE_WEAPON || prop->type == PROPTYPE_OBJ) {
|
||||
prop->obj->flags3 |= OBJECTFLAG2_00004000;
|
||||
prop->obj->flags3 |= OBJFLAG3_00004000;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+28
-28
@@ -1502,63 +1502,63 @@
|
||||
/**
|
||||
* Sets a flag on the object's flags property (object struct offset 0x08).
|
||||
*
|
||||
* Expects an OBJECTFLAG0 constant.
|
||||
* Expects an OBJECTFLAG constant.
|
||||
*/
|
||||
#define set_object_flag_bank0(object, objectflag0) \
|
||||
#define set_object_flag(object, objectflag) \
|
||||
mkshort(0x00aa), \
|
||||
object, \
|
||||
mkword(objectflag0),
|
||||
mkword(objectflag),
|
||||
|
||||
/**
|
||||
* Unsets a flag on the object's flags property.
|
||||
*
|
||||
* See set_object_flag_bank0 for more info.
|
||||
* See set_object_flag for more info.
|
||||
*/
|
||||
#define unset_object_flag_bank0(object, objectflag0) \
|
||||
#define unset_object_flag(object, objectflag) \
|
||||
mkshort(0x00ab), \
|
||||
object, \
|
||||
mkword(objectflag0),
|
||||
mkword(objectflag),
|
||||
|
||||
/**
|
||||
* Checks if the given object has the given flags property.
|
||||
*
|
||||
* See set_object_flag_bank0 for more info.
|
||||
* See set_object_flag for more info.
|
||||
*/
|
||||
#define if_object_has_flag(object, flag, label) \
|
||||
#define if_object_has_flag(object, objectflag, label) \
|
||||
mkshort(0x00ac), \
|
||||
object, \
|
||||
mkword(flag), \
|
||||
mkword(objectflag), \
|
||||
label,
|
||||
|
||||
/**
|
||||
* Sets a flag on the object's flags2 property (object struct offset 0x0c).
|
||||
*
|
||||
* Expects an OBJECTFLAG1 constant.
|
||||
* Expects an OBJECTFLAG2 constant.
|
||||
*/
|
||||
#define set_object_flag_bank1(object, objectflag1) \
|
||||
#define set_object_flag2(object, objectflag2) \
|
||||
mkshort(0x00ad), \
|
||||
object, \
|
||||
mkword(objectflag1),
|
||||
mkword(objectflag2),
|
||||
|
||||
/**
|
||||
* Unsets a flag on the object's flags2 property.
|
||||
*
|
||||
* See set_object_flag_bank1 for more info.
|
||||
* See set_object_flag2 for more info.
|
||||
*/
|
||||
#define unset_object_flag_bank1(object, objectflag1) \
|
||||
#define unset_object_flag2(object, objectflag2) \
|
||||
mkshort(0x00ae), \
|
||||
object, \
|
||||
mkword(objectflag1),
|
||||
mkword(objectflag2),
|
||||
|
||||
/**
|
||||
* Checks if the given object has the given flags2 property.
|
||||
*
|
||||
* See set_object_flag_bank1 for more info.
|
||||
* See set_object_flag2 for more info.
|
||||
*/
|
||||
#define if_object_flag_bank1(object, objectflag1, label) \
|
||||
#define if_object_flag2(object, objectflag2, label) \
|
||||
mkshort(0x00af), \
|
||||
object, \
|
||||
mkword(objectflag1), \
|
||||
mkword(objectflag2), \
|
||||
label,
|
||||
|
||||
/**
|
||||
@@ -2356,32 +2356,32 @@
|
||||
/**
|
||||
* Sets a flag on the object's flags3 property (object struct offset 0x10).
|
||||
*
|
||||
* Expects an OBJECTFLAG2 constant.
|
||||
* Expects an OBJECTFLAG3 constant.
|
||||
*/
|
||||
#define set_object_flag_bank2(object, objectflag2) \
|
||||
#define set_object_flag3(object, objectflag3) \
|
||||
mkshort(0x0118), \
|
||||
object, \
|
||||
mkword(objectflag2),
|
||||
mkword(objectflag3),
|
||||
|
||||
/**
|
||||
* Unsets a flag on the object's flags3 property.
|
||||
*
|
||||
* See set_object_flag_bank2 for more info.
|
||||
* See set_object_flag3 for more info.
|
||||
*/
|
||||
#define unset_object_flag_bank2(object, objectflag2) \
|
||||
#define unset_object_flag3(object, objectflag3) \
|
||||
mkshort(0x0119), \
|
||||
object, \
|
||||
mkword(objectflag2),
|
||||
mkword(objectflag3),
|
||||
|
||||
/**
|
||||
* Checks if the given object has the given flags3 property.
|
||||
*
|
||||
* See set_object_flag_bank2 for more info.
|
||||
* See set_object_flag3 for more info.
|
||||
*/
|
||||
#define if_object_flag_bank2(object, objectflag2, label) \
|
||||
#define if_object_flag3(object, objectflag3, label) \
|
||||
mkshort(0x011a), \
|
||||
object, \
|
||||
mkword(objectflag2), \
|
||||
mkword(objectflag3), \
|
||||
label,
|
||||
|
||||
/**
|
||||
@@ -2948,7 +2948,7 @@
|
||||
// If bool is false, run some function on the chr and their gun ground
|
||||
// prop, then follow the label.
|
||||
// If bool is true, don't call the function, and only follow the label if the
|
||||
// gun prop has OBJHIDDENFLAG_00000080.
|
||||
// gun prop has OBJHFLAG_00000080.
|
||||
#define if_gun_landed(bool, label) \
|
||||
mkshort(0x0170), \
|
||||
bool, \
|
||||
|
||||
+101
-101
@@ -618,113 +618,113 @@
|
||||
#define NUM_WEAPONS 94
|
||||
|
||||
// obj->flags
|
||||
#define OBJECTFLAG0_00000001 0x00000001 // Not used in scripts
|
||||
#define OBJECTFLAG0_00000002 0x00000002 // Not used in scripts
|
||||
#define OBJECTFLAG0_00000004 0x00000004 // Not used in scripts
|
||||
#define OBJECTFLAG0_00000008 0x00000008 // Not used in scripts
|
||||
#define OBJECTFLAG0_00000010 0x00000010 // Not used in scripts
|
||||
#define OBJECTFLAG0_00000020 0x00000020 // Not used in scripts
|
||||
#define OBJECTFLAG0_00000040 0x00000040 // Not used in scripts
|
||||
#define OBJECTFLAG0_00000080 0x00000080 // Not used in scripts
|
||||
#define OBJECTFLAG0_00000100 0x00000100 // G5 mines, Air Base brown door, AF1 grate and escape door, Defense shuttle, Ruins mines, MBR lift door
|
||||
#define OBJECTFLAG0_00000200 0x00000200 // Not used in scripts
|
||||
#define OBJECTFLAG0_ILLUMINATED 0x00000400
|
||||
#define OBJECTFLAG0_00000800 0x00000800 // Not used in scripts
|
||||
#define OBJECTFLAG0_00001000 0x00001000 // Not used in scripts
|
||||
#define OBJECTFLAG0_00002000 0x00002000 // AF1 commhubs
|
||||
#define OBJECTFLAG0_00004000 0x00004000 // Not used in scripts
|
||||
#define OBJECTFLAG0_00008000 0x00008000 // Not used in scripts
|
||||
#define OBJECTFLAG0_00010000 0x00010000 // Not used in scripts
|
||||
#define OBJECTFLAG0_INVINCIBLE 0x00020000
|
||||
#define OBJECTFLAG0_COLLECTABLE 0x00040000
|
||||
#define OBJECTFLAG0_00080000 0x00080000 // Not used in scripts
|
||||
#define OBJECTFLAG0_00100000 0x00100000 // Lots of stages - mainly keycards?
|
||||
#define OBJECTFLAG0_00200000 0x00200000 // Not used in scripts
|
||||
#define OBJECTFLAG0_00400000 0x00400000 // Not used in scripts
|
||||
#define OBJECTFLAG0_00800000 0x00800000 // Not used in scripts
|
||||
#define OBJECTFLAG0_01000000 0x01000000 // Not used in scripts
|
||||
#define OBJECTFLAG0_02000000 0x02000000 // Extraction "winddoor", Rescue doors, Air Base lift door, Attack Ship hanger doors, CI xray comhubs
|
||||
#define OBJECTFLAG0_04000000 0x04000000 // Not used in scripts
|
||||
#define OBJECTFLAG0_08000000 0x08000000 // Not used in scripts
|
||||
#define OBJECTFLAG0_DEACTIVATED 0x10000000
|
||||
#define OBJECTFLAG0_20000000 0x20000000 // Not used in scripts
|
||||
#define OBJECTFLAG0_40000000 0x40000000 // Used quite a lot
|
||||
#define OBJECTFLAG0_INTERCEPTOR_DISABLED 0x80000000
|
||||
#define OBJFLAG_00000001 0x00000001 // Not used in scripts
|
||||
#define OBJFLAG_00000002 0x00000002 // Not used in scripts
|
||||
#define OBJFLAG_00000004 0x00000004 // Not used in scripts
|
||||
#define OBJFLAG_00000008 0x00000008 // Not used in scripts
|
||||
#define OBJFLAG_00000010 0x00000010 // Not used in scripts
|
||||
#define OBJFLAG_00000020 0x00000020 // Not used in scripts
|
||||
#define OBJFLAG_00000040 0x00000040 // Not used in scripts
|
||||
#define OBJFLAG_00000080 0x00000080 // Not used in scripts
|
||||
#define OBJFLAG_00000100 0x00000100 // G5 mines, Air Base brown door, AF1 grate and escape door, Defense shuttle, Ruins mines, MBR lift door
|
||||
#define OBJFLAG_00000200 0x00000200 // Not used in scripts
|
||||
#define OBJFLAG_ILLUMINATED 0x00000400
|
||||
#define OBJFLAG_00000800 0x00000800 // Not used in scripts
|
||||
#define OBJFLAG_00001000 0x00001000 // Not used in scripts
|
||||
#define OBJFLAG_00002000 0x00002000 // AF1 commhubs
|
||||
#define OBJFLAG_00004000 0x00004000 // Not used in scripts
|
||||
#define OBJFLAG_00008000 0x00008000 // Not used in scripts
|
||||
#define OBJFLAG_00010000 0x00010000 // Not used in scripts
|
||||
#define OBJFLAG_INVINCIBLE 0x00020000
|
||||
#define OBJFLAG_COLLECTABLE 0x00040000
|
||||
#define OBJFLAG_00080000 0x00080000 // Not used in scripts
|
||||
#define OBJFLAG_00100000 0x00100000 // Lots of stages - mainly keycards?
|
||||
#define OBJFLAG_00200000 0x00200000 // Not used in scripts
|
||||
#define OBJFLAG_00400000 0x00400000 // Not used in scripts
|
||||
#define OBJFLAG_00800000 0x00800000 // Not used in scripts
|
||||
#define OBJFLAG_01000000 0x01000000 // Not used in scripts
|
||||
#define OBJFLAG_02000000 0x02000000 // Extraction "winddoor", Rescue doors, Air Base lift door, Attack Ship hanger doors, CI xray comhubs
|
||||
#define OBJFLAG_04000000 0x04000000 // Not used in scripts
|
||||
#define OBJFLAG_08000000 0x08000000 // Not used in scripts
|
||||
#define OBJFLAG_DEACTIVATED 0x10000000
|
||||
#define OBJFLAG_20000000 0x20000000 // Not used in scripts
|
||||
#define OBJFLAG_40000000 0x40000000 // Used quite a lot
|
||||
#define OBJFLAG_INTERCEPTOR_DISABLED 0x80000000
|
||||
|
||||
// obj->flags2
|
||||
#define OBJECTFLAG1_00000001 0x00000001 // Used only in CI Training
|
||||
#define OBJECTFLAG1_00000002 0x00000002 // Ruins spikes
|
||||
#define OBJECTFLAG1_00000004 0x00000004 // Defense hostage doors - openable by AI?
|
||||
#define OBJECTFLAG1_00000008 0x00000008 // Not used in scripts
|
||||
#define OBJECTFLAG1_00000010 0x00000010 // Not used in scripts
|
||||
#define OBJECTFLAG1_00000020 0x00000020 // Not used in scripts
|
||||
#define OBJECTFLAG1_00000040 0x00000040 // Not used in scripts
|
||||
#define OBJECTFLAG1_00000080 0x00000080 // Not used in scripts
|
||||
#define OBJECTFLAG1_00000100 0x00000100 // Not used in scripts
|
||||
#define OBJECTFLAG1_00000200 0x00000200 // Not used in scripts
|
||||
#define OBJECTFLAG1_00000400 0x00000400 // Not used in scripts
|
||||
#define OBJECTFLAG1_00000800 0x00000800 // Not used in scripts
|
||||
#define OBJECTFLAG1_00001000 0x00001000 // Investigation CMP150s, Air Base safe item and shield
|
||||
#define OBJECTFLAG1_00002000 0x00002000 // Ruins commhub
|
||||
#define OBJECTFLAG1_00004000 0x00004000 // Not used in scripts
|
||||
#define OBJECTFLAG1_00008000 0x00008000 // Not used in scripts
|
||||
#define OBJECTFLAG1_00010000 0x00010000 // Not used in scripts
|
||||
#define OBJECTFLAG1_00020000 0x00020000 // G5 mine, Air Base mine
|
||||
#define OBJECTFLAG1_00040000 0x00040000 // Only used in CI training
|
||||
#define OBJECTFLAG1_INVISIBLE 0x00080000
|
||||
#define OBJECTFLAG1_00100000 0x00100000 // Not used in scripts
|
||||
#define OBJECTFLAG1_00200000 0x00200000 // Ruins spikes
|
||||
#define OBJECTFLAG1_00400000 0x00400000 // Not used in scripts
|
||||
#define OBJECTFLAG1_00800000 0x00800000 // Not used in scripts
|
||||
#define OBJECTFLAG1_01000000 0x01000000 // Not used in scripts
|
||||
#define OBJECTFLAG1_02000000 0x02000000 // Not used in scripts
|
||||
#define OBJECTFLAG1_04000000 0x04000000 // Used quite a lot - gravity?
|
||||
#define OBJECTFLAG1_08000000 0x08000000 // Locked door?
|
||||
#define OBJECTFLAG1_10000000 0x10000000 // Locked door?
|
||||
#define OBJECTFLAG1_20000000 0x20000000 // Locked door? Or indestructible by counter op?
|
||||
#define OBJECTFLAG1_40000000 0x40000000 // Used by doors
|
||||
#define OBJECTFLAG1_80000000 0x80000000 // Attack Ship glass
|
||||
#define OBJFLAG2_00000001 0x00000001 // Used only in CI Training
|
||||
#define OBJFLAG2_00000002 0x00000002 // Ruins spikes
|
||||
#define OBJFLAG2_00000004 0x00000004 // Defense hostage doors - openable by AI?
|
||||
#define OBJFLAG2_00000008 0x00000008 // Not used in scripts
|
||||
#define OBJFLAG2_00000010 0x00000010 // Not used in scripts
|
||||
#define OBJFLAG2_00000020 0x00000020 // Not used in scripts
|
||||
#define OBJFLAG2_00000040 0x00000040 // Not used in scripts
|
||||
#define OBJFLAG2_00000080 0x00000080 // Not used in scripts
|
||||
#define OBJFLAG2_00000100 0x00000100 // Not used in scripts
|
||||
#define OBJFLAG2_00000200 0x00000200 // Not used in scripts
|
||||
#define OBJFLAG2_00000400 0x00000400 // Not used in scripts
|
||||
#define OBJFLAG2_00000800 0x00000800 // Not used in scripts
|
||||
#define OBJFLAG2_00001000 0x00001000 // Investigation CMP150s, Air Base safe item and shield
|
||||
#define OBJFLAG2_00002000 0x00002000 // Ruins commhub
|
||||
#define OBJFLAG2_00004000 0x00004000 // Not used in scripts
|
||||
#define OBJFLAG2_00008000 0x00008000 // Not used in scripts
|
||||
#define OBJFLAG2_00010000 0x00010000 // Not used in scripts
|
||||
#define OBJFLAG2_00020000 0x00020000 // G5 mine, Air Base mine
|
||||
#define OBJFLAG2_00040000 0x00040000 // Only used in CI training
|
||||
#define OBJFLAG2_INVISIBLE 0x00080000
|
||||
#define OBJFLAG2_00100000 0x00100000 // Not used in scripts
|
||||
#define OBJFLAG2_00200000 0x00200000 // Ruins spikes
|
||||
#define OBJFLAG2_00400000 0x00400000 // Not used in scripts
|
||||
#define OBJFLAG2_00800000 0x00800000 // Not used in scripts
|
||||
#define OBJFLAG2_01000000 0x01000000 // Not used in scripts
|
||||
#define OBJFLAG2_02000000 0x02000000 // Not used in scripts
|
||||
#define OBJFLAG2_04000000 0x04000000 // Used quite a lot - gravity?
|
||||
#define OBJFLAG2_08000000 0x08000000 // Locked door?
|
||||
#define OBJFLAG2_10000000 0x10000000 // Locked door?
|
||||
#define OBJFLAG2_20000000 0x20000000 // Locked door? Or indestructible by counter op?
|
||||
#define OBJFLAG2_40000000 0x40000000 // Used by doors
|
||||
#define OBJFLAG2_80000000 0x80000000 // Attack Ship glass
|
||||
|
||||
// obj->flags3
|
||||
#define OBJECTFLAG2_PUSHABLE 0x00000001
|
||||
#define OBJECTFLAG2_GRABBABLE 0x00000002
|
||||
#define OBJECTFLAG2_00000004 0x00000004 // Related to doors
|
||||
#define OBJECTFLAG2_00000008 0x00000008 // Not used in scripts
|
||||
#define OBJECTFLAG2_00000010 0x00000010 // Used heaps
|
||||
#define OBJECTFLAG2_00000020 0x00000020 // Not used in scripts
|
||||
#define OBJECTFLAG2_RTRACKED_YELLOW 0x00000040
|
||||
#define OBJECTFLAG2_00000080 0x00000080 // Not used in scripts
|
||||
#define OBJECTFLAG2_00000100 0x00000100 // Not used in scripts
|
||||
#define OBJECTFLAG2_00000200 0x00000200 // Not used in scripts
|
||||
#define OBJECTFLAG2_NO_COLLISION 0x00000400
|
||||
#define OBJECTFLAG2_RTRACKED_BLUE 0x00000800
|
||||
#define OBJECTFLAG2_00001000 0x00001000 // Show shield around object (always)
|
||||
#define OBJECTFLAG2_00002000 0x00002000 // Not used in scripts
|
||||
#define OBJECTFLAG2_00004000 0x00004000 // Not used in scripts
|
||||
#define OBJECTFLAG2_00008000 0x00008000 // Not used in scripts
|
||||
#define OBJECTFLAG2_00010000 0x00010000 // Not used in scripts
|
||||
#define OBJECTFLAG2_00020000 0x00020000 // Not used in scripts
|
||||
#define OBJECTFLAG2_00040000 0x00040000 // Not used in scripts
|
||||
#define OBJECTFLAG2_00080000 0x00080000 // Not used in scripts
|
||||
#define OBJECTFLAG2_00100000 0x00100000 // Ruins spikes
|
||||
#define OBJECTFLAG2_00200000 0x00200000 // Not used in scripts
|
||||
#define OBJECTFLAG2_00400000 0x00400000 // Investigation tech items
|
||||
#define OBJECTFLAG2_00800000 0x00800000 // Not used in scripts
|
||||
#define OBJECTFLAG2_01000000 0x01000000 // Not used in scripts
|
||||
#define OBJECTFLAG2_02000000 0x02000000 // Not used in scripts
|
||||
#define OBJECTFLAG2_04000000 0x04000000 // Not used in scripts
|
||||
#define OBJECTFLAG2_08000000 0x08000000 // Not used in scripts
|
||||
#define OBJECTFLAG2_10000000 0x10000000 // Not used in scripts
|
||||
#define OBJECTFLAG2_20000000 0x20000000 // Not used in scripts
|
||||
#define OBJECTFLAG2_40000000 0x40000000 // Not used in scripts
|
||||
#define OBJECTFLAG2_80000000 0x80000000 // Not used in scripts
|
||||
#define OBJFLAG3_PUSHABLE 0x00000001
|
||||
#define OBJFLAG3_GRABBABLE 0x00000002
|
||||
#define OBJFLAG3_DOOR_STICKY 0x00000004 // eg. Skedar Ruins
|
||||
#define OBJFLAG3_00000008 0x00000008 // Not used in scripts
|
||||
#define OBJFLAG3_00000010 0x00000010 // Used heaps
|
||||
#define OBJFLAG3_00000020 0x00000020 // Not used in scripts
|
||||
#define OBJFLAG3_RTRACKED_YELLOW 0x00000040
|
||||
#define OBJFLAG3_00000080 0x00000080 // Not used in scripts
|
||||
#define OBJFLAG3_00000100 0x00000100 // Not used in scripts
|
||||
#define OBJFLAG3_00000200 0x00000200 // Not used in scripts
|
||||
#define OBJFLAG3_NO_COLLISION 0x00000400
|
||||
#define OBJFLAG3_RTRACKED_BLUE 0x00000800
|
||||
#define OBJFLAG3_00001000 0x00001000 // Show shield around object (always)
|
||||
#define OBJFLAG3_00002000 0x00002000 // Not used in scripts
|
||||
#define OBJFLAG3_00004000 0x00004000 // Not used in scripts
|
||||
#define OBJFLAG3_00008000 0x00008000 // Not used in scripts
|
||||
#define OBJFLAG3_00010000 0x00010000 // Not used in scripts
|
||||
#define OBJFLAG3_00020000 0x00020000 // Not used in scripts
|
||||
#define OBJFLAG3_00040000 0x00040000 // Not used in scripts
|
||||
#define OBJFLAG3_00080000 0x00080000 // Not used in scripts
|
||||
#define OBJFLAG3_00100000 0x00100000 // Ruins spikes
|
||||
#define OBJFLAG3_00200000 0x00200000 // Not used in scripts
|
||||
#define OBJFLAG3_00400000 0x00400000 // Investigation tech items
|
||||
#define OBJFLAG3_00800000 0x00800000 // Not used in scripts
|
||||
#define OBJFLAG3_01000000 0x01000000 // Not used in scripts
|
||||
#define OBJFLAG3_02000000 0x02000000 // Not used in scripts
|
||||
#define OBJFLAG3_04000000 0x04000000 // Not used in scripts
|
||||
#define OBJFLAG3_08000000 0x08000000 // Not used in scripts
|
||||
#define OBJFLAG3_10000000 0x10000000 // Not used in scripts
|
||||
#define OBJFLAG3_20000000 0x20000000 // Not used in scripts
|
||||
#define OBJFLAG3_40000000 0x40000000 // Not used in scripts
|
||||
#define OBJFLAG3_80000000 0x80000000 // Not used in scripts
|
||||
|
||||
// obj->hidden
|
||||
#define OBJHIDDENFLAG_00000080 0x00000080
|
||||
#define OBJHIDDENFLAG_00000200 0x00000200
|
||||
#define OBJHIDDENFLAG_ACTIVATED_BY_BOND 0x00004000
|
||||
#define OBJHIDDENFLAG_ACTIVATED_BY_COOP 0x00040000
|
||||
#define OBJHIDDENFLAG_00200000 0x00200000
|
||||
#define OBJHFLAG_00000080 0x00000080
|
||||
#define OBJHFLAG_00000200 0x00000200
|
||||
#define OBJHFLAG_ACTIVATED_BY_BOND 0x00004000
|
||||
#define OBJHFLAG_ACTIVATED_BY_COOP 0x00040000
|
||||
#define OBJHFLAG_00200000 0x00200000
|
||||
|
||||
#define OBJTYPE_DOOR 0x01
|
||||
#define OBJTYPE_DOORSCALE 0x02
|
||||
|
||||
Reference in New Issue
Block a user