Decompile chraTickBg

This commit is contained in:
Ryan Dwyer
2022-08-16 17:35:32 +10:00
parent 8c32465e25
commit c819597646
29 changed files with 548 additions and 2088 deletions
+1 -1
View File
@@ -3867,7 +3867,7 @@ u8 func042f_surrendering_guard[] = {
label(0x58)
restart_timer
retreat(SPEED_RUN, 2)
retreat(GOPOSFLAG_RUN, 2)
beginloop(0x0a)
if_distance_to_target_gt(300, /*goto*/ 0x06)
+1 -1
View File
@@ -2705,7 +2705,7 @@ u8 func0413_defend_pad[] = {
set_ailist(CHR_SELF, AILIST_GENERAL_COMBAT)
label(0x22)
go_to_target_pad(SPEED_RUN)
go_to_target_pad(GOPOSFLAG_RUN)
beginloop(0x23)
if_chr_stopped(/*goto*/ 0x00)
+2 -2
View File
@@ -142,7 +142,7 @@ u32 props[] = {
weapon(0x0100, MODEL_CHRDRAGON, 0x0003, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_DRAGON)
chr(SPAWNFLAG_ONLYONSA | SPAWNFLAG_ONLYONPA | SPAWNFLAG_00000200 | SPAWNFLAG_ANTINONINTERACTABLE | SPAWNFLAG_DONTSHOOTME, 0x04, PAD_CAVE_00CA, BODY_ALASKAN_GUARD, HEAD_RANDOM, AILIST_INIT_ALASKAN_GUARD, 0x0135, -1, 200, 100, CHRFLAG0_CANT_ALERT_GROUP | CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_CAN_RETREAT | CHRFLAG0_SURPRISABLE | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_HEAR_ALARMS | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRDRAGON, 0x0004, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_DRAGON)
chr(SPAWNFLAG_ONLYONSA | SPAWNFLAG_ONLYONPA | SPAWNFLAG_00000200 | SPAWNFLAG_ANTINONINTERACTABLE | SPAWNFLAG_DONTSHOOTME, 0x05, PAD_CAVE_00CB, BODY_ALASKAN_GUARD, HEAD_RANDOM, AILIST_INIT_ALASKAN_GUARD, 0x0135, -1, 200, 100, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_SURPRISABLE | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_CAN_HEAR_ALARMS | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_ONLYONSA | SPAWNFLAG_ONLYONPA | SPAWNFLAG_00000200 | SPAWNFLAG_ANTINONINTERACTABLE | SPAWNFLAG_DONTSHOOTME, 0x05, PAD_CAVE_00CB, BODY_ALASKAN_GUARD, HEAD_RANDOM, AILIST_INIT_ALASKAN_GUARD, 0x0135, -1, 200, 100, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_SURPRISABLE | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_CAN_HEAR_ALARMS | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRDRAGON, 0x0005, OBJFLAG_ASSIGNEDTOCHR | OBJFLAG_DEACTIVATED, 0, 0, WEAPON_DRAGON)
chr(SPAWNFLAG_00000200 | SPAWNFLAG_ANTINONINTERACTABLE, 0x07, PAD_CAVE_00C7, BODY_ALASKAN_GUARD, HEAD_RANDOM, AILIST_INIT_ALASKAN_GUARD, -1, -1, 200, 14, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_HEAR_ALARMS | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_04, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRDRAGON, 0x0007, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_DRAGON)
@@ -3365,7 +3365,7 @@ u8 func0419_ba8c[] = {
try_set_target_pad_to_something(0x08, /*goto*/ 0x31)
goto_next(0x72)
label(0x31)
go_to_target_pad(SPEED_WALK)
go_to_target_pad(GOPOSFLAG_WALK)
restart_timer
label(0x72)
yield
+49 -49
View File
@@ -142,33 +142,33 @@ u32 props[] = {
weapon(0x0100, MODEL_CHRCMP150, 0x0002, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_FARSIGHT)
chr(SPAWNFLAG_00000200, 0x2e, PAD_DAM_014E, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 100, CHRFLAG0_CANT_ALERT_GROUP | CHRFLAG0_CAN_RETREAT | CHRFLAG0_SURPRISABLE | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_00008000 | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_01, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x002e, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x2d, PAD_DAM_014D, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0214, -1, 1000, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_01, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x2d, PAD_DAM_014D, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0214, -1, 1000, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_01, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x002d, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x2f, PAD_DAM_014F, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0215, -1, 1000, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_02, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x2f, PAD_DAM_014F, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0215, -1, 1000, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_02, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x002f, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x30, PAD_DAM_0150, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0215, -1, 1000, 100, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_02, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x30, PAD_DAM_0150, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0215, -1, 1000, 100, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_02, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0030, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x31, PAD_DAM_0151, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0215, -1, 1000, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_02, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x31, PAD_DAM_0151, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0215, -1, 1000, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_02, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0031, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x32, PAD_DAM_0152, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0215, -1, 1000, 100, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_02, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x32, PAD_DAM_0152, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0215, -1, 1000, 100, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_02, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0032, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x33, PAD_DAM_0153, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0216, -1, 1000, 100, CHRFLAG0_SURPRISABLE | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x33, PAD_DAM_0153, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0216, -1, 1000, 100, CHRFLAG0_SURPRISABLE | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0033, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x34, PAD_DAM_0154, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0216, -1, 1000, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x34, PAD_DAM_0154, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0216, -1, 1000, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0034, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x35, PAD_DAM_0155, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0216, -1, 1000, 100, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x35, PAD_DAM_0155, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0216, -1, 1000, 100, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0035, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x38, PAD_DAM_0158, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0217, -1, 1000, 7, CHRFLAG0_SURPRISABLE | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_04, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x38, PAD_DAM_0158, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0217, -1, 1000, 7, CHRFLAG0_SURPRISABLE | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_04, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0038, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x39, PAD_DAM_0159, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0217, -1, 1000, 7, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_04, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x39, PAD_DAM_0159, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0217, -1, 1000, 7, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_04, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0039, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x3a, PAD_DAM_015A, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0217, -1, 1000, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_04, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x3a, PAD_DAM_015A, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0217, -1, 1000, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_04, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x003a, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x3b, PAD_DAM_015B, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0217, -1, 1000, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_04, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x3b, PAD_DAM_015B, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0217, -1, 1000, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_04, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x003b, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x36, PAD_DAM_0156, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0218, -1, 1000, 100, CHRFLAG0_CANT_ALERT_GROUP | CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_CAN_RETREAT | CHRFLAG0_SURPRISABLE | CHRFLAG0_00008000 | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_05, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x36, PAD_DAM_0156, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0218, -1, 1000, 100, CHRFLAG0_CANT_ALERT_GROUP | CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_CAN_RETREAT | CHRFLAG0_SURPRISABLE | CHRFLAG0_00008000 | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_05, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0036, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x37, PAD_DAM_0157, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0218, -1, 1000, 100, CHRFLAG0_CANT_ALERT_GROUP | CHRFLAG0_CAN_RETREAT | CHRFLAG0_SURPRISABLE | CHRFLAG0_00008000 | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_05, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x37, PAD_DAM_0157, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, 0x0218, -1, 1000, 100, CHRFLAG0_CANT_ALERT_GROUP | CHRFLAG0_CAN_RETREAT | CHRFLAG0_SURPRISABLE | CHRFLAG0_00008000 | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_05, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0037, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x51, PAD_DAM_0002, BODY_PELAGIC_GUARD, HEAD_RANDOM, 0x0405, -1, -1, 1000, 100, CHRFLAG0_HOLD_POSITION | CHRFLAG0_COVER_TYPE2 | CHRFLAG0_CANLOSEGUN, CHRFLAG1_STOPTRACKINGIFLOOKEDAT, TEAM_ENEMY, SQUADRON_06, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0051, OBJFLAG_ASSIGNEDTOCHR | OBJFLAG_DEACTIVATED, 0, 0, WEAPON_CMP150)
@@ -194,73 +194,73 @@ u32 props[] = {
weapon(0x0100, MODEL_CHRCMP150, 0x005e, OBJFLAG_ASSIGNEDTOCHR | OBJFLAG_DEACTIVATED, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x03, PAD_DAM_011F, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SURPRISABLE | CHRFLAG0_00008000 | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_09, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0003, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, 0x04, PAD_DAM_0120, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_09, -1, 0, 0, 0, 0, 0)
chr(0, 0x04, PAD_DAM_0120, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_09, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0004, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x24, PAD_DAM_0140, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x24, PAD_DAM_0140, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0024, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, 0x25, PAD_DAM_0141, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(0, 0x25, PAD_DAM_0141, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0025, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x05, PAD_DAM_0121, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x05, PAD_DAM_0121, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0005, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, 0x06, PAD_DAM_0122, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(0, 0x06, PAD_DAM_0122, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0006, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x07, PAD_DAM_0123, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x07, PAD_DAM_0123, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0007, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, 0x08, PAD_DAM_0124, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(0, 0x08, PAD_DAM_0124, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0008, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x09, PAD_DAM_0125, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x09, PAD_DAM_0125, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0009, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, 0x0a, PAD_DAM_0126, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(0, 0x0a, PAD_DAM_0126, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x000a, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x0b, PAD_DAM_0127, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x0b, PAD_DAM_0127, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x000b, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, 0x0c, PAD_DAM_0128, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(0, 0x0c, PAD_DAM_0128, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x000c, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x0d, PAD_DAM_0129, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x0d, PAD_DAM_0129, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x000d, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, 0x0e, PAD_DAM_012A, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(0, 0x0e, PAD_DAM_012A, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x000e, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x0f, PAD_DAM_012B, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x0f, PAD_DAM_012B, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x000f, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, 0x10, PAD_DAM_012C, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(0, 0x10, PAD_DAM_012C, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0010, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x11, PAD_DAM_012D, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x11, PAD_DAM_012D, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0011, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, 0x12, PAD_DAM_012E, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(0, 0x12, PAD_DAM_012E, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0012, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x13, PAD_DAM_012F, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x13, PAD_DAM_012F, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0013, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, 0x14, PAD_DAM_0130, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(0, 0x14, PAD_DAM_0130, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0014, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x15, PAD_DAM_0131, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x15, PAD_DAM_0131, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0015, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, 0x16, PAD_DAM_0132, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0B, -1, 0, 0, 0, 0, 0)
chr(0, 0x16, PAD_DAM_0132, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0B, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0016, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x17, PAD_DAM_0133, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0B, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x17, PAD_DAM_0133, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0B, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0017, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, 0x18, PAD_DAM_0134, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0B, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0018, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x19, PAD_DAM_0135, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0B, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0019, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, 0x1a, PAD_DAM_0136, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(0, 0x1a, PAD_DAM_0136, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x001a, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x1b, PAD_DAM_0137, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x1b, PAD_DAM_0137, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x001b, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, 0x1c, PAD_DAM_0138, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(0, 0x1c, PAD_DAM_0138, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x001c, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x1d, PAD_DAM_0139, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x1d, PAD_DAM_0139, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x001d, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, 0x1e, PAD_DAM_013A, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(0, 0x1e, PAD_DAM_013A, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x001e, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x1f, PAD_DAM_013B, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x1f, PAD_DAM_013B, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x001f, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, 0x20, PAD_DAM_013C, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(0, 0x20, PAD_DAM_013C, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0020, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x21, PAD_DAM_013D, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x21, PAD_DAM_013D, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0021, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, 0x22, PAD_DAM_013E, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(0, 0x22, PAD_DAM_013E, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_HIDE, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_NONCOMBAT, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0022, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x23, PAD_DAM_013F, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x23, PAD_DAM_013F, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 10, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0023, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x2c, PAD_DAM_014C, BODY_PELAGIC_GUARD, HEAD_RANDOM, AILIST_GUARD_UNALERTED, -1, -1, 1000, 100, CHRFLAG0_00008000 | CHRFLAG0_COVER_TYPE2 | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, CHRFLAG1_ADJUSTPUNCHSPEED, TEAM_ENEMY, SQUADRON_0C, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x002c, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
@@ -1610,7 +1610,7 @@ u8 func0411_labtech_alerted[] = {
say_quip(CHR_BOND, QUIP_WARNFRIENDS, 0xff, 0x02, 0xff, BANK_0, 0x00, 0x00)
label(0x42)
go_to_target_pad(SPEED_RUN)
go_to_target_pad(GOPOSFLAG_RUN)
beginloop(0x10)
if_chr_stopped(/*goto*/ 0x13)
@@ -1648,7 +1648,7 @@ u8 func0411_labtech_alerted[] = {
goto_first(0x42)
label(0x04)
retreat(SPEED_RUN, 2)
retreat(GOPOSFLAG_RUN, 2)
restart_timer
beginloop(0x14)
@@ -2541,7 +2541,7 @@ u8 func0415_elvis_at_start[] = {
try_set_target_pad_to_something(0x08, /*goto*/ 0x07)
goto_next(0x4c)
label(0x07)
go_to_target_pad(SPEED_WALK)
go_to_target_pad(GOPOSFLAG_WALK)
beginloop(0x4c)
if_chr_in_room(CHR_BOND, 0x00, 0x0029, /*goto*/ 0x04)
+9 -9
View File
@@ -212,13 +212,13 @@ u32 props[] = {
chr(SPAWNFLAG_00000200 | SPAWNFLAG_ANTINONINTERACTABLE, 0x0e, PAD_DEPO_0067, BODY_G5_GUARD, HEAD_RANDOM, 0x040a, PAD_DEPO_0073, -1, 200, 100, CHRFLAG0_CHUCKNORRIS | CHRFLAG0_CAN_RETREAT | CHRFLAG0_SURPRISABLE | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_00008000 | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, CHRFLAG1_LONG_CAMSPY_OBSERVATION, TEAM_NONCOMBAT, SQUADRON_05, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x000e, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200 | SPAWNFLAG_ANTINONINTERACTABLE, 0x0f, PAD_DEPO_0039, BODY_G5_GUARD, HEAD_RANDOM, AILIST_INIT_TYPE1_GUARD, PAD_DEPO_0074, -1, 200, 100, CHRFLAG0_CHUCKNORRIS | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_00008000 | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_CANLOSEGUN, 0, TEAM_NONCOMBAT, SQUADRON_06, -1, 0, 2, 0, 7, 0)
chr(SPAWNFLAG_00000200 | SPAWNFLAG_ANTINONINTERACTABLE, 0x0f, PAD_DEPO_0039, BODY_G5_GUARD, HEAD_RANDOM, AILIST_INIT_TYPE1_GUARD, PAD_DEPO_0074, -1, 200, 100, CHRFLAG0_CHUCKNORRIS | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_00008000 | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_CANLOSEGUN, 0, TEAM_NONCOMBAT, SQUADRON_06, -1, 0, 2, 0, 7, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x000f, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200 | SPAWNFLAG_ANTINONINTERACTABLE, 0x10, PAD_DEPO_0068, BODY_G5_GUARD, HEAD_RANDOM, AILIST_INIT_TYPE1_GUARD, PAD_DEPO_0074, -1, 200, 100, CHRFLAG0_CHUCKNORRIS | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_00008000 | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_CANLOSEGUN, 0, TEAM_NONCOMBAT, SQUADRON_06, -1, 0, 2, 0, 7, 0)
chr(SPAWNFLAG_00000200 | SPAWNFLAG_ANTINONINTERACTABLE, 0x10, PAD_DEPO_0068, BODY_G5_GUARD, HEAD_RANDOM, AILIST_INIT_TYPE1_GUARD, PAD_DEPO_0074, -1, 200, 100, CHRFLAG0_CHUCKNORRIS | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_00008000 | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_CANLOSEGUN, 0, TEAM_NONCOMBAT, SQUADRON_06, -1, 0, 2, 0, 7, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0010, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200 | SPAWNFLAG_ANTINONINTERACTABLE, 0x11, PAD_DEPO_0069, BODY_G5_GUARD, HEAD_RANDOM, AILIST_INIT_TYPE1_GUARD, PAD_DEPO_0074, -1, 200, 100, CHRFLAG0_CHUCKNORRIS | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_00008000 | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_CANLOSEGUN, 0, TEAM_NONCOMBAT, SQUADRON_06, -1, 0, 2, 0, 7, 0)
chr(SPAWNFLAG_00000200 | SPAWNFLAG_ANTINONINTERACTABLE, 0x11, PAD_DEPO_0069, BODY_G5_GUARD, HEAD_RANDOM, AILIST_INIT_TYPE1_GUARD, PAD_DEPO_0074, -1, 200, 100, CHRFLAG0_CHUCKNORRIS | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_00008000 | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_CANLOSEGUN, 0, TEAM_NONCOMBAT, SQUADRON_06, -1, 0, 2, 0, 7, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0011, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
#if VERSION >= VERSION_PAL_BETA
@@ -2253,21 +2253,21 @@ u8 func101a_init_laser_switch_guards[] = {
if_difficulty_lt(DIFF_PA, /*goto*/ 0x09)
// Perfect Agent
set_chr_flag_bankx(0x0c, CHRFLAG0_CAN_TRAVEL, BANK_0)
set_chr_flag_bankx(0x0d, CHRFLAG0_CAN_TRAVEL, BANK_0)
set_chr_flag_bankx(0x0e, CHRFLAG0_CAN_TRAVEL, BANK_0)
set_chr_flag_bankx(0x0c, CHRFLAG0_ACTIVATEALARM, BANK_0)
set_chr_flag_bankx(0x0d, CHRFLAG0_ACTIVATEALARM, BANK_0)
set_chr_flag_bankx(0x0e, CHRFLAG0_ACTIVATEALARM, BANK_0)
goto_next(0x06)
// Agent
label(0x08)
set_chr_flag_bankx(0x0e, CHRFLAG0_CAN_TRAVEL, BANK_0)
set_chr_flag_bankx(0x0e, CHRFLAG0_ACTIVATEALARM, BANK_0)
set_chr_flag_bankx(0x0e, CHRFLAG0_SURPRISABLE, BANK_0)
goto_next(0x06)
// Special Agent
label(0x09)
set_chr_flag_bankx(0x0e, CHRFLAG0_CAN_TRAVEL, BANK_0)
set_chr_flag_bankx(0x0d, CHRFLAG0_CAN_TRAVEL, BANK_0)
set_chr_flag_bankx(0x0e, CHRFLAG0_ACTIVATEALARM, BANK_0)
set_chr_flag_bankx(0x0d, CHRFLAG0_ACTIVATEALARM, BANK_0)
label(0x06)
set_ailist(CHR_SELF, GAILIST_IDLE)
+2 -2
View File
@@ -4657,7 +4657,7 @@ u8 func0404_holo4_guard2[] = {
label(0x2f)
restart_timer
retreat(SPEED_RUN, 1)
retreat(GOPOSFLAG_RUN, 1)
beginloop(0x09)
if_timer_gt(60, /*goto*/ 0x06)
@@ -4929,7 +4929,7 @@ u8 func0407_holo5_guard1[] = {
label(0x2f)
restart_timer
retreat(SPEED_RUN, 1)
retreat(GOPOSFLAG_RUN, 1)
beginloop(0x09)
if_timer_gt(60, /*goto*/ 0x06)
+8 -8
View File
@@ -304,15 +304,15 @@ u32 props[] = {
singlemonitor(0x0100, MODEL_TVSCREEN, PAD_EAR_0235, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040, OBJFLAG2_IMMUNETOANTI, 0, 1000, 3)
singlemonitor(0x0100, MODEL_TVSCREEN, PAD_EAR_0236, OBJFLAG_00000002 | OBJFLAG_00000020 | OBJFLAG_00000040, OBJFLAG2_IMMUNETOANTI, 0, 1000, 3)
singlemonitor(0x0100, MODEL_SINISTERPC, PAD_EAR_0245, OBJFLAG_00000001 | OBJFLAG_00000020 | OBJFLAG_00000040 | OBJFLAG_00000080 | OBJFLAG_IGNOREFLOORCOLOUR, 0, 0, 1000, 35)
chr(SPAWNFLAG_00000200, 0x2f, PAD_EAR_0146, BODY_DD_SHOCK_INF, HEAD_RANDOM, AILIST_INIT_BASIC_GUARD, -1, -1, 200, 100, CHRFLAG0_SURPRISABLE | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x2f, PAD_EAR_0146, BODY_DD_SHOCK_INF, HEAD_RANDOM, AILIST_INIT_BASIC_GUARD, -1, -1, 200, 100, CHRFLAG0_SURPRISABLE | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x002f, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x30, PAD_EAR_0147, BODY_DD_SHOCK_INF, HEAD_RANDOM, AILIST_INIT_BASIC_GUARD, -1, -1, 200, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x30, PAD_EAR_0147, BODY_DD_SHOCK_INF, HEAD_RANDOM, AILIST_INIT_BASIC_GUARD, -1, -1, 200, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0030, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x31, PAD_EAR_0148, BODY_DD_SHOCK_INF, HEAD_RANDOM, AILIST_INIT_BASIC_GUARD, -1, -1, 200, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x31, PAD_EAR_0148, BODY_DD_SHOCK_INF, HEAD_RANDOM, AILIST_INIT_BASIC_GUARD, -1, -1, 200, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0031, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x32, PAD_EAR_0149, BODY_DD_SHOCK_INF, HEAD_RANDOM, AILIST_INIT_BASIC_GUARD, -1, -1, 200, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x32, PAD_EAR_0149, BODY_DD_SHOCK_INF, HEAD_RANDOM, AILIST_INIT_BASIC_GUARD, -1, -1, 200, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0032, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x33, PAD_EAR_014A, BODY_DD_SHOCK_INF, HEAD_RANDOM, AILIST_INIT_BASIC_GUARD, -1, -1, 200, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x33, PAD_EAR_014A, BODY_DD_SHOCK_INF, HEAD_RANDOM, AILIST_INIT_BASIC_GUARD, -1, -1, 200, 100, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0033, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x00, PAD_EAR_001F, BODY_DD_SHOCK_INF, HEAD_RANDOM, AILIST_PATH00, -1, -1, 1000, 100, CHRFLAG0_CAN_BACKOFF | CHRFLAG0_CAN_RETREAT | CHRFLAG0_SURPRISABLE | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_01, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0000, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
@@ -1087,7 +1087,7 @@ u8 func0404_scientist[] = {
label(0x2f)
set_pad_preset_to_investigation_terminal(OBJ_GOODTERM2)
label(0x12)
go_to_target_pad(SPEED_JOG)
go_to_target_pad(GOPOSFLAG_JOG)
beginloop(0x0c)
if_chr_stopped(/*goto*/ 0x06)
@@ -1209,7 +1209,7 @@ u8 func0406_nasty_scientist[] = {
set_pad_preset_to_investigation_terminal(OBJ_ALARMTERM2)
label(0x12)
if_num_times_shot_lt(1, /*goto*/ 0x13)
go_to_target_pad(SPEED_JOG)
go_to_target_pad(GOPOSFLAG_JOG)
goto_next(0x55)
label(0x13)
@@ -1253,7 +1253,7 @@ u8 func0406_nasty_scientist[] = {
endloop(0x0b)
label(0x55)
go_to_target_pad(SPEED_JOG)
go_to_target_pad(GOPOSFLAG_JOG)
beginloop(0x0c)
if_chr_stopped(/*goto*/ 0x06)
+4 -4
View File
@@ -264,17 +264,17 @@ u32 props[] = {
weapon(0x0100, MODEL_CHRCMP150, 0x0044, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, CHR_BASEMENT3, PAD_ELD_01D3, BODY_DDSHOCK, HEAD_DDSHOCK, AILIST_INIT_BASEMENT_GUARD, -1, -1, 500, 50, CHRFLAG0_CAN_FLANK | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, CHRFLAG1_CAN_LOOK_AROUND, TEAM_20, SQUADRON_0D, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0045, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, CHR_BASEMENT4, PAD_ELD_01D4, BODY_DDSHOCK, HEAD_DDSHOCK, AILIST_INIT_BASEMENT_GUARD, -1, -1, 500, 50, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_20, SQUADRON_0E, -1, 0, 0, 0, 0, 0)
chr(0, CHR_BASEMENT4, PAD_ELD_01D4, BODY_DDSHOCK, HEAD_DDSHOCK, AILIST_INIT_BASEMENT_GUARD, -1, -1, 500, 50, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_20, SQUADRON_0E, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0046, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, CHR_BASEMENT5, PAD_ELD_01D5, BODY_DDSHOCK, HEAD_DDSHOCK, AILIST_INIT_BASEMENT_GUARD, -1, -1, 500, 50, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, CHRFLAG1_CAN_LOOK_AROUND, TEAM_20, SQUADRON_0E, -1, 0, 0, 0, 0, 0)
chr(0, CHR_BASEMENT5, PAD_ELD_01D5, BODY_DDSHOCK, HEAD_DDSHOCK, AILIST_INIT_BASEMENT_GUARD, -1, -1, 500, 50, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, CHRFLAG1_CAN_LOOK_AROUND, TEAM_20, SQUADRON_0E, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0047, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, CHR_BASEMENT6, PAD_ELD_01D6, BODY_DDSHOCK, HEAD_DDSHOCK, AILIST_INIT_BASEMENT_GUARD, 0x0233, -1, 500, 50, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_NOACCURACYAFTERJAM | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_20, SQUADRON_0E, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0048, OBJFLAG_ASSIGNEDTOCHR | OBJFLAG_DEACTIVATED, 0, 0, WEAPON_CMP150)
chr(0, CHR_BASEMENT7, PAD_ELD_01D7, BODY_DDSHOCK, HEAD_DDSHOCK, AILIST_INIT_BASEMENT_GUARD, 0x00d2, -1, 500, 50, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_NOACCURACYAFTERJAM | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, CHRFLAG1_CAN_LOOK_AROUND, TEAM_20, SQUADRON_0E, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0049, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, CHR_BASEMENT8, PAD_ELD_01D8, BODY_DDSHOCK, HEAD_DDSHOCK, AILIST_INIT_BASEMENT_GUARD, -1, -1, 500, 50, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_20, SQUADRON_0F, -1, 0, 0, 0, 0, 0)
chr(0, CHR_BASEMENT8, PAD_ELD_01D8, BODY_DDSHOCK, HEAD_DDSHOCK, AILIST_INIT_BASEMENT_GUARD, -1, -1, 500, 50, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_20, SQUADRON_0F, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x004a, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(0, CHR_BASEMENT9, PAD_ELD_01D9, BODY_DDSHOCK, HEAD_DDSHOCK, AILIST_INIT_BASEMENT_GUARD, -1, -1, 500, 50, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, CHRFLAG1_CAN_LOOK_AROUND, TEAM_20, SQUADRON_0F, -1, 0, 0, 0, 0, 0)
chr(0, CHR_BASEMENT9, PAD_ELD_01D9, BODY_DDSHOCK, HEAD_DDSHOCK, AILIST_INIT_BASEMENT_GUARD, -1, -1, 500, 50, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, CHRFLAG1_CAN_LOOK_AROUND, TEAM_20, SQUADRON_0F, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x004b, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_ANTINONINTERACTABLE | SPAWNFLAG_BLUESIGHT, CHR_CARRINGTON, PAD_ELD_00DC, BODY_CARRINGTON, HEAD_CARRINGTON, AILIST_CARRINGTON, -1, -1, 500, 50, 0, 0, TEAM_20, SQUADRON_00, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_FIXEDHEIGHT | SPAWNFLAG_RTRACKED, CHR_HACKER1, PAD_ELD_022C, BODY_DD_SHOCK_INF, HEAD_RANDOM, AILIST_INIT_HACKER, -1, -1, 500, 30, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_SURPRISABLE | CHRFLAG0_FORCESAFETYCHECKS, 0, TEAM_20, SQUADRON_00, 0x8d, 0, 0, 0, 0, 0)
+8 -8
View File
@@ -363,11 +363,11 @@ u32 props[] = {
weapon(0x0100, MODEL_CHRMAULER, 0x0021, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_MAULER)
chr(SPAWNFLAG_00000200, 0x22, PAD_LEE_0069, BODY_SKEDAR, HEAD_RANDOM, AILIST_INIT_SKEDAR, -1, -1, 1000, 200, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_AIVSAI | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0C, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRMAULER, 0x0022, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_MAULER)
chr(SPAWNFLAG_00000200, 0x25, PAD_LEE_0089, BODY_SKEDAR, HEAD_RANDOM, AILIST_INIT_BRIDGE1AND2, -1, -1, 1000, 200, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_AIVSAI | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0D, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x25, PAD_LEE_0089, BODY_SKEDAR, HEAD_RANDOM, AILIST_INIT_BRIDGE1AND2, -1, -1, 1000, 200, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_AIVSAI | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0D, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRMAULER, 0x0025, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_MAULER)
chr(SPAWNFLAG_00000200, 0x26, PAD_LEE_0088, BODY_SKEDAR, HEAD_RANDOM, AILIST_INIT_BRIDGE1AND2, -1, -1, 1000, 200, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_AIVSAI | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0D, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x26, PAD_LEE_0088, BODY_SKEDAR, HEAD_RANDOM, AILIST_INIT_BRIDGE1AND2, -1, -1, 1000, 200, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_AIVSAI | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0D, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRMAULER, 0x0026, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_MAULER)
chr(SPAWNFLAG_00000200 | SPAWNFLAG_FIXEDHEIGHT, 0x2d, PAD_LEE_00A4, BODY_SKEDAR, HEAD_RANDOM, AILIST_INIT_BRIDGE3, -1, -1, 1000, 200, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_AIVSAI | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0D, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200 | SPAWNFLAG_FIXEDHEIGHT, 0x2d, PAD_LEE_00A4, BODY_SKEDAR, HEAD_RANDOM, AILIST_INIT_BRIDGE3, -1, -1, 1000, 200, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_AIVSAI | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0D, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRMAULER, 0x002d, OBJFLAG_ASSIGNEDTOCHR | OBJFLAG_DEACTIVATED, 0, 0, WEAPON_MAULER)
weapon(0x0100, MODEL_CHRMAULER, 0x002d, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_MAULER)
link_guns(-1, -2)
@@ -377,8 +377,8 @@ u32 props[] = {
weapon(0x0100, MODEL_CHRMAULER, 0x0031, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_MAULER)
chr(0, 0x32, PAD_LEE_0096, BODY_SKEDAR, HEAD_RANDOM, 0x0415, -1, -1, 1000, 200, CHRFLAG0_GP1 | CHRFLAG0_SKIPSAFETYCHECKS, 0, TEAM_ENEMY, SQUADRON_01, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRMAULER, 0x0032, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_MAULER)
chr(0, 0x33, PAD_LEE_00DB, BODY_CASSANDRA, HEAD_CASSANDRA, AILIST_INIT_CASS, -1, -1, 1000, 200, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_AIVSAI | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_01, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_FIXEDHEIGHT, 0x34, PAD_LEE_00E3, BODY_SKEDAR, 0x00, GAILIST_IDLE, -1, -1, 1000, 200, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_AIVSAI | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR, CHRFLAG1_ADJUSTPUNCHSPEED, TEAM_ENEMY, SQUADRON_01, -1, 0, 0, 0, 0, 0)
chr(0, 0x33, PAD_LEE_00DB, BODY_CASSANDRA, HEAD_CASSANDRA, AILIST_INIT_CASS, -1, -1, 1000, 200, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_AIVSAI | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_01, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_FIXEDHEIGHT, 0x34, PAD_LEE_00E3, BODY_SKEDAR, 0x00, GAILIST_IDLE, -1, -1, 1000, 200, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_AIVSAI | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR, CHRFLAG1_ADJUSTPUNCHSPEED, TEAM_ENEMY, SQUADRON_01, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRMAULER, 0x0034, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_MAULER)
chr(SPAWNFLAG_00000200, 0x27, PAD_LEE_0002, BODY_SKEDAR, HEAD_RANDOM, AILIST_INIT_SKEDAR, -1, -1, 1000, 200, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_AIVSAI | CHRFLAG0_NOHEAR, 0, TEAM_ENEMY, SQUADRON_0E, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRMAULER, 0x0027, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_MAULER)
@@ -1898,7 +1898,7 @@ u8 func0419_hangar_maian[] = {
// @bug: Shoddy programming here. The jump to label 0x06 is likely supposed
// to go to the label 0x06 just prior to "AT PAD", but that is not the next
// label from here. Also, SPEED_RUN will always be used because SPEED_JOG
// label from here. Also, GOPOSFLAG_RUN will always be used because GOPOSFLAG_JOG
// lacks a goto_next 0x04.
if_chr_distance_to_pad_lt(CHR_SELF, 200, PAD_PRESET, /*goto*/ 0x06)
@@ -1906,12 +1906,12 @@ u8 func0419_hangar_maian[] = {
label(0x03)
restart_timer
if_chr_distance_to_pad_gt(CHR_SELF, 500, PAD_PRESET, /*goto*/ 0x06)
go_to_target_pad(SPEED_JOG)
go_to_target_pad(GOPOSFLAG_JOG)
// Intended: Distance to pad > 500
// Actual: Always executes
label(0x06)
go_to_target_pad(SPEED_RUN)
go_to_target_pad(GOPOSFLAG_RUN)
beginloop(0x04)
dprint 'G','O',' ','T','O',' ','P','A','D','\n',0,
+1 -1
View File
@@ -3167,7 +3167,7 @@ u8 func0420_labtech_doors[] = {
speak(CHR_BOND, L_LIP_087, MP3_M0_IMPOSTER, CHANNEL_4, COLOR_08_RED) // "Imposter!"
label(LABEL_2D)
label(0x06)
go_to_target_pad(SPEED_JOG)
go_to_target_pad(GOPOSFLAG_JOG)
beginloop(0x0a)
if_chr_stopped(/*goto*/ 0x06)
+6 -6
View File
@@ -179,9 +179,9 @@ u32 props[] = {
weapon(0x0100, MODEL_CHRLEEGUN1, 0x0003, OBJFLAG_ASSIGNEDTOCHR | OBJFLAG_DEACTIVATED, 0, 0, WEAPON_MAGSEC4)
weapon(0x0100, MODEL_CHRGRENADE, 0x0003, OBJFLAG_ASSIGNEDTOCHR | OBJFLAG_20000000, 0, 0, WEAPON_GRENADE)
chr(SPAWNFLAG_00000200, 0x04, PAD_LUE_0010, BODY_A51TROOPER, HEAD_RANDOM, AILIST_TEMPLATE_GUARD, -1, -1, 1000, 100, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_CAN_RETREAT | CHRFLAG0_SURPRISABLE | CHRFLAG0_CAN_THROW_GRENADES | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_00008000 | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_01, -1, 0, 2, 0, 5, 0)
chr(SPAWNFLAG_IGNORECOLLISION | SPAWNFLAG_00000200, 0x05, PAD_LUE_0356, BODY_A51TROOPER, HEAD_RANDOM, 0x040d, -1, -1, 1000, 30, CHRFLAG0_CAN_THROW_GRENADES | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_USE_COVER, 0, TEAM_ENEMY, SQUADRON_02, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_IGNORECOLLISION | SPAWNFLAG_00000200, 0x05, PAD_LUE_0356, BODY_A51TROOPER, HEAD_RANDOM, 0x040d, -1, -1, 1000, 30, CHRFLAG0_CAN_THROW_GRENADES | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAMP, 0, TEAM_ENEMY, SQUADRON_02, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRLEEGUN1, 0x0005, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_MAGSEC4)
chr(SPAWNFLAG_IGNORECOLLISION | SPAWNFLAG_00000200, 0x06, PAD_LUE_0357, BODY_A51TROOPER, HEAD_RANDOM, 0x040d, -1, -1, 1000, 30, CHRFLAG0_CAN_THROW_GRENADES | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_USE_COVER, 0, TEAM_ENEMY, SQUADRON_02, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_IGNORECOLLISION | SPAWNFLAG_00000200, 0x06, PAD_LUE_0357, BODY_A51TROOPER, HEAD_RANDOM, 0x040d, -1, -1, 1000, 30, CHRFLAG0_CAN_THROW_GRENADES | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAMP, 0, TEAM_ENEMY, SQUADRON_02, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRLEEGUN1, 0x0006, OBJFLAG_ASSIGNEDTOCHR | OBJFLAG_DEACTIVATED, 0, 0, WEAPON_MAGSEC4)
chr(SPAWNFLAG_00000200, 0x07, PAD_LUE_0055, BODY_A51TROOPER, HEAD_RANDOM, 0x0403, 0x0370, -1, 1000, 100, CHRFLAG0_GP1 | CHRFLAG0_CAN_THROW_GRENADES | CHRFLAG0_00008000 | CHRFLAG0_CAN_TRAP | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRLEEGUN1, 0x0007, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_MAGSEC4)
@@ -1436,7 +1436,7 @@ u8 func0411_init_hangar_guard1[] = {
set_self_flag_bankx(CHRFLAG1_NOIDLEANIMS, BANK_1)
set_self_chrflag(CHRCFLAG_00000040)
set_chr_id(0x2c)
set_self_flag_bankx(CHRFLAG0_CAN_USE_COVER, BANK_0)
set_self_flag_bankx(CHRFLAG0_CAMP, BANK_0)
set_self_flag_bankx(CHRFLAG0_SKIPSAFETYCHECKS, BANK_0)
try_equip_weapon(MODEL_CHRDRAGON, WEAPON_DRAGON, 0x00000000, /*goto*/ 0x06)
label(0x06)
@@ -1458,7 +1458,7 @@ u8 func0412_init_hangar_guard2[] = {
set_squadron(SQUADRON_0B)
set_self_chrflag(CHRCFLAG_00000040)
set_chr_id(0x2d)
set_self_flag_bankx(CHRFLAG0_CAN_USE_COVER, BANK_0)
set_self_flag_bankx(CHRFLAG0_CAMP, BANK_0)
set_self_flag_bankx(CHRFLAG0_SKIPSAFETYCHECKS, BANK_0)
try_equip_weapon(MODEL_CHRDRAGON, WEAPON_DRAGON, 0x00000000, /*goto*/ 0x06)
label(0x06)
@@ -1480,7 +1480,7 @@ u8 func0413_init_hangar_guard3[] = {
set_squadron(SQUADRON_0B)
set_self_chrflag(CHRCFLAG_00000040)
set_chr_id(0x2e)
set_self_flag_bankx(CHRFLAG0_CAN_USE_COVER, BANK_0)
set_self_flag_bankx(CHRFLAG0_CAMP, BANK_0)
set_self_flag_bankx(CHRFLAG0_SKIPSAFETYCHECKS, BANK_0)
try_equip_weapon(MODEL_CHRDRAGON, WEAPON_DRAGON, 0x00000000, /*goto*/ 0x06)
label(0x06)
@@ -1502,7 +1502,7 @@ u8 func0414_init_hangar_guard4[] = {
set_squadron(SQUADRON_0B)
set_self_chrflag(CHRCFLAG_00000040)
set_chr_id(0x2f)
set_self_flag_bankx(CHRFLAG0_CAN_USE_COVER, BANK_0)
set_self_flag_bankx(CHRFLAG0_CAMP, BANK_0)
set_self_flag_bankx(CHRFLAG0_SKIPSAFETYCHECKS, BANK_0)
try_equip_weapon(MODEL_CHRDRAGON, WEAPON_DRAGON, 0x00000000, /*goto*/ 0x06)
label(0x06)
+2 -2
View File
@@ -1152,7 +1152,7 @@ u8 func0405_elvis_follow_nocombat[] = {
label(0x08)
restart_timer
say_quip(CHR_BOND, 0x29, 0xff, 0x14, 0xff, BANK_1, 0x00, 0x00)
retreat(SPEED_RUN, 1)
retreat(GOPOSFLAG_RUN, 1)
beginloop(0x09)
if_timer_gt(120, /*goto*/ 0x2e)
@@ -3492,7 +3492,7 @@ u8 func040f_miniskedar[] = {
label(0x2e)
label(0x2f)
retreat(SPEED_RUN, 1)
retreat(GOPOSFLAG_RUN, 1)
beginloop(0x0c)
if_timer_gt(120, /*goto*/ 0x06)
+9 -9
View File
@@ -163,15 +163,15 @@ u32 props[] = {
chr(0, 0x19, PAD_PETE_00B3, BODY_FBIGUY, HEAD_RANDOM, 0x0411, -1, -1, 500, 20, CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_00008000 | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_20, SQUADRON_04, -1, 0, 2, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x06, PAD_PETE_00B4, BODY_G5_GUARD, HEAD_RANDOM, 0x040f, -1, -1, 1000, 10, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_20, SQUADRON_04, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0006, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_IGNORECOLLISION | SPAWNFLAG_00000200, 0x0a, PAD_PETE_00B6, BODY_G5_GUARD, HEAD_RANDOM, 0x040f, -1, -1, 1000, 10, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_20, SQUADRON_04, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_IGNORECOLLISION | SPAWNFLAG_00000200, 0x0a, PAD_PETE_00B6, BODY_G5_GUARD, HEAD_RANDOM, 0x040f, -1, -1, 1000, 10, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_20, SQUADRON_04, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x000a, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x07, PAD_PETE_00B5, BODY_G5_GUARD, HEAD_RANDOM, 0x040f, -1, -1, 1000, 10, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, CHRFLAG1_NOHANDCOMBAT, TEAM_20, SQUADRON_04, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x07, PAD_PETE_00B5, BODY_G5_GUARD, HEAD_RANDOM, 0x040f, -1, -1, 1000, 10, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, CHRFLAG1_NOHANDCOMBAT, TEAM_20, SQUADRON_04, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0007, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x0b, PAD_PETE_00B7, BODY_G5_GUARD, HEAD_RANDOM, 0x040f, -1, -1, 1000, 10, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_20, SQUADRON_04, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x000b, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_ONLYONSA | SPAWNFLAG_00000200, 0x08, PAD_PETE_00CB, BODY_G5_GUARD, HEAD_RANDOM, 0x040f, -1, -1, 1000, 10, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_20, SQUADRON_04, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_ONLYONSA | SPAWNFLAG_00000200, 0x08, PAD_PETE_00CB, BODY_G5_GUARD, HEAD_RANDOM, 0x040f, -1, -1, 1000, 10, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_20, SQUADRON_04, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0009, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_ONLYONPA | SPAWNFLAG_00000200, 0x09, PAD_PETE_00CC, BODY_G5_GUARD, HEAD_RANDOM, 0x040f, -1, -1, 1000, 10, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAN_USE_COVER | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_20, SQUADRON_04, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_ONLYONPA | SPAWNFLAG_00000200, 0x09, PAD_PETE_00CC, BODY_G5_GUARD, HEAD_RANDOM, 0x040f, -1, -1, 1000, 10, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_SKIPSAFETYCHECKS | CHRFLAG0_CAMP | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_20, SQUADRON_04, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0009, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x0c, PAD_PETE_00B8, BODY_G5_GUARD, HEAD_RANDOM, 0x0418, -1, -1, 500, 10, CHRFLAG0_CAN_EXAMINE_BODY | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_20, SQUADRON_05, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x000c, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
@@ -861,7 +861,7 @@ u8 func1026_uplink[] = {
u8 func040d_limo[] = {
begin_hovercar_path(0x02)
set_vehicle_speed(SPEED_WALK, 0)
set_vehicle_speed(GOPOSFLAG_WALK, 0)
if_difficulty_lt(DIFF_SA, /*goto*/ 0x03)
// SA and PA
@@ -923,7 +923,7 @@ u8 func040c_taxi[] = {
label(0x03)
set_chr_maxdamage(CHR_SELF, 65456)
begin_hovercar_path(0x04)
set_vehicle_speed(SPEED_WALK, 0)
set_vehicle_speed(GOPOSFLAG_WALK, 0)
// All difficulties
label(0x04)
@@ -1390,7 +1390,7 @@ u8 func0412_cia[] = {
goto_next(0x36)
label(0x03)
go_to_target_pad(SPEED_WALK)
go_to_target_pad(GOPOSFLAG_WALK)
beginloop(0x36)
chr_toggle_p1p2(CHR_SELF)
@@ -1673,7 +1673,7 @@ u8 func0413_bugspotter[] = {
// No other guard to run to
label(0x0b)
retreat(SPEED_RUN, 2)
retreat(GOPOSFLAG_RUN, 2)
beginloop(0x07)
if_stage_flag_eq(STAGEFLAG_LIMO_READY_TO_LEAVE, TRUE, /*goto*/ LABEL_RUN_AWAY)
@@ -2375,7 +2375,7 @@ u8 func041f_alarm_responder[] = {
u8 func0420_jog_to_accident[] = {
unset_chr_hiddenflag(CHR_SELF, CHRHFLAG_PASSIVE)
label(0x03)
go_to_target_pad(SPEED_JOG)
go_to_target_pad(GOPOSFLAG_JOG)
// This is a bit weird. I'm pretty sure the set_ailist causes this
// function to stop. But because the guard has been issued the
+1 -1
View File
@@ -837,7 +837,7 @@ u8 func0404_miniskedar[] = {
label(0x2d)
label(0x2e)
retreat(SPEED_RUN, 1)
retreat(GOPOSFLAG_RUN, 1)
beginloop(0x0d)
if_timer_gt(120, /*goto*/ 0x06)
+2 -2
View File
@@ -361,10 +361,10 @@ u8 func0401_defend[] = {
label(0x03)
restart_timer
if_chr_distance_to_pad_gt(CHR_SELF, 500, PAD_PRESET, /*goto*/ 0x06)
go_to_target_pad(SPEED_JOG)
go_to_target_pad(GOPOSFLAG_JOG)
label(0x06)
go_to_target_pad(SPEED_RUN)
go_to_target_pad(GOPOSFLAG_RUN)
// Wait until at pad or 1 second has passed
beginloop(0x04)
+1 -1
View File
@@ -836,7 +836,7 @@ u8 func0402_jonathan_waiting_for_meetup[] = {
set_ailist(CHR_SELF, GAILIST_IDLE)
label(0x67)
set_self_flag_bankx(CHRFLAG0_CAN_USE_COVER, BANK_0)
set_self_flag_bankx(CHRFLAG0_CAMP, BANK_0)
set_self_chrflag(CHRCFLAG_RUNFASTER)
beginloop(0x04)
+2 -2
View File
@@ -373,10 +373,10 @@ u32 props[] = {
chr(SPAWNFLAG_00000200, 0x12, PAD_WAX_01FC, BODY_FEM_GUARD, HEAD_RANDOM, AILIST_INIT_SEARCHING_GUARD, 0x0218, -1, 1000, 100, CHRFLAG0_CHUCKNORRIS | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_00008000 | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_HEAR_ALARMS | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, CHRFLAG1_SEARCHSAMEROOM, TEAM_ENEMY, SQUADRON_01, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0012, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x03, PAD_WAX_021C, BODY_FEM_GUARD, HEAD_RANDOM, AILIST_INIT_40HP_GUARD, 0x0218, -1, 1000, 100, CHRFLAG0_CHUCKNORRIS | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_00008000 | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_HEAR_ALARMS | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x03, PAD_WAX_021C, BODY_FEM_GUARD, HEAD_RANDOM, AILIST_INIT_40HP_GUARD, 0x0218, -1, 1000, 100, CHRFLAG0_CHUCKNORRIS | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_00008000 | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_HEAR_ALARMS | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0003, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x04, PAD_WAX_021D, BODY_FEM_GUARD, HEAD_RANDOM, AILIST_INIT_40HP_GUARD, 0x0218, -1, 1000, 100, CHRFLAG0_CHUCKNORRIS | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_00008000 | CHRFLAG0_CAN_TRAVEL | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_HEAR_ALARMS | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
chr(SPAWNFLAG_00000200, 0x04, PAD_WAX_021D, BODY_FEM_GUARD, HEAD_RANDOM, AILIST_INIT_40HP_GUARD, 0x0218, -1, 1000, 100, CHRFLAG0_CHUCKNORRIS | CHRFLAG0_FORCESAFETYCHECKS | CHRFLAG0_00008000 | CHRFLAG0_ACTIVATEALARM | CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_CAN_HEAR_ALARMS | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, 0, TEAM_ENEMY, SQUADRON_03, -1, 0, 0, 0, 0, 0)
weapon(0x0100, MODEL_CHRCMP150, 0x0004, OBJFLAG_ASSIGNEDTOCHR, 0, 0, WEAPON_CMP150)
chr(SPAWNFLAG_00000200, 0x00, PAD_WAX_007D, BODY_FEM_GUARD, HEAD_RANDOM, 0x0402, -1, -1, 100, 100, CHRFLAG0_SQUADALERTANYDIST | CHRFLAG0_HOLD_POSITION | CHRFLAG0_COVER_TYPE2 | CHRFLAG0_NOHEAR | CHRFLAG0_CANLOSEGUN, CHRFLAG1_STOPTRACKINGIFLOOKEDAT, TEAM_ENEMY, SQUADRON_04, -1, 0, 0, 0, 0, 0)
+14 -14
View File
@@ -2000,7 +2000,7 @@ bool botIsAboutToAttack(struct chrdata *chr, bool arg1)
if (!arg1
&& (chr->aibot->config->difficulty == BOTDIFF_MEAT || chr->aibot->config->difficulty == BOTDIFF_EASY)
&& !func0f02e064(chr)) {
&& !chrGoPosIsWaiting(chr)) {
f32 tmp = func0f03e578(chr);
f32 angle = atan2f(target->pos.x - chr->prop->pos.x, target->pos.z - chr->prop->pos.z) - tmp;
@@ -2186,7 +2186,7 @@ s32 botTick(struct prop *prop)
aibot->unk06c = 0;
aibot->unk070 = 0;
aibot->unk1e4 = g_Vars.lvframe60;
} else if (chr->actiontype == ACT_GOPOS && (chr->act_gopos.flags & GOPOSFLAG_20) == 0) {
} else if (chr->actiontype == ACT_GOPOS && (chr->act_gopos.flags & GOPOSFLAG_WAITING) == 0) {
aibot->unk06c = 1;
aibot->unk070 = 0;
} else {
@@ -5365,7 +5365,7 @@ glabel var7f1b8fc8
.PF0f19754c:
/* f19754c: 2645008c */ addiu $a1,$s2,0x8c
/* f197550: 2646007a */ addiu $a2,$s2,0x7a
/* f197554: 0fc0e170 */ jal chrGoToPos
/* f197554: 0fc0e170 */ jal chrGoToRoomPos
/* f197558: 24070002 */ li $a3,0x2
/* f19755c: 1000004c */ b .PF0f197690
/* f197560: 928202a0 */ lbu $v0,0x2a0($s4)
@@ -5422,7 +5422,7 @@ glabel var7f1b8fc8
/* f19761c: 05e00005 */ bltz $t7,.PF0f197634
/* f197620: 00000000 */ nop
.PF0f197624:
/* f197624: 0fc0e170 */ jal chrGoToPos
/* f197624: 0fc0e170 */ jal chrGoToRoomPos
/* f197628: a29502a0 */ sb $s5,0x2a0($s4)
/* f19762c: 10000018 */ b .PF0f197690
/* f197630: 928202a0 */ lbu $v0,0x2a0($s4)
@@ -5695,7 +5695,7 @@ glabel var7f1b8fc8
/* f1979fc: 2645008c */ addiu $a1,$s2,0x8c
/* f197a00: 1d80001e */ bgtz $t4,.PF0f197a7c
/* f197a04: 2646007a */ addiu $a2,$s2,0x7a
/* f197a08: 0fc0e170 */ jal chrGoToPos
/* f197a08: 0fc0e170 */ jal chrGoToRoomPos
/* f197a0c: 24070002 */ li $a3,0x2
/* f197a10: 1000001b */ b .PF0f197a80
/* f197a14: 8e4d00dc */ lw $t5,0xdc($s2)
@@ -8379,7 +8379,7 @@ glabel var7f1b8fc8
.PB0f19803c:
/* f19803c: 2645008c */ addiu $a1,$s2,0x8c
/* f198040: 2646007a */ addiu $a2,$s2,0x7a
/* f198044: 0fc0e153 */ jal chrGoToPos
/* f198044: 0fc0e153 */ jal chrGoToRoomPos
/* f198048: 24070002 */ li $a3,0x2
/* f19804c: 1000004c */ b .PB0f198180
/* f198050: 928202a0 */ lbu $v0,0x2a0($s4)
@@ -8436,7 +8436,7 @@ glabel var7f1b8fc8
/* f19810c: 05e00005 */ bltz $t7,.PB0f198124
/* f198110: 00000000 */ nop
.PB0f198114:
/* f198114: 0fc0e153 */ jal chrGoToPos
/* f198114: 0fc0e153 */ jal chrGoToRoomPos
/* f198118: a29502a0 */ sb $s5,0x2a0($s4)
/* f19811c: 10000018 */ b .PB0f198180
/* f198120: 928202a0 */ lbu $v0,0x2a0($s4)
@@ -8709,7 +8709,7 @@ glabel var7f1b8fc8
/* f1984ec: 2645008c */ addiu $a1,$s2,0x8c
/* f1984f0: 1d80001e */ bgtz $t4,.PB0f19856c
/* f1984f4: 2646007a */ addiu $a2,$s2,0x7a
/* f1984f8: 0fc0e153 */ jal chrGoToPos
/* f1984f8: 0fc0e153 */ jal chrGoToRoomPos
/* f1984fc: 24070002 */ li $a3,0x2
/* f198500: 1000001b */ b .PB0f198570
/* f198504: 8e4d00dc */ lw $t5,0xdc($s2)
@@ -10283,7 +10283,7 @@ void botTickUnpaused(struct chrdata *chr)
if (newaction >= 0) {
if (newaction == MA_AIBOTGETITEM) {
if (aibot->gotoprop) {
chrGoToProp(chr, aibot->gotoprop, SPEED_RUN);
chrGoToProp(chr, aibot->gotoprop, GOPOSFLAG_RUN);
chr->myaction = newaction;
}
} else if (newaction == MA_AIBOTATTACK) {
@@ -10307,7 +10307,7 @@ void botTickUnpaused(struct chrdata *chr)
botSetTarget(chr, -1);
}
chrGoToPos(chr, &aibot->defendholdpos, aibot->defendholdrooms, SPEED_RUN);
chrGoToRoomPos(chr, &aibot->defendholdpos, aibot->defendholdrooms, GOPOSFLAG_RUN);
} else if (newaction == MA_AIBOTGOTOPOS) {
f32 xdist = chr->prop->pos.x - aibot->gotopos.x;
f32 ydist = chr->prop->pos.y - aibot->gotopos.y;
@@ -10327,14 +10327,14 @@ void botTickUnpaused(struct chrdata *chr)
if (xdist > 20 || zdist > 20 || (ydist > 200 && chr->inlift == 0)) {
chr->myaction = newaction;
chrGoToPos(chr, &aibot->gotopos, aibot->gotorooms, SPEED_RUN);
chrGoToRoomPos(chr, &aibot->gotopos, aibot->gotorooms, GOPOSFLAG_RUN);
} else {
chrStand(chr);
}
} else if (newaction == MA_AIBOTGOTOPROP) {
if (aibot->gotoprop) {
chr->myaction = newaction;
chrGoToProp(chr, aibot->gotoprop, SPEED_RUN);
chrGoToProp(chr, aibot->gotoprop, GOPOSFLAG_RUN);
}
} else if (newaction == MA_AIBOTDOWNLOAD) {
chr->myaction = newaction;
@@ -10428,7 +10428,7 @@ void botTickUnpaused(struct chrdata *chr)
if (xdist > 40 || zdist > 40 || (ydist > 200 && !chr->inlift)) {
if (aibot->returntodefendtimer60 <= 0) {
chrGoToPos(chr, &aibot->defendholdpos, aibot->defendholdrooms, SPEED_RUN);
chrGoToRoomPos(chr, &aibot->defendholdpos, aibot->defendholdrooms, GOPOSFLAG_RUN);
}
} else if (aibot->canbreakdefend
&& chr->target != -1
@@ -10830,6 +10830,6 @@ void botCheckFetch(struct chrdata *chr)
}
if (!alreadyfetching) {
chrGoToPos(chr, &chr->act_gopos.endpos, chr->act_gopos.endrooms, chr->act_gopos.flags);
chrGoToRoomPos(chr, &chr->act_gopos.endpos, chr->act_gopos.endrooms, chr->act_gopos.flags);
}
}
+3 -3
View File
@@ -165,16 +165,16 @@ void botcmdTickDistMode(struct chrdata *chr)
|| (newmode != BOTDISTMODE_OK && (chr->actiontype == ACT_STAND || aibot->distmodettl60 <= 0))) {
switch (newmode) {
case BOTDISTMODE_BACKUP:
chrRunFromPos(chr, SPEED_RUN, 10000, &targetprop->pos);
chrRunFromPos(chr, GOPOSFLAG_RUN, 10000, &targetprop->pos);
break;
case BOTDISTMODE_OK:
chrTryStop(chr);
break;
case BOTDISTMODE_ADVANCE:
chrGoToProp(chr, targetprop, SPEED_RUN);
chrGoToProp(chr, targetprop, GOPOSFLAG_RUN);
break;
case BOTDISTMODE_GOTO:
chrGoToProp(chr, targetprop, SPEED_RUN);
chrGoToProp(chr, targetprop, GOPOSFLAG_RUN);
break;
}
+1 -3
View File
@@ -63,10 +63,8 @@ u32 var8006297c = 0;
u32 var80062980 = 0;
s32 g_NextChrnum = 5000;
// 80062988
struct chrdata *g_ChrSlots = NULL;
// 8006298c
s32 g_NumChrSlots = 0;
void propsTick(void)
@@ -85,7 +83,7 @@ void propsTick(void)
}
shieldhitsTick();
func0f048398();
chraTickBg();
prop = g_Vars.activeprops;
+371 -1909
View File
File diff suppressed because it is too large Load Diff
+14 -14
View File
@@ -988,7 +988,7 @@ bool aiTryRunFromTarget(void)
*/
bool aiTryJogToTargetProp(void)
{
if (chrGoToTarget(g_Vars.chrdata, SPEED_JOG)) {
if (chrGoToTarget(g_Vars.chrdata, GOPOSFLAG_JOG)) {
u8 *cmd = g_Vars.ailist + g_Vars.aioffset;
g_Vars.aioffset = chraiGoToLabel(g_Vars.ailist, g_Vars.aioffset, cmd[2]);
} else {
@@ -1003,7 +1003,7 @@ bool aiTryJogToTargetProp(void)
*/
bool aiTryWalkToTargetProp(void)
{
if (chrGoToTarget(g_Vars.chrdata, SPEED_WALK)) {
if (chrGoToTarget(g_Vars.chrdata, GOPOSFLAG_WALK)) {
u8 *cmd = g_Vars.ailist + g_Vars.aioffset;
g_Vars.aioffset = chraiGoToLabel(g_Vars.ailist, g_Vars.aioffset, cmd[2]);
} else {
@@ -1018,7 +1018,7 @@ bool aiTryWalkToTargetProp(void)
*/
bool aiTryRunToTargetProp(void)
{
if (chrGoToTarget(g_Vars.chrdata, SPEED_RUN)) {
if (chrGoToTarget(g_Vars.chrdata, GOPOSFLAG_RUN)) {
u8 *cmd = g_Vars.ailist + g_Vars.aioffset;
g_Vars.aioffset = chraiGoToLabel(g_Vars.ailist, g_Vars.aioffset, cmd[2]);
} else {
@@ -1050,7 +1050,7 @@ bool aiTryJogToChr(void)
{
u8 *cmd = g_Vars.ailist + g_Vars.aioffset;
if (chrGoToChr(g_Vars.chrdata, cmd[2], SPEED_JOG)) {
if (chrGoToChr(g_Vars.chrdata, cmd[2], GOPOSFLAG_JOG)) {
g_Vars.aioffset = chraiGoToLabel(g_Vars.ailist, g_Vars.aioffset, cmd[3]);
} else {
g_Vars.aioffset += 4;
@@ -1066,7 +1066,7 @@ bool aiTryWalkToChr(void)
{
u8 *cmd = g_Vars.ailist + g_Vars.aioffset;
if (chrGoToChr(g_Vars.chrdata, cmd[2], SPEED_WALK)) {
if (chrGoToChr(g_Vars.chrdata, cmd[2], GOPOSFLAG_WALK)) {
g_Vars.aioffset = chraiGoToLabel(g_Vars.ailist, g_Vars.aioffset, cmd[3]);
} else {
g_Vars.aioffset += 4;
@@ -1082,7 +1082,7 @@ bool aiTryRunToChr(void)
{
u8 *cmd = g_Vars.ailist + g_Vars.aioffset;
if (chrGoToChr(g_Vars.chrdata, cmd[2], SPEED_RUN)) {
if (chrGoToChr(g_Vars.chrdata, cmd[2], GOPOSFLAG_RUN)) {
g_Vars.aioffset = chraiGoToLabel(g_Vars.ailist, g_Vars.aioffset, cmd[3]);
} else {
g_Vars.aioffset += 4;
@@ -1144,7 +1144,7 @@ bool aiJogToPad(void)
u8 *cmd = g_Vars.ailist + g_Vars.aioffset;
u16 pad = cmd[3] | (cmd[2] << 8);
chrGoToPad(g_Vars.chrdata, pad, SPEED_JOG);
chrGoToPad(g_Vars.chrdata, pad, GOPOSFLAG_JOG);
g_Vars.aioffset += 4;
return false;
@@ -1159,13 +1159,13 @@ bool aiGoToPadPreset(void)
switch (cmd[2]) {
case 0:
chrGoToPad(g_Vars.chrdata, g_Vars.chrdata->padpreset1, SPEED_WALK);
chrGoToPad(g_Vars.chrdata, g_Vars.chrdata->padpreset1, GOPOSFLAG_WALK);
break;
case 1:
chrGoToPad(g_Vars.chrdata, g_Vars.chrdata->padpreset1, SPEED_JOG);
chrGoToPad(g_Vars.chrdata, g_Vars.chrdata->padpreset1, GOPOSFLAG_JOG);
break;
default:
chrGoToPad(g_Vars.chrdata, g_Vars.chrdata->padpreset1, SPEED_RUN);
chrGoToPad(g_Vars.chrdata, g_Vars.chrdata->padpreset1, GOPOSFLAG_RUN);
break;
}
@@ -1182,7 +1182,7 @@ bool aiWalkToPad(void)
u8 *cmd = g_Vars.ailist + g_Vars.aioffset;
u16 pad = cmd[3] | (cmd[2] << 8);
chrGoToPad(g_Vars.chrdata, pad, SPEED_WALK);
chrGoToPad(g_Vars.chrdata, pad, GOPOSFLAG_WALK);
g_Vars.aioffset += 4;
return false;
@@ -1196,7 +1196,7 @@ bool aiRunToPad(void)
u8 *cmd = g_Vars.ailist + g_Vars.aioffset;
u16 pad = cmd[3] | (cmd[2] << 8);
chrGoToPad(g_Vars.chrdata, pad, SPEED_RUN);
chrGoToPad(g_Vars.chrdata, pad, GOPOSFLAG_RUN);
g_Vars.aioffset += 4;
return false;
@@ -10180,7 +10180,7 @@ bool aiIfDangerousObjectNearby(void)
bool ai013e(void)
{
if (func0f03aca0(g_Vars.chrdata, 400, true) == 0 && chrAssignCoverAwayFromDanger(g_Vars.chrdata, 1000, 12000) != -1) {
chrGoToCover(g_Vars.chrdata, SPEED_RUN);
chrGoToCover(g_Vars.chrdata, GOPOSFLAG_RUN);
}
g_Vars.aioffset += 2;
@@ -10744,7 +10744,7 @@ bool aiDoGunCommand(void)
if (cmd[2] == 0 || ((weapon->base.hidden & OBJHFLAG_PROJECTILE) == 0 && cmd[2] == 1)) {
if (cmd[2] == 0) {
chrGoToProp(g_Vars.chrdata, g_Vars.chrdata->gunprop, SPEED_JOG);
chrGoToProp(g_Vars.chrdata, g_Vars.chrdata->gunprop, GOPOSFLAG_JOG);
}
g_Vars.aioffset = chraiGoToLabel(g_Vars.ailist, g_Vars.aioffset, cmd[3]);
+13 -13
View File
@@ -424,7 +424,7 @@ u8 func0006_unalerted[] = {
label(0x16)
if_chr_has_hiddenflag(CHR_TARGET, CHRHFLAG_DISGUISED, /*goto*/ 0x14)
if_chr_in_squadron_doing_action(MA_GOTOALARM, /*goto*/ 0x16)
if_self_flag_bankx_eq(CHRFLAG0_CAN_TRAVEL, TRUE, BANK_0, /*goto*/ 0x9f)
if_self_flag_bankx_eq(CHRFLAG0_ACTIVATEALARM, TRUE, BANK_0, /*goto*/ 0x9f)
label(0x16)
say_quip(CHR_BOND, QUIP_SEEPLAYER, 0xff, 0x03, 0xff, BANK_0, 0x00, 0x00)
@@ -837,7 +837,7 @@ u8 func0006_unalerted[] = {
label(0x77)
if_chr_in_squadron_doing_action(MA_GOTOALARM, /*goto*/ 0x16)
if_self_flag_bankx_eq(CHRFLAG0_CAN_TRAVEL, TRUE, BANK_0, /*goto*/ 0x13)
if_self_flag_bankx_eq(CHRFLAG0_ACTIVATEALARM, TRUE, BANK_0, /*goto*/ 0x13)
label(0x16)
set_ailist(CHR_SELF, GAILIST_INIT_COMBAT)
@@ -1199,7 +1199,7 @@ u8 func0007_alerted[] = {
dprint 'B','4',' ','T','E','A','M',' ','C','H','E','C','K','\n',0,
if_alarm_active(/*goto*/ 0x16)
if_chr_in_squadron_doing_action(MA_GOTOALARM, /*goto*/ 0x16)
if_self_flag_bankx_eq(CHRFLAG0_CAN_TRAVEL, TRUE, BANK_0, /*goto*/ LABEL_RUN_FOR_ALARM)
if_self_flag_bankx_eq(CHRFLAG0_ACTIVATEALARM, TRUE, BANK_0, /*goto*/ LABEL_RUN_FOR_ALARM)
// No need to warn
label(0x16)
@@ -1252,7 +1252,7 @@ u8 func0007_alerted[] = {
goto_next(0xa1)
label(0x16)
if_self_flag_bankx_eq(CHRFLAG0_CAN_USE_COVER, FALSE, BANK_0, /*goto*/ 0x16)
if_self_flag_bankx_eq(CHRFLAG0_CAMP, FALSE, BANK_0, /*goto*/ 0x16)
label(0x13)
dprint 'I','M',' ','G','O','I','N','G',' ','T','O',' ','P','O','P','\n',0,
@@ -1289,7 +1289,7 @@ u8 func0007_alerted[] = {
label(0x98)
dprint 'G','O','I','N','G',' ','T','O',' ','T','R','A','P',' ','P','A','D','\n',0,
go_to_target_pad(SPEED_JOG)
go_to_target_pad(GOPOSFLAG_JOG)
beginloop(0x99)
label(0x16)
@@ -1413,7 +1413,7 @@ u8 func0007_alerted[] = {
unset_self_flag_bankx(CHRFLAG1_DODGED, BANK_1)
label(0x16)
go_to_cover(SPEED_RUN)
go_to_cover(GOPOSFLAG_RUN)
beginloop(0xa6)
if_chr_stopped(/*goto*/ 0xa7)
@@ -1451,7 +1451,7 @@ u8 func0007_alerted[] = {
beginloop(0xab)
set_target_chr(CHR_P1P2)
if_distance_to_target_gt(300, /*goto*/ 0x13)
unset_self_flag_bankx(CHRFLAG0_CAN_USE_COVER, BANK_0)
unset_self_flag_bankx(CHRFLAG0_CAMP, BANK_0)
goto_first(LABEL_MAINLOOP)
label(0x13)
@@ -1664,7 +1664,7 @@ u8 func0007_alerted[] = {
label(0x16)
say_quip(CHR_BOND, QUIP_GOTOCOVER1, 0xff, 0x02, 0x01, BANK_0, 0x00, 0x00)
restart_timer
go_to_cover(SPEED_RUN)
go_to_cover(GOPOSFLAG_RUN)
beginloop(0x55)
if_dangerous_object_nearby(3, /*goto*/ LABEL_FLEE_GRENADE)
@@ -2891,7 +2891,7 @@ u8 func0007_alerted[] = {
unset_self_flag_bankx(CHRFLAG1_FLANKED, BANK_1)
unset_self_flag_bankx(CHRFLAG1_DODGED, BANK_1)
say_quip(CHR_BOND, QUIP_GOFORALARM, 0xff, 0x03, 0xff, BANK_0, 0x00, 0x00)
go_to_target_pad(SPEED_JOG)
go_to_target_pad(GOPOSFLAG_JOG)
beginloop(0x9d)
if_dangerous_object_nearby(3, /*goto*/ LABEL_FLEE_GRENADE)
@@ -3731,7 +3731,7 @@ u8 func000c_combat_with_target_chr[] = {
label(0x53)
dprint 'G','O',' ','T','O',' ','C','O','V','E','R','\n',0,
say_quip(CHR_BOND, QUIP_GOTOCOVER1, 0xff, 0x02, 0x01, BANK_0, 0x00, 0x00)
go_to_cover(SPEED_RUN)
go_to_cover(GOPOSFLAG_RUN)
restart_timer
beginloop(0xc7)
@@ -3912,14 +3912,14 @@ u8 func000c_combat_with_target_chr[] = {
// End unreachable
label(0xc4)
if_self_flag_bankx_eq(CHRFLAG0_CAN_USE_COVER, FALSE, BANK_0, /*goto*/ 0x13)
if_self_flag_bankx_eq(CHRFLAG0_CAMP, FALSE, BANK_0, /*goto*/ 0x13)
return
label(0x13)
goto_first(0xb3)
label(0xcf)
if_self_flag_bankx_eq(CHRFLAG0_CAN_USE_COVER, FALSE, BANK_0, /*goto*/ 0x13)
if_self_flag_bankx_eq(CHRFLAG0_CAMP, FALSE, BANK_0, /*goto*/ 0x13)
#if VERSION >= VERSION_NTSC_1_0
if_target_is_player(/*goto*/ 0x16)
goto_next(0x13)
@@ -4941,7 +4941,7 @@ u8 func001d_search_for_player[] = {
goto_next(0x04)
label(0x13)
go_to_target_pad(SPEED_WALK)
go_to_target_pad(GOPOSFLAG_WALK)
beginloop(0x04)
dprint 'W','A','L','K',' ','P','A','D','\n',0,
+1 -1
View File
@@ -29,7 +29,7 @@ void resetSomeStageThings(void)
g_PlayerDamageTxScale = 1;
g_AttackWalkDurationScale = 1;
var80062cbc = 0;
g_NumChrsSeenPlayerRecently2 = 0;
}
void stageAllocateBgChrs(void)
+2 -2
View File
@@ -34380,10 +34380,10 @@ void doorsCalcFrac(struct doorobj *door)
if (isliftdoor) {
if (chr->actiontype == ACT_STAND
|| (chr->actiontype == ACT_ATTACK && (chr->act_attack.flags & ATTACKFLAG_DONTTURN))
|| (chr->actiontype == ACT_GOPOS && func0f02e064(chr))) {
|| (chr->actiontype == ACT_GOPOS && chrGoPosIsWaiting(chr))) {
struct prop *target = chrGetTargetProp(chr);
if (chrGoToPos(chr, &target->pos, target->rooms, 0)) {
if (chrGoToRoomPos(chr, &target->pos, target->rooms, 0)) {
chr->goposforce = TICKS(600);
}
} else if (chr->actiontype == ACT_GOPOS) {
+1 -1
View File
@@ -319,7 +319,7 @@
/**
* Makes the chr go to their pad preset. This may fail if pathfinding fails.
*
* Speed should be SPEED_WALK, SPEED_JOG or SPEED_RUN.
* Speed should be GOPOSFLAG_WALK, GOPOSFLAG_JOG or GOPOSFLAG_RUN.
*/
#define go_to_target_pad(speed) \
mkshort(0x001e), \
+10 -10
View File
@@ -469,7 +469,7 @@
#define CHRFLAG0_00008000 0x00008000 // Something to do with breaking cover or grenades?
#define CHRFLAG0_AIVSAI 0x00010000 // Allow chr to fight with other AI
#define CHRFLAG0_CAN_TRAP 0x00020000
#define CHRFLAG0_CAN_TRAVEL 0x00040000
#define CHRFLAG0_ACTIVATEALARM 0x00040000 // Chr will run for alarm
#define CHRFLAG0_SQUADALERTANYDIST 0x00080000
#define CHRFLAG0_ALERT_ON_HEARSPAWN 0x00100000 // Become alert when hearing player and never on screen
#define CHRFLAG0_CAN_FLEESURRENDER 0x00200000 // When unarmed, chr can run from player and surrender if caught up
@@ -479,7 +479,7 @@
#define CHRFLAG0_SAID_AMBUSH_QUIP 0x02000000
#define CHRFLAG0_HOLD_POSITION 0x04000000 // Chr can't track (follow) player
#define CHRFLAG0_COVER_TYPE2 0x08000000
#define CHRFLAG0_CAN_USE_COVER 0x10000000 // Flag is turned off permanently if player gets too close
#define CHRFLAG0_CAMP 0x10000000 // Flag is turned off permanently if player gets too close
#define CHRFLAG0_CAN_HEARSPAWN 0x20000000
#define CHRFLAG0_NOHEAR 0x40000000
#define CHRFLAG0_CANLOSEGUN 0x80000000
@@ -561,7 +561,7 @@
#define CHRH2FLAG_TICKDURINGAUTOCUT 0x0010
#define CHRH2FLAG_0020 0x0020
#define CHRH2FLAG_0040 0x0040
#define CHRH2FLAG_0080 0x0080
#define CHRH2FLAG_SPAWNED 0x0080
#define CHRH2FLAG_HEADSHOTTED 0x1000
// chr->chrflags
@@ -1151,12 +1151,16 @@
#define GEOTYPE_BLOCK 2 // Most objects - multiple x/z vertices, and a single ymin and ymax
#define GEOTYPE_CYL 3 // Cylinder - used by chrs and the hoverbike
#define GOPOSFLAG_SPEED 0x03 // bits 0x01 and 0x02 combined
#define GOPOSFLAG_WALK 0x00
#define GOPOSFLAG_JOG 0x01
#define GOPOSFLAG_RUN 0x02
#define GOPOSFLAG_INIT 0x04
#define GOPOSFLAG_FORPATHSTART 0x08
#define GOPOSFLAG_20 0x20
#define GOPOSFLAG_WAITING 0x20 // for a door to open, or at/in lift
#define GOPOSFLAG_DUCK 0x40
#define GOPOSFLAG_WALKDIRECT 0x80
#define GOPOSFLAG_WALKDIRECT 0x80 // walk directly to next pad even if next+1 is in sight
#define GOPOSMASK_SPEED (GOPOSFLAG_WALK | GOPOSFLAG_JOG | GOPOSFLAG_RUN)
#define GUNCMD_END 0
#define GUNCMD_SHOWPART 1
@@ -3745,10 +3749,6 @@
#define SPECIALDIE_OVERRAILING 5
#define SPECIALDIE_ONCHAIR 6
#define SPEED_WALK 0
#define SPEED_JOG 1
#define SPEED_RUN 2
#define SPSEGMENT_PHYSICAL 0
#define SPSEGMENT_GETITLE 2
#define SPSEGMENT_MODEL_MTX 3
+1 -1
View File
@@ -163,7 +163,7 @@ extern f32 g_EnemyAccuracyScale;
extern f32 g_PlayerDamageRxScale;
extern f32 g_PlayerDamageTxScale;
extern f32 g_AttackWalkDurationScale;
extern s32 var80062cbc;
extern s32 g_NumChrsSeenPlayerRecently2;
extern struct animtablerow g_DeathAnimsHumanGun[];
extern struct animtablerow g_AnimTableHumanSlumped[];
extern struct animtable *g_AnimTablesByRace[];
+9 -9
View File
@@ -15,7 +15,7 @@ extern struct attackanimconfig g_AttackAnimDualWalk;
extern struct attackanimconfig g_AttackAnimDualRun;
f32 func0f02dff0(s16 animnum);
bool func0f02e064(struct chrdata *chr);
bool chrGoPosIsWaiting(struct chrdata *chr);
bool weaponIsOneHanded(struct prop *prop);
f32 chrGetRangedSpeed(struct chrdata *chr, f32 min, f32 max);
s32 chrGetPercentageOfSlowness(struct chrdata *chr, s32 percentage);
@@ -26,7 +26,7 @@ void func0f02e3dc(struct coord *a, struct coord *b, struct coord *c, struct coor
void func0f02e4f8(struct coord *arg0, struct coord *arg1, struct coord *dst);
f32 func0f02e550(struct prop *prop, f32 arg1, f32 arg2, u32 arg3, f32 ymax, f32 ymin);
f32 func0f02e684(struct prop *prop, f32 arg1, f32 arg2);
void chrStandChooseAnimation(struct chrdata *chr, f32 mergetime);
void chrChooseStandAnimation(struct chrdata *chr, f32 mergetime);
void chrStand(struct chrdata *chr);
bool chrFaceCover(struct chrdata *chr);
void chrKneelChooseAnimation(struct chrdata *chr);
@@ -91,7 +91,7 @@ void func0f0375b0(struct chrdata *chr);
void chrNavTickMagic(struct chrdata *chr, struct waydata *waydata, f32 speed, struct coord *arg3, s16 *rooms);
void chrCalculatePosition(struct chrdata *chr, struct coord *pos);
void chrGoPosChooseAnimation(struct chrdata *chr);
bool chrGoToPos(struct chrdata *chr, struct coord *pos, s16 *rooms, u32 flags);
bool chrGoToRoomPos(struct chrdata *chr, struct coord *pos, s16 *rooms, u32 goposflags);
void chrPatrolChooseAnimation(struct chrdata *chr);
void chrStartPatrol(struct chrdata *chr, struct path *path);
bool chrCanSeeEntity(struct chrdata *chr, struct coord *chrpos, s16 *chrrooms, bool allowextraheight, u32 attackflags, u32 entityid);
@@ -110,8 +110,8 @@ bool chrTryAttackWalk(struct chrdata *chr);
bool chrTryAttackRun(struct chrdata *chr);
bool chrTryAttackRoll(struct chrdata *chr);
bool chrTryAttackAmount(struct chrdata *chr, u32 arg1, u32 arg2, u8 arg3, u8 arg4);
bool chrGoToPad(struct chrdata *chr, s32 padnum, u32 speed);
bool func0f03abd0(struct chrdata *chr, struct coord *pos, u32 flags);
bool chrGoToPad(struct chrdata *chr, s32 padnum, u32 goposflags);
bool chrGoToPos(struct chrdata *chr, struct coord *pos, u32 goposflags);
s32 func0f03aca0(struct chrdata *chr, f32 arg1, u8 arg2);
bool chrTryRunFromTarget(struct chrdata *chr);
bool chrGoToCoverProp(struct chrdata *chr);
@@ -179,7 +179,7 @@ bool chrStartSkJump(struct chrdata *chr, u8 arg1, u8 arg2, s32 arg3, u8 arg4);
void chrTickSkJump(struct chrdata *chr);
void chraTick(struct chrdata *chr);
void cutsceneStart(u32 ailistid);
void func0f048398(void);
void chraTickBg(void);
f32 chrGetAngleToPos(struct chrdata *chr, struct coord *pos);
void chrGetAttackEntityPos(struct chrdata *chr, u32 attackflags, s32 entityid, struct coord *pos, s16 *rooms);
f32 chrGetAngleFromTargetsFov(struct chrdata *chr);
@@ -256,9 +256,9 @@ bool chrSetPath(struct chrdata *chr, u32 path_id);
bool chrTryStartPatrol(struct chrdata *chr);
bool chrTrySurrender(struct chrdata *chr);
bool chrFadeOut(struct chrdata *chr);
bool chrGoToTarget(struct chrdata *chr, u32 speed);
bool chrGoToChr(struct chrdata *chr, u32 dst_chrnum, u32 speed);
bool chrGoToProp(struct chrdata *chr, struct prop *prop, s32 speed);
bool chrGoToTarget(struct chrdata *chr, u32 goposflags);
bool chrGoToChr(struct chrdata *chr, u32 dst_chrnum, u32 goposflags);
bool chrGoToProp(struct chrdata *chr, struct prop *prop, u32 goposflags);
bool chrTryStop(struct chrdata *chr);
bool chrTrySurprisedOneHand(struct chrdata *chr);
bool chrTrySurprisedSurrender(struct chrdata *chr);