4459 lines
211 KiB
C
4459 lines
211 KiB
C
//
|
|
// Air Base
|
|
//
|
|
|
|
#include "stagesetup.h"
|
|
|
|
// Characters
|
|
#define CHR_STEWARDESS 0x38
|
|
#define CHR_SECRETARY 0x39
|
|
#define CHR_OFFICE1 0x3c
|
|
#define CHR_OFFICE2 0x3d
|
|
#define CHR_TRENT 0x47
|
|
#define CHR_OUTRO_NSA 0x49
|
|
|
|
// Objects
|
|
#define OBJ_BRIEFCASE1 0x00
|
|
#define OBJ_CONSOLE 0x01
|
|
#define OBJ_UNIFORM 0x02
|
|
#define OBJ_FLIGHTPLANS 0x03
|
|
#define OBJ_BAGGAGE_CARRIER 0x04
|
|
#define OBJ_LASER_PANEL 0x05
|
|
#define OBJ_BRIEFCASE2 0x06
|
|
#define OBJ_ALARM 0x19
|
|
#define OBJ_SAFE_SWITCH 0x1a
|
|
#define OBJ_SAFE_SWITCH_COVER 0x1f
|
|
#define OBJ_VERTICAL_LIFT 0x21 // the one leading to the plane - not briefcase office
|
|
#define OBJ_REMOTEMINE 0x2b
|
|
#define OBJ_SAFEDOOR 0x2d
|
|
#define OBJ_PLANE 0x2e
|
|
#define OBJ_DIAGONAL_LIFT 0x36
|
|
|
|
// Stage flags
|
|
#define STAGEFLAG_SECURITY_SHUT_DOWN 0x00000100
|
|
#define STAGEFLAG_STEWARDESS_ENTERED_BASE 0x00000200
|
|
#define STAGEFLAG_CIVILIANS_KILLED 0x00000400
|
|
#define STAGEFLAG_DISGUISE_UNCOVERED 0x00000800
|
|
#define STAGEFLAG_DISGUISED 0x00001000
|
|
#define STAGEFLAG_RECEPTIONIST_CALLED_SECURITY 0x00002000
|
|
#define STAGEFLAG_SUITCASE_DEPOSITED 0x00004000
|
|
#define STAGEFLAG_WEAPONS_DETECTED 0x00008000
|
|
#define STAGEFLAG_SUITCASE_SCANNED 0x00010000
|
|
#define STAGEFLAG_BOARDED_PLANE 0x00020000
|
|
#define STAGEFLAG_LASERS_OVERLOADED 0x00040000
|
|
#define STAGEFLAG_TOO_MANY_NEUTRALS_KILLED 0x00080000
|
|
#define STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE 0x00100000
|
|
#define STAGEFLAG_OFFICE1_DEAD 0x00200000
|
|
#define STAGEFLAG_OFFICE2_DEAD 0x00400000
|
|
#define STAGEFLAG_DISGUISED2 0x00800000
|
|
#define STAGEFLAG_SECRETARY_DEAD 0x01000000
|
|
#define STAGEFLAG_CONSOLE_DESTROYED 0x02000000
|
|
#define STAGEFLAG_ENTERED_BASE 0x04000000
|
|
#define STAGEFLAG_TROLLEY_SHUT_DOWN_WITHOUT_BRIEFCASE 0x08000000
|
|
#define STAGEFLAG_CONSOLE_ACTIVATED 0x10000000
|
|
|
|
// AI Lists
|
|
#define AILIST_INIT_STRIPES 0x0402
|
|
#define AILIST_BECOME_UNALERTED 0x0406
|
|
#define AILIST_STEWARDESS 0x0407
|
|
#define AILIST_SECRETARY 0x0408
|
|
#define AILIST_OFFICE1 0x0409
|
|
#define AILIST_OFFICE2 0x040a
|
|
#define AILIST_INIT_SECRETARY 0x040c
|
|
#define AILIST_INIT_OFFICE1 0x040d
|
|
#define AILIST_INIT_OFFICE2 0x040e
|
|
#define AILIST_NSA 0x040f
|
|
#define AILIST_TAKEOVER_LACKEY 0x0411
|
|
#define AILIST_INIT_TAKEOVER_LACKEY 0x0412
|
|
#define AILIST_ALASKAN_CONSOLE_GUARD 0x0413
|
|
#define AILIST_OFFICEWORKER 0x0414
|
|
#define AILIST_ALASKAN_MOUNTAINLIFT_GUARD 0x0415
|
|
#define AILIST_REMOVE_OR_UNALERT 0x0417
|
|
#define AILIST_REMOVE_OR_COWER 0x0418
|
|
#define AILIST_DRAW_MAGNUM 0x041a
|
|
#define AILIST_INIT_ALASKAN_GUARD 0x0426
|
|
#define AILIST_INIT_POSTTAKEOVER_GUARD 0x0427
|
|
#define AILIST_POSTTAKEOVER_GUARD 0x0428
|
|
#define AILIST_FOYER_SPAWNER 0x042a
|
|
#define AILIST_INIT_FOYER_CLONE 0x042b
|
|
#define AILIST_FOYER_CLONE 0x042c
|
|
|
|
s32 intro[];
|
|
u32 props[];
|
|
struct path paths[];
|
|
struct ailist ailists[];
|
|
|
|
struct stagesetup setup = {
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
intro,
|
|
props,
|
|
paths,
|
|
ailists,
|
|
NULL,
|
|
};
|
|
|
|
u32 props[] = {
|
|
briefing(0, 0x0e01)
|
|
briefing(1, 0x0e00)
|
|
briefing(2, 0x0e02)
|
|
briefing(3, 0x0e03)
|
|
|
|
beginobjective(0, L_CAVE(5), (DIFFBIT_A | DIFFBIT_SA | DIFFBIT_PA | DIFFBIT_PD)) // "Obtain disguise and enter base"
|
|
complete_flags(STAGEFLAG_DISGUISED2)
|
|
complete_flags(STAGEFLAG_ENTERED_BASE)
|
|
fail_flags(STAGEFLAG_CIVILIANS_KILLED)
|
|
fail_flags(STAGEFLAG_DISGUISE_UNCOVERED)
|
|
fail_flags(STAGEFLAG_STEWARDESS_ENTERED_BASE)
|
|
fail_flags(STAGEFLAG_RECEPTIONIST_CALLED_SECURITY)
|
|
fail_flags(STAGEFLAG_TOO_MANY_NEUTRALS_KILLED)
|
|
fail_flags(STAGEFLAG_SECRETARY_DEAD)
|
|
endobjective
|
|
|
|
beginobjective(1, L_CAVE(6), (DIFFBIT_SA | DIFFBIT_PA | DIFFBIT_PD)) // "Check in equipment"
|
|
complete_flags(STAGEFLAG_SUITCASE_DEPOSITED)
|
|
fail_flags(STAGEFLAG_WEAPONS_DETECTED)
|
|
fail_flags(STAGEFLAG_TROLLEY_SHUT_DOWN_WITHOUT_BRIEFCASE)
|
|
endobjective
|
|
|
|
beginobjective(2, L_CAVE(7), (DIFFBIT_A | DIFFBIT_SA | DIFFBIT_PA | DIFFBIT_PD)) // "Subvert security monitoring system"
|
|
complete_flags(STAGEFLAG_SECURITY_SHUT_DOWN)
|
|
fail_flags(STAGEFLAG_SUITCASE_SCANNED)
|
|
fail_flags(STAGEFLAG_CONSOLE_DESTROYED)
|
|
endobjective
|
|
|
|
beginobjective(3, L_CAVE(8), (DIFFBIT_PA | DIFFBIT_PD)) // "Obtain flight plans from safe"
|
|
require_object_collected(OBJ_FLIGHTPLANS)
|
|
endobjective
|
|
|
|
beginobjective(4, L_CAVE(9), (DIFFBIT_A | DIFFBIT_SA | DIFFBIT_PA | DIFFBIT_PD)) // "Board Air Force One"
|
|
complete_flags(STAGEFLAG_BOARDED_PLANE)
|
|
endobjective
|
|
|
|
chr(0x00000e80, 0x00, 0x00c8, BODY_ALASKAN_GUARD, HEAD_RANDOM, GAILIST_IDLE, 0x0135, -1, 20, 20, 0x80882408, 0x00000000, TEAM_ENEMY, SQUADRON_00, -1, 3, 0x00000700)
|
|
weapon(0x0100, MODEL_CHRDRAGON, 0x0000, 0x10004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DRAGON, 0x00ffffff, 0x00000000)
|
|
chr(0x00000e00, 0x01, 0x00d0, BODY_ALASKAN_GUARD, HEAD_RANDOM, GAILIST_IDLE, 0x0135, -1, 20, 20, 0x80882008, 0x00000000, TEAM_ENEMY, SQUADRON_00, -1, 0, 0x00000700)
|
|
weapon(0x0100, MODEL_CHRDRAGON, 0x0001, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DRAGON, 0x00ffffff, 0x00000000)
|
|
chr(0x00010c01, 0x38, 0x00d1, BODY_STEWARDESS_COAT, HEAD_ANKA, GAILIST_IDLE, -1, -1, 200, 10, 0x00880408, 0x00000000, TEAM_ENEMY, SQUADRON_01, -1, 0, 0x02000700)
|
|
chr(0x00000e00, 0x02, 0x00d3, BODY_ALASKAN_GUARD, HEAD_RANDOM, AILIST_ALASKAN_MOUNTAINLIFT_GUARD, 0x0135, -1, 200, 20, 0x80802400, 0x00000000, TEAM_ENEMY, SQUADRON_00, -1, 0, 0x02000700)
|
|
weapon(0x0100, MODEL_CHRDRAGON, 0x0002, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DRAGON, 0x00ffffff, 0x00000000)
|
|
chr(0x00000e00, 0x03, 0x0012, BODY_ALASKAN_GUARD, HEAD_RANDOM, 0x041b, 0x0135, -1, 200, 15, 0x80882008, 0x00000000, TEAM_ENEMY, SQUADRON_03, -1, 0, 0x02000500)
|
|
weapon(0x0100, MODEL_CHRDRAGON, 0x0003, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DRAGON, 0x00ffffff, 0x00000000)
|
|
chr(0x00000ec0, 0x04, 0x00ca, BODY_ALASKAN_GUARD, HEAD_RANDOM, AILIST_INIT_ALASKAN_GUARD, 0x0135, -1, 200, 100, 0x80802609, 0x00000000, TEAM_ENEMY, SQUADRON_03, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRDRAGON, 0x0004, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DRAGON, 0x00ffffff, 0x00000000)
|
|
chr(0x00000ec0, 0x05, 0x00cb, BODY_ALASKAN_GUARD, HEAD_RANDOM, AILIST_INIT_ALASKAN_GUARD, 0x0135, -1, 200, 100, 0x80842408, 0x00000000, TEAM_ENEMY, SQUADRON_03, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRDRAGON, 0x0005, 0x10004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DRAGON, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x07, 0x00c7, BODY_ALASKAN_GUARD, HEAD_RANDOM, AILIST_INIT_ALASKAN_GUARD, -1, -1, 200, 14, 0x80882000, 0x00000000, TEAM_ENEMY, SQUADRON_04, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRDRAGON, 0x0007, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DRAGON, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x06, 0x00e8, BODY_ALASKAN_GUARD, HEAD_RANDOM, AILIST_INIT_ALASKAN_GUARD, -1, -1, 200, 14, 0x80882000, 0x00000000, TEAM_ENEMY, SQUADRON_04, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRDRAGON, 0x0006, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DRAGON, 0x00ffffff, 0x00000000)
|
|
chr(0x00010400, 0x39, 0x00c9, BODY_SECRETARY, HEAD_SECRETARY, AILIST_INIT_SECRETARY, -1, -1, 200, 14, 0x80882000, 0x00000000, TEAM_ENEMY, SQUADRON_04, -1, 0, 0x00000000)
|
|
chr(0x00014400, 0x3c, 0x00c6, BODY_OFFICEWORKER, HEAD_RANDOM, AILIST_INIT_OFFICE1, -1, -1, 200, 8, 0x80082000, 0x00000100, TEAM_ENEMY, SQUADRON_05, 0x24, 0, 0x00010000)
|
|
chr(0x00014400, 0x3d, 0x00c5, BODY_OFFICEWORKER, HEAD_RANDOM, AILIST_INIT_OFFICE2, -1, -1, 200, 8, 0x80082000, 0x00000100, TEAM_ENEMY, SQUADRON_05, 0x25, 0, 0x00010000)
|
|
chr(0x00000600, 0x08, 0x00c3, BODY_ALASKAN_GUARD, HEAD_RANDOM, AILIST_INIT_ALASKAN_GUARD, -1, -1, 200, 100, 0xa0882000, 0x00000000, TEAM_ENEMY, SQUADRON_06, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRDRAGON, 0x0008, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DRAGON, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x09, 0x0031, BODY_ALASKAN_GUARD, HEAD_RANDOM, 0x041c, -1, -1, 200, 100, 0x80082000, 0x00000000, TEAM_ENEMY, SQUADRON_06, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRDRAGON, 0x0009, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DRAGON, 0x00ffffff, 0x00000000)
|
|
chr(0x00000200, 0x10, 0x003a, BODY_NSA_LACKEY, HEAD_RANDOM, AILIST_NSA, 0x003a, -1, 200, 100, 0x80082080, 0x00000881, TEAM_ENEMY, SQUADRON_04, -1, 0, 0x00000000)
|
|
chr(0x00000600, 0x0a, 0x003d, BODY_ALASKAN_GUARD, HEAD_RANDOM, 0x041d, -1, -1, 200, 100, 0xa0882000, 0x00000000, TEAM_ENEMY, SQUADRON_07, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRDRAGON, 0x000a, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DRAGON, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x0b, 0x005b, BODY_ALASKAN_GUARD, HEAD_RANDOM, 0x041e, -1, -1, 200, 100, 0x80082000, 0x00000000, TEAM_ENEMY, SQUADRON_07, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRDRAGON, 0x000b, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DRAGON, 0x00ffffff, 0x00000000)
|
|
chr(0x00000200, 0x11, 0x0072, BODY_NSA_LACKEY, HEAD_RANDOM, AILIST_NSA, 0x0072, -1, 200, 100, 0x80082000, 0x00000881, TEAM_ENEMY, SQUADRON_05, -1, 0, 0x01000000)
|
|
chr(0x00004600, 0x0c, 0x00c2, BODY_ALASKAN_GUARD, HEAD_RANDOM, AILIST_ALASKAN_CONSOLE_GUARD, 0x0156, -1, 200, 100, 0xc0082000, 0x20000100, TEAM_ENEMY, SQUADRON_08, -1, 0, 0x00050000)
|
|
chr(0x00000200, 0x12, 0x00c1, BODY_NSA_LACKEY, HEAD_RANDOM, AILIST_INIT_TAKEOVER_LACKEY, -1, -1, 200, 100, 0x80080000, 0x00000800, TEAM_ENEMY, SQUADRON_06, -1, 0, 0x02000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0012, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
tag(0x30, 2)
|
|
tag(0x31, 2)
|
|
weapon(0x0100, MODEL_CHRDY357, 0x0012, 0x20004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DY357MAGNUM, 0x00ffffff, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRDY357, 0x0012, 0x20004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DY357MAGNUM, 0x00ffffff, 0x00000000)
|
|
link_collectibles(-1, -2)
|
|
chr(0x00000600, 0x0d, 0x00c0, BODY_ALASKAN_GUARD, HEAD_RANDOM, 0x041f, -1, -1, 200, 100, 0xa0882000, 0x00000000, TEAM_ENEMY, SQUADRON_09, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRDRAGON, 0x000d, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DRAGON, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x0e, 0x00bf, BODY_ALASKAN_GUARD, HEAD_RANDOM, AILIST_INIT_ALASKAN_GUARD, -1, -1, 200, 100, 0x80082000, 0x00000000, TEAM_ENEMY, SQUADRON_09, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRDRAGON, 0x000e, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DRAGON, 0x00ffffff, 0x00000000)
|
|
chr(0x00000400, 0x3a, 0x00be, BODY_OFFICEWORKER, HEAD_RANDOM, AILIST_OFFICEWORKER, -1, -1, 200, 4, 0x80082000, 0x00000000, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0x00000000)
|
|
chr(0x00000600, 0x0f, 0x00bc, BODY_ALASKAN_GUARD, HEAD_RANDOM, AILIST_INIT_ALASKAN_GUARD, -1, -1, 200, 100, 0x80082000, 0x00000000, TEAM_ENEMY, SQUADRON_0A, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRDRAGON, 0x000f, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DRAGON, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x13, 0x00ba, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc4082000, 0x04000a00, TEAM_ENEMY, SQUADRON_09, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0013, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x14, 0x0123, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0x84082000, 0x04000a00, TEAM_ENEMY, SQUADRON_09, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0014, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000700, 0x16, 0x0124, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc4080000, 0x04000a00, TEAM_ENEMY, SQUADRON_02, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0016, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000700, 0x18, 0x0125, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xcc080000, 0x04000a00, TEAM_ENEMY, SQUADRON_02, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0018, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000200, 0x1a, 0x0126, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc0088000, 0x04000a00, TEAM_ENEMY, SQUADRON_0C, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x001a, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000200, 0x1c, 0x0127, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xe008a000, 0x04000a00, TEAM_ENEMY, SQUADRON_0C, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x001c, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000200, 0x1b, 0x0090, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc008a000, 0x04000a00, TEAM_ENEMY, SQUADRON_0C, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x001b, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000200, 0x19, 0x008e, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc0088000, 0x04000a00, TEAM_ENEMY, SQUADRON_0C, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0019, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000200, 0x1d, 0x0096, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc008a000, 0x04000a00, TEAM_ENEMY, SQUADRON_02, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x001d, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000200, 0x1e, 0x0128, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc008a000, 0x04000a00, TEAM_ENEMY, SQUADRON_0C, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x001e, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000200, 0x20, 0x0129, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xe008a000, 0x04000a00, TEAM_ENEMY, SQUADRON_0C, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0020, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x21, 0x00b4, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc0082000, 0x04000a00, TEAM_ENEMY, SQUADRON_0D, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0021, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x22, 0x012a, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc0082000, 0x04000a00, TEAM_ENEMY, SQUADRON_0D, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0022, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x23, 0x00b2, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc0082000, 0x04000a00, TEAM_ENEMY, SQUADRON_0D, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0023, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x24, 0x012b, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc0082000, 0x04000a00, TEAM_ENEMY, SQUADRON_0D, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0024, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x25, 0x0026, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc4082000, 0x04000a00, TEAM_ENEMY, SQUADRON_0E, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0025, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x26, 0x012c, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc4082000, 0x04000a00, TEAM_ENEMY, SQUADRON_0E, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0026, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x27, 0x002c, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc4082000, 0x04000a00, TEAM_ENEMY, SQUADRON_0E, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0027, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x28, 0x012d, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xa4082000, 0x04000a00, TEAM_ENEMY, SQUADRON_0E, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0028, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x2a, 0x00d9, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc4082000, 0x04000a00, TEAM_ENEMY, SQUADRON_0F, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x002a, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x2b, 0x012e, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc4082000, 0x04000a00, TEAM_ENEMY, SQUADRON_0F, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x002b, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x2c, 0x00da, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc4082000, 0x04000a00, TEAM_ENEMY, SQUADRON_0F, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x002c, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x2d, 0x012f, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc4082000, 0x04000a00, TEAM_ENEMY, SQUADRON_0F, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x002d, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x2e, 0x00d8, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0x8008a000, 0x04000a00, TEAM_ENEMY, SQUADRON_01, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x002e, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x2f, 0x0130, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0x8008a000, 0x04000a00, TEAM_ENEMY, SQUADRON_01, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x002f, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x30, 0x00b1, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0x8008a000, 0x04000a00, TEAM_ENEMY, SQUADRON_01, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0030, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x31, 0x0131, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0x8008a000, 0x04000a00, TEAM_ENEMY, SQUADRON_01, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0031, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x32, 0x00dc, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xa4082000, 0x04000a00, TEAM_ENEMY, SQUADRON_0B, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0032, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x33, 0x0132, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc4082000, 0x04000a00, TEAM_ENEMY, SQUADRON_0B, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0033, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x34, 0x00b0, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc0002000, 0x04000a00, TEAM_ENEMY, SQUADRON_08, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0034, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x35, 0x0133, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc0002000, 0x04000a00, TEAM_ENEMY, SQUADRON_08, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0035, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00004600, 0x36, 0x00db, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc0002000, 0x00000b00, TEAM_ENEMY, SQUADRON_08, -1, 0, 0x00010000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0036, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000600, 0x37, 0x0134, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0xc0002000, 0x04000a00, TEAM_ENEMY, SQUADRON_08, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0037, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00010400, 0x44, 0x0132, BODY_CIAGUY, HEAD_RANDOM, 0x0419, 0x0132, -1, 1000, 6, 0x80000004, 0x00000000, TEAM_ENEMY, SQUADRON_00, -1, 0, 0x00000000)
|
|
chr(0x00010400, 0x45, 0x00b1, BODY_STEWARDESS, HEAD_RANDOM, 0x0419, 0x00b1, -1, 1000, 9, 0x80000000, 0x00000000, TEAM_ENEMY, SQUADRON_00, -1, 0, 0x02000000)
|
|
chr(0x00010400, 0x46, 0x00e6, BODY_STEWARD, HEAD_RANDOM, 0x0419, 0x00e6, -1, 1000, 10, 0x80000000, 0x00000000, TEAM_ENEMY, SQUADRON_00, -1, 0, 0x01000000)
|
|
chr(0x00000000, 0x42, 0x0136, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0x80082000, 0x00000a00, TEAM_ENEMY, SQUADRON_04, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0042, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000000, 0x43, 0x0137, BODY_STRIPES, HEAD_RANDOM, AILIST_INIT_STRIPES, -1, -1, 200, 100, 0x80082000, 0x00000a00, TEAM_ENEMY, SQUADRON_04, -1, 0, 0x00000000)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0043, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000000, 0x47, 0x0138, BODY_TRENT, HEAD_TRENT, GAILIST_IDLE, 0x0135, -1, 20, 20, 0x80882408, 0x00000000, TEAM_ENEMY, SQUADRON_00, -1, 3, 0x00000700)
|
|
chr(0x00000001, 0x48, 0x0139, BODY_STEWARDESS_COAT, HEAD_ANKA, GAILIST_IDLE, 0x0135, -1, 20, 20, 0x80882408, 0x00000000, TEAM_ENEMY, SQUADRON_00, -1, 3, 0x00000700)
|
|
chr(0x00000000, 0x49, 0x013a, BODY_NSA_LACKEY, HEAD_RANDOM, GAILIST_INVINCIBLE_AND_IDLE, 0x0135, -1, 20, 20, 0x80882408, 0x00000000, TEAM_ENEMY, SQUADRON_00, -1, 3, 0x00000700)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x0049, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000000, 0x4a, 0x013b, BODY_NSA_LACKEY, HEAD_RANDOM, GAILIST_IDLE, 0x0135, -1, 20, 20, 0x80882408, 0x00000000, TEAM_ENEMY, SQUADRON_00, -1, 3, 0x00000700)
|
|
weapon(0x0100, MODEL_CHRAVENGER, 0x004a, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_K7AVENGER, 0x00ffffff, 0x00000000)
|
|
chr(0x00000000, 0x4b, 0x013c, BODY_ALASKAN_GUARD, HEAD_RANDOM, GAILIST_IDLE, 0x0135, -1, 20, 20, 0x80882408, 0x00000000, TEAM_ENEMY, SQUADRON_00, -1, 3, 0x00000700)
|
|
weapon(0x0100, MODEL_CHRDRAGON, 0x004b, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DRAGON, 0x00ffffff, 0x00000000)
|
|
chr(0x00000000, 0x4c, 0x013d, BODY_ALASKAN_GUARD, HEAD_RANDOM, GAILIST_IDLE, 0x0135, -1, 20, 20, 0x80882408, 0x00000000, TEAM_ENEMY, SQUADRON_00, -1, 3, 0x00000700)
|
|
weapon(0x0100, MODEL_CHRDRAGON, 0x004c, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DRAGON, 0x00ffffff, 0x00000000)
|
|
tag(0x00, 1)
|
|
weapon(0x0180, MODEL_CHRBRIEFCASE, 0x0113, 0x00420001, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_SUITCASE, 0x00ffffff, 0x00000000)
|
|
rename_object(-1, 0x4d, L_CAVE(10), L_CAVE(11), L_CAVE(12), L_CAVE(13), L_CAVE(14), 0x0000, 0x0000) // "Obtain suitcase."
|
|
tag(0x01, 1)
|
|
multimonitor(0x0099, MODEL_PD_CONSOLE, 0x0156, 0x000001a1, 0x00000001, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x03030000)
|
|
tag(0x02, 1)
|
|
weapon(0x0080, MODEL_STEWARDESS_TROLLEY, 0x00b6, 0x00000008, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DISGUISE41, 0x00ffffff, 0x00000000)
|
|
rename_object(-1, 0x41, L_CAVE(15), L_CAVE(16), L_CAVE(17), L_CAVE(18), L_CAVE(19), 0x0000, 0x0000) // "Obtain air stewardess uniform."
|
|
tag(0x06, 1)
|
|
stdobject(0x0100, MODEL_CHRBRIEFCASE, 0x00c4, 0x014204e1, 0x00086000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
tag(0x42, 6)
|
|
tag(0x43, 6)
|
|
tag(0x48, 6)
|
|
tag(0x49, 6)
|
|
tag(0x20, 1)
|
|
lift(0x0100, MODEL_A51_LIFT_THINWALL, 0x013f, 0x035204e8, 0x00304300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x013f, 0x013e, 0xffffffff, 0x00000001, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000071c, 0x0010aaaa, 0x15000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_DOOR2A_G5, 0x019a, 0x10000400, 0x00000800, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00040000, 0x00000000, 0x000000b4, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_DOOR2A_G5, 0x019b, 0x10000400, 0x00000800, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00040000, 0x00000000, 0x000000b4, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_DOOR2A_G5, 0x0198, 0x10000400, 0x00000800, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00040000, 0x00000000, 0x000000b4, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_DOOR2A_G5, 0x0199, 0x10000400, 0x00000800, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00040000, 0x00000000, 0x000000b4, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
link_objects(-4, -5, 0, 0)
|
|
link_objects(-4, -6, 0, 0)
|
|
link_objects(-4, -7, 0, 1)
|
|
link_objects(-4, -8, 0, 1)
|
|
tag(0x04, 1)
|
|
lift(0x0100, MODEL_BAGGAGECARRIER, 0x0144, 0x015204e8, 0x00304300, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0144, 0x0145, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000071c, 0x0010aaaa, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
tag(0x3b, 6)
|
|
tag(0x37, 3)
|
|
tag(0x36, 1)
|
|
lift(0x0100, MODEL_AIRBASE_LIFT_ANGLE, 0x0146, 0x235204e8, 0x00304300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0146, 0x0147, 0xffffffff, 0x00000001, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000aaa, 0x00320000, 0x15000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_DOOR2A_G5, 0x0184, 0x10000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00040000, 0x00000000, 0x000000b4, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_DOOR2A_G5, 0x0185, 0x10000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00040000, 0x00000000, 0x000000b4, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_DOOR2A_G5, 0x019d, 0x10000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00040000, 0x00000000, 0x000000b4, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_DOOR2A_G5, 0x019e, 0x10000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00040000, 0x00000000, 0x000000b4, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
link_objects(-4, -5, 0, 0)
|
|
link_objects(-4, -6, 0, 0)
|
|
link_objects(-4, -7, 0, 1)
|
|
link_objects(-4, -8, 0, 1)
|
|
tag(0x3c, 10)
|
|
tag(0x3d, 10)
|
|
tag(0x3e, 10)
|
|
tag(0x3f, 10)
|
|
tag(0x40, 10)
|
|
tag(0x41, 10)
|
|
tag(0x38, 10)
|
|
tag(0x39, 10)
|
|
tag(0x21, 1)
|
|
lift(0x0100, MODEL_AIRBASE_LIFT_ENCLOSED, 0x0140, 0x035204e8, 0x00304300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0140, 0x0141, 0x01420143, 0x00000001, 0x00000003, 0x00000005, 0x00000007, 0x00000000, 0x00000000, 0x0000071c, 0x0010aaaa, 0x16000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_DOOR2A_G5, 0x0196, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000e666, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00000000, 0x00000000, 0x000001e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_DOOR2A_G5, 0x0197, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000e666, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00000000, 0x00000000, 0x000001e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_DOOR2A_G5, 0x0194, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000e666, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00000000, 0x00000000, 0x000001e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_DOOR2A_G5, 0x0195, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000e666, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00000000, 0x00000000, 0x000001e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_DOOR2A_G5, 0x0192, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000e666, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00000000, 0x00000000, 0x000001e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_DOOR2A_G5, 0x0193, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000e666, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00000000, 0x00000000, 0x000001e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_DOOR2A_G5, 0x0190, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000e666, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00000000, 0x00000000, 0x000001e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_DOOR2A_G5, 0x0191, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000e666, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00000000, 0x00000000, 0x000001e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
link_objects(-8, -9, 0, 0)
|
|
link_objects(-8, -10, 0, 0)
|
|
link_objects(-8, -11, 0, 1)
|
|
link_objects(-8, -12, 0, 1)
|
|
link_objects(-8, -13, 0, 2)
|
|
link_objects(-8, -14, 0, 2)
|
|
link_objects(-8, -15, 0, 3)
|
|
link_objects(-8, -16, 0, 3)
|
|
tag(0x05, 1)
|
|
multimonitor(0x0099, MODEL_COMHUB, 0x0153, 0x00000102, 0x00000000, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x03030300)
|
|
tag(0x07, 17)
|
|
tag(0x08, 17)
|
|
tag(0x09, 17)
|
|
tag(0x0a, 17)
|
|
tag(0x0b, 17)
|
|
tag(0x0c, 17)
|
|
tag(0x0d, 17)
|
|
tag(0x0e, 17)
|
|
tag(0x0f, 17)
|
|
tag(0x10, 17)
|
|
tag(0x11, 17)
|
|
tag(0x12, 17)
|
|
tag(0x13, 17)
|
|
tag(0x14, 17)
|
|
tag(0x15, 17)
|
|
tag(0x16, 17)
|
|
tag(0x17, 17)
|
|
door(0x0100, MODEL_LASDOOR, 0x0168, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x0169, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x016a, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x016b, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x016c, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x016d, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x016e, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x016f, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x0170, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x0177, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x0171, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x0172, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x0173, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x0176, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x0174, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x0175, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x017a, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x017b, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x017c, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x0178, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_LASDOOR, 0x0179, 0x06000400, 0x22000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0c00000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
stdobject(0x00e6, MODEL_A51_CRATE2, 0x0157, 0x000201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x00e6, MODEL_A51_CRATE2, 0x0158, 0x000201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x00e6, MODEL_A51_CRATE2, 0x0159, 0x000201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x00e6, MODEL_A51_CRATE2, 0x015a, 0x000201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x00e6, MODEL_A51_CRATE2, 0x015b, 0x000201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x00e6, MODEL_A51_CRATE2, 0x015c, 0x000201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x00e6, MODEL_A51_CRATE2, 0x015d, 0x000201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x00e6, MODEL_A51_CRATE2, 0x015e, 0x000201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x00e6, MODEL_A51_CRATE2, 0x015f, 0x000201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x00e6, MODEL_A51_CRATE2, 0x0160, 0x000201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x00e6, MODEL_A51_CRATE2, 0x0161, 0x000201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x00e6, MODEL_A51_CRATE2, 0x0162, 0x000201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x00e6, MODEL_A51_CRATE2, 0x0163, 0x000201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x00e6, MODEL_A51_CRATE2, 0x0164, 0x000201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x00e6, MODEL_A51_CRATE2, 0x0165, 0x000201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x00e6, MODEL_A51_CRATE2, 0x0166, 0x000201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x00e6, MODEL_A51_CRATE2, 0x0167, 0x000201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
door(0x0100, MODEL_A51_VERT_DOOR_ST, 0x0180, 0x10000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00000000, 0x00000000, 0x00000384, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_A51_VERT_DOOR_ST, 0x017f, 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00000000, 0x00000000, 0x00000384, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x003b, 0x03520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
escalator(0x0100, MODEL_ESCA_STEP, 0x002d, 0x13520401, 0x00224300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
tag(0x18, 1)
|
|
door(0x0100, MODEL_AF1_INNERDOOR, 0x0183, 0x10000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00040000, 0x00000002, 0x00000384, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000800, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_DOOR2A_G5, 0x0186, 0x10000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00040000, 0x00000000, 0x00000384, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000800, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
tag(0x35, 1)
|
|
door(0x0100, MODEL_AF1_INNERDOOR, 0x0187, 0x10000400, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00040000, 0x00000080, 0x00000384, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000800, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
tag(0x27, 1)
|
|
door(0x0100, MODEL_AF1_INNERDOOR, 0x018a, 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00040000, 0x00000000, 0x00000384, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000800, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
tag(0x29, 1)
|
|
stdobject(0x0100, MODEL_AF1_INNERDOOR, 0x01a0, 0x800201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
tag(0x28, 1)
|
|
door(0x0100, MODEL_AF1_INNERDOOR, 0x018e, 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00040000, 0x00000000, 0x00000384, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000800, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
tag(0x2a, 1)
|
|
stdobject(0x0100, MODEL_AF1_INNERDOOR, 0x01a4, 0x000201e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
door(0x0100, MODEL_AF1_INNERDOOR, 0x018b, 0x10000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00040000, 0x00000000, 0x00000384, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000800, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
tag(0x2d, 1)
|
|
door(0x0100, MODEL_AIRBASE_SAFEDOOR, 0x018c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x005a0000, 0x03e80000, 0x00640000, 0x00640000, 0x00010000, 0x00000005, 0x00000080, 0x000005dc, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000800, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_AF1_INNERDOOR, 0x018d, 0x10000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00040000, 0x00000000, 0x00000384, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000800, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_AF1_INNERDOOR, 0x018f, 0x10000400, 0x20000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00040000, 0x00000002, 0x00000384, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000800, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
tag(0x19, 1)
|
|
multimonitor(0x0099, MODEL_COMHUB, 0x0154, 0x00000102, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x03030300)
|
|
hovercar(0x0080, MODEL_TESTERBOT, 0x01ba, 0xe0000008, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000064, 0x00000000, 0x00000000, 0x0fff0000, 0x0000042e, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
hovercar(0x0080, MODEL_HOOVERBOT, 0x01ba, 0xe0000008, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000064, 0x00000000, 0x00000000, 0x0fff0000, 0x0000042f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
hovercar(0x0080, MODEL_HOOVERBOT, 0x01c3, 0xe0000008, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000064, 0x00000000, 0x00000000, 0x0fff0000, 0x00000431, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
hovercar(0x004c, MODEL_TESTERBOT, 0x01c3, 0xe0000008, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000064, 0x00000000, 0x00000000, 0x0fff0000, 0x00000432, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000)
|
|
tag(0x03, 1)
|
|
weapon(0x0040, MODEL_SAFEITEM, 0x00d6, 0x00000008, 0x00000000, 0x00400000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_FLIGHTPLANS, 0x00ffffff, 0x00000000)
|
|
rename_object(-1, 0x42, L_CAVE(20), L_CAVE(21), L_CAVE(22), L_CAVE(23), L_CAVE(24), 0x0000, 0x0000) // "Obtain flight plans from safe."
|
|
tag(0x1f, 1)
|
|
lift(0x0100, MODEL_DD_LIFTDOOR, 0x0151, 0x035204e8, 0x00304300, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0151, 0x0150, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000071c, 0x0010aaaa, 0x01000000, 0x00000000, 0x00000000, 0x00000000)
|
|
tag(0x1a, 1)
|
|
stdobject(0x0100, MODEL_LIGHTSWITCH2, 0x0155, 0x00420008, 0x00000800, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_DESK, 0x01ce, 0x000005e1, 0x00004000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_DESK, 0x01cf, 0x000005e1, 0x00004000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_DESK, 0x01d0, 0x000005e1, 0x00004000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_DESK, 0x01d1, 0x000005e1, 0x00004000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_DESK, 0x01d2, 0x000005e1, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_CHAIR, 0x01d4, 0x000005e1, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_CHAIR, 0x01d5, 0x000005e1, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_CHAIR, 0x01d6, 0x000005e1, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_CHAIR, 0x01d7, 0x000005e1, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
tag(0x24, 1)
|
|
stdobject(0x0100, MODEL_DD_CHAIR, 0x01d9, 0x000205e1, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
tag(0x25, 1)
|
|
stdobject(0x0100, MODEL_DD_CHAIR, 0x01dc, 0x000205e1, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_CHAIR, 0x01da, 0x000205e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_CHAIR, 0x01db, 0x000205e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
tag(0x26, 1)
|
|
stdobject(0x0100, MODEL_DD_CHAIR, 0x01dd, 0x000205e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_DESK, 0x01d3, 0x000005e1, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_PLANTRUBBER, 0x01de, 0x04000001, 0x0000c100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_PLANTSPIDER, 0x01df, 0x04000001, 0x0000c100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_PLANTSPIKE, 0x01e0, 0x04000501, 0x0000c100, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_PLANTRUBBER, 0x01e1, 0x04000001, 0x0000c100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_PLANTSPIDER, 0x01e2, 0x04000001, 0x0000c100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_PLANTSPIKE, 0x01e3, 0x04000501, 0x0000c100, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_PLANTRUBBER, 0x01e4, 0x04000001, 0x0000c100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_PLANTSPIKE, 0x01e7, 0x04000501, 0x0000c100, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_DESK, 0x01e8, 0x000005e1, 0x00004100, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_DESK, 0x01e9, 0x000005e1, 0x00004100, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
stdobject(0x0100, MODEL_DD_DESK, 0x01ea, 0x000005e1, 0x00004100, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
tag(0x23, 1)
|
|
door(0x0100, MODEL_DOOR2A_G5, 0x019c, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000e666, 0x0000e666, 0x00005555, 0x00005555, 0x000007ae, 0x00000000, 0x00000002, 0x000000f0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
tag(0x22, 1)
|
|
stdobject(0x0100, MODEL_CABLE_CAR, 0xffff, 0x00021401, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
tag(0x2f, 1)
|
|
stdobject(0x0100, MODEL_BINOCULARS, 0xffff, 0x00021401, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
tinted_glass(0x0100, MODEL_DD_WINDOW, 0x01ec, 0x10000b62, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00640190, 0x0000ffff, 0x00000000)
|
|
tinted_glass(0x0100, MODEL_DD_WINDOW, 0x01ed, 0x10000b62, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00640190, 0x0000ffff, 0x00000000)
|
|
tinted_glass(0x0100, MODEL_DD_WINDOW, 0x01ee, 0x10000b62, 0x00104000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00640190, 0x0000ffff, 0x00000000)
|
|
tinted_glass(0x0100, MODEL_DD_WINDOW, 0x01ef, 0x14000b62, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00640190, 0x0000ffff, 0x00000000)
|
|
tag(0x46, 2)
|
|
tag(0x47, 2)
|
|
tinted_glass(0x0100, MODEL_DD_WINDOW, 0x01f0, 0x14000b62, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00640190, 0x0000ffff, 0x00000000)
|
|
tinted_glass(0x0100, MODEL_DD_WINDOW, 0x01f1, 0x14000b62, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00640190, 0x0000ffff, 0x00000000)
|
|
tinted_glass(0x0100, MODEL_DD_WINDOW, 0x01f2, 0x14000b62, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00640190, 0x0000ffff, 0x00000000)
|
|
tag(0x2b, 1)
|
|
weapon(0x0100, MODEL_CHRREMOTEMINE, 0x0111, 0x003004e8, 0x000a2001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_REMOTEMINE, 0x00ffffff, 0x00000000)
|
|
tag(0x2e, 1)
|
|
stdobject(0x0100, MODEL_AIRFORCE1, 0xffff, 0x00021401, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000)
|
|
tag(0x45, 1)
|
|
tinted_glass(0x0100, MODEL_DD_WINDOW, 0x01eb, 0x14000b62, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00c80320, 0x0000ffff, 0x00000000)
|
|
glass(0x0100, MODEL_WINDOW, 0x01f3, 0x04000b62, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000)
|
|
glass(0x0100, MODEL_WINDOW, 0x01f4, 0x04000b62, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000)
|
|
glass(0x0100, MODEL_WINDOW, 0x01f5, 0x04000b62, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000)
|
|
glass(0x0100, MODEL_WINDOW, 0x01f6, 0x04000262, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000)
|
|
glass(0x0100, MODEL_WINDOW, 0x01f7, 0x04000262, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000)
|
|
glass(0x0100, MODEL_WINDOW, 0x01f8, 0x04000262, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000)
|
|
glass(0x0100, MODEL_WINDOW, 0x01f9, 0x04000262, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000)
|
|
door(0x0100, MODEL_SHUTTLEDOOR, 0x01a2, 0x10000000, 0x000000e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000c000, 0x0000f333, 0x0002c71c, 0x0002c71c, 0x00000888, 0x00140000, 0x00000000, 0x0000003c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
door(0x0100, MODEL_SHUTTLEDOOR, 0x01a3, 0x10000000, 0x000000e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000c000, 0x0000f333, 0x0002c71c, 0x0002c71c, 0x00000888, 0x000c0000, 0x00000000, 0x0fffffff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000)
|
|
tag(0x33, 1)
|
|
shield(0x0100, MODEL_CHRSHIELD, 0x0011, 0x00004001, 0x000000e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00010000, 0x00000000, 0x00000000)
|
|
tag(0x34, 1)
|
|
shield(0x0100, MODEL_CHRSHIELD, 0x00d6, 0x00100001, 0x000800c0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00010000, 0x00000000, 0x00000000)
|
|
tag(0x44, 1)
|
|
weapon(0x0080, MODEL_MULTI_AMMO_CRATE, 0x00b5, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_PROXIMITYMINE, 0x00ffffff, 0x00000000)
|
|
endprops
|
|
};
|
|
|
|
s32 intro[] = {
|
|
spawn(0x011e)
|
|
intro_weapon(WEAPON_CROSSBOW, -1)
|
|
intro_weapon(WEAPON_HORIZONSCANNER, -1)
|
|
ammo(AMMOTYPE_CROSSBOW, 12)
|
|
ammo(AMMOTYPE_PROXY_MINE, 3)
|
|
ammo(AMMOTYPE_RIFLE, 30)
|
|
intro_weapon(WEAPON_CAMSPY, -1)
|
|
outfit(OUTFIT_SNOW)
|
|
endintro
|
|
};
|
|
|
|
s32 path06[] = {
|
|
0x000e,
|
|
0x000d,
|
|
0x000d,
|
|
0x000e,
|
|
0x0012,
|
|
-1,
|
|
};
|
|
|
|
s32 path07[] = {
|
|
0x002d,
|
|
0x0031,
|
|
0x002e,
|
|
0x002f,
|
|
0x0030,
|
|
0x0031,
|
|
-1,
|
|
};
|
|
|
|
s32 path08[] = {
|
|
0x004d,
|
|
0x004f,
|
|
0x004d,
|
|
0x004c,
|
|
0x003d,
|
|
0x003e,
|
|
0x003c,
|
|
0x003e,
|
|
0x003d,
|
|
0x004c,
|
|
-1,
|
|
};
|
|
|
|
s32 path09[] = {
|
|
0x005b,
|
|
0x0053,
|
|
0x0051,
|
|
0x0052,
|
|
0x0054,
|
|
0x0053,
|
|
-1,
|
|
};
|
|
|
|
s32 path10[] = {
|
|
0x0041,
|
|
0x0042,
|
|
0x0043,
|
|
0x0044,
|
|
0x0045,
|
|
0x0044,
|
|
0x0043,
|
|
0x0042,
|
|
-1,
|
|
};
|
|
|
|
s32 path11[] = {
|
|
0x008e,
|
|
0x008d,
|
|
0x008c,
|
|
0x008d,
|
|
-1,
|
|
};
|
|
|
|
s32 path12[] = {
|
|
0x0095,
|
|
0x0090,
|
|
0x008f,
|
|
0x008e,
|
|
0x008f,
|
|
0x0090,
|
|
-1,
|
|
};
|
|
|
|
s32 path13[] = {
|
|
0x0099,
|
|
0x0098,
|
|
0x0097,
|
|
0x0096,
|
|
0x0095,
|
|
0x0096,
|
|
0x0097,
|
|
0x0098,
|
|
-1,
|
|
};
|
|
|
|
s32 path14[] = {
|
|
0x0030,
|
|
0x002c,
|
|
0x0039,
|
|
0x002c,
|
|
-1,
|
|
};
|
|
|
|
s32 path15[] = {
|
|
0x0019,
|
|
0x0012,
|
|
-1,
|
|
};
|
|
|
|
s32 path00[] = {
|
|
0x01ba,
|
|
0x01bb,
|
|
0x01bc,
|
|
0x01bd,
|
|
0x01bd,
|
|
-1,
|
|
};
|
|
|
|
s32 path01[] = {
|
|
0x01ba,
|
|
0x01be,
|
|
0x01bf,
|
|
0x01c0,
|
|
0x01ba,
|
|
-1,
|
|
};
|
|
|
|
s32 path02[] = {
|
|
0x01ba,
|
|
0x01c1,
|
|
0x01c2,
|
|
0x01be,
|
|
0x01ba,
|
|
-1,
|
|
};
|
|
|
|
s32 path03[] = {
|
|
0x01c3,
|
|
0x01c4,
|
|
0x01c5,
|
|
0x01c6,
|
|
0x01c3,
|
|
-1,
|
|
};
|
|
|
|
s32 path04[] = {
|
|
0x01c3,
|
|
0x01c7,
|
|
0x01c8,
|
|
0x01c9,
|
|
0x01c3,
|
|
-1,
|
|
};
|
|
|
|
s32 path05[] = {
|
|
0x01c3,
|
|
0x01ca,
|
|
0x01cb,
|
|
0x01cc,
|
|
0x01c3,
|
|
-1,
|
|
};
|
|
|
|
s32 unregistered_path1[] = {
|
|
0x003b,
|
|
0x003e,
|
|
0x003d,
|
|
0x004c,
|
|
0x004d,
|
|
0x004f,
|
|
0x0050,
|
|
0x004e,
|
|
0x004d,
|
|
0x004c,
|
|
0x003d,
|
|
0x003e,
|
|
0x003b,
|
|
0x003b,
|
|
-1,
|
|
};
|
|
|
|
struct path paths[] = {
|
|
{ path06, 6, PATHTYPE_BACKANDFORTH },
|
|
{ path07, 7, PATHTYPE_BACKANDFORTH },
|
|
{ path08, 8, PATHTYPE_BACKANDFORTH },
|
|
{ path09, 9, PATHTYPE_BACKANDFORTH },
|
|
{ path10, 10, PATHTYPE_BACKANDFORTH },
|
|
{ path11, 11, PATHTYPE_BACKANDFORTH },
|
|
{ path12, 12, PATHTYPE_BACKANDFORTH },
|
|
{ path13, 13, PATHTYPE_BACKANDFORTH },
|
|
{ path14, 14, PATHTYPE_BACKANDFORTH },
|
|
{ path15, 15, PATHTYPE_BACKANDFORTH },
|
|
{ path00, 0, PATHTYPE_BACKANDFORTH },
|
|
{ path01, 1, PATHTYPE_BACKANDFORTH },
|
|
{ path02, 2, PATHTYPE_BACKANDFORTH },
|
|
{ path03, 3, PATHTYPE_BACKANDFORTH },
|
|
{ path04, 4, PATHTYPE_BACKANDFORTH },
|
|
{ path05, 5, PATHTYPE_BACKANDFORTH },
|
|
{ NULL, 0, 0 },
|
|
};
|
|
|
|
u8 func1002_objectives_failed_msg[] = {
|
|
yield
|
|
give_object_to_chr(OBJ_UNIFORM, CHR_STEWARDESS)
|
|
set_chr_chrflag(0x00, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x01, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x02, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x03, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x04, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x05, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x06, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x07, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x08, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x09, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x0a, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x0b, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x0c, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x0d, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x0e, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x0f, CHRCFLAG_04000000)
|
|
set_chr_chrflag(CHR_STEWARDESS, CHRCFLAG_04000000)
|
|
set_chr_chrflag(CHR_SECRETARY, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x3a, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x3b, CHRCFLAG_04000000)
|
|
set_chr_chrflag(CHR_OFFICE1, CHRCFLAG_04000000)
|
|
set_chr_chrflag(CHR_OFFICE2, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x44, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x45, CHRCFLAG_04000000)
|
|
set_chr_chrflag(0x46, CHRCFLAG_04000000)
|
|
set_ailist(CHR_SELF, GAILIST_SHOW_OBJ_FAILED_MSG)
|
|
endlist
|
|
};
|
|
|
|
u8 func1000_rebuild_groups[] = {
|
|
set_ailist(CHR_SELF, GAILIST_REBUILD_GROUPS)
|
|
endlist
|
|
};
|
|
|
|
u8 func1401_setup_counterop[] = {
|
|
yield
|
|
set_chr_team(CHR_ANTI, TEAM_04)
|
|
set_ailist(CHR_SELF, GAILIST_REBUILD_GROUPS)
|
|
endlist
|
|
};
|
|
|
|
u8 unregistered_function1[] = {
|
|
set_returnlist(CHR_SELF, GAILIST_END_CINEMA)
|
|
set_ailist(CHR_SELF, 0x0401)
|
|
endlist
|
|
};
|
|
|
|
/**
|
|
* @unused
|
|
*/
|
|
u8 func0401_unused_cutscene[] = {
|
|
chr_draw_weapon_in_cutscene(CHR_BOND, WEAPON_FALCON2)
|
|
set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
|
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
|
set_music_track(MUSIC_AIRBASE_OUTRO_LONG)
|
|
camera_movement(0x016b)
|
|
cmd0175(60)
|
|
set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE)
|
|
set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000)
|
|
chr_do_animation(0x0170, -1, -1, 0x06, 0x00, CHR_BOND, 4)
|
|
set_chr_hudpiece_visible(CHR_BOND, TRUE)
|
|
set_chr_chrflag(0x00, CHRCFLAG_UNPLAYABLE)
|
|
unset_chr_chrflag(0x00, CHRCFLAG_HIDDEN)
|
|
set_chr_hiddenflag(0x00, CHRHFLAG_00020000)
|
|
chr_do_animation(0x016c, -1, -1, 0x06, 0x00, 0x00, 4)
|
|
set_chr_chrflag(0x01, CHRCFLAG_UNPLAYABLE)
|
|
unset_chr_chrflag(0x01, CHRCFLAG_HIDDEN)
|
|
set_chr_hiddenflag(0x01, CHRHFLAG_00020000)
|
|
chr_do_animation(0x016d, -1, -1, 0x06, 0x00, 0x01, 4)
|
|
set_chr_chrflag(0x02, CHRCFLAG_UNPLAYABLE)
|
|
unset_chr_chrflag(0x02, CHRCFLAG_HIDDEN)
|
|
set_chr_hiddenflag(0x02, CHRHFLAG_00020000)
|
|
chr_do_animation(0x016e, -1, -1, 0x06, 0x00, 0x02, 4)
|
|
set_chr_chrflag(CHR_STEWARDESS, CHRCFLAG_UNPLAYABLE)
|
|
unset_chr_chrflag(CHR_STEWARDESS, CHRCFLAG_HIDDEN)
|
|
set_chr_hiddenflag(CHR_STEWARDESS, CHRHFLAG_00020000)
|
|
chr_do_animation(0x016f, -1, -1, 0x06, 0x00, CHR_STEWARDESS, 4)
|
|
fade_to_color(0x000000ff, 0)
|
|
fade_to_color(0x00000000, 90)
|
|
set_cutscene_weapon(CHR_BOND, WEAPON_NONE, WEAPON_NONE)
|
|
yield
|
|
set_cutscene_weapon(CHR_BOND, WEAPON_NONE, WEAPON_NONE)
|
|
|
|
beginloop(0x04)
|
|
if_camera_animating(/*goto*/ 0x31)
|
|
goto_next(0x48)
|
|
|
|
label(0x31)
|
|
if_controller_button_pressed(/*goto*/ 0x48)
|
|
label(0x31)
|
|
endloop(0x04)
|
|
|
|
label(0x48)
|
|
label(0x02)
|
|
unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
|
unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
|
set_ailist(0x00, 0x0405)
|
|
set_ailist(0x01, 0x0405)
|
|
remove_chr(0x02)
|
|
set_ailist(CHR_STEWARDESS, 0x040b)
|
|
restart_default_music
|
|
reset_ambience
|
|
set_ailist(CHR_SELF, GAILIST_END_CINEMA)
|
|
endlist
|
|
};
|
|
|
|
u8 func0425_outro[] = {
|
|
fade_to_color(0x000000ff, 0)
|
|
fade_to_color(0x00000000, 110)
|
|
camera_movement(0x031a)
|
|
set_music_track(MUSIC_AIRBASE_OUTRO)
|
|
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
|
set_chr_chrflag(0xf1, CHRCFLAG_HIDDEN)
|
|
set_ailist(CHR_P1P2, GAILIST_IDLE)
|
|
unset_chr_chrflag(CHR_P1P2, CHRCFLAG_HIDDEN)
|
|
|
|
set_chr_chrflag(CHR_OUTRO_NSA, CHRCFLAG_UNPLAYABLE)
|
|
unset_chr_chrflag(CHR_OUTRO_NSA, CHRCFLAG_HIDDEN)
|
|
set_chr_hiddenflag(CHR_OUTRO_NSA, CHRHFLAG_00020000)
|
|
chr_do_animation(0x031b, -1, -1, 0x06, 0x00, CHR_OUTRO_NSA, 4)
|
|
|
|
show_object(OBJ_PLANE)
|
|
set_object_flag2(OBJ_PLANE, OBJFLAG2_04000000)
|
|
set_object_flag3(OBJ_PLANE, OBJFLAG3_00000010)
|
|
object_do_animation(0x031c, OBJ_PLANE, 0x04, 0xffff)
|
|
|
|
set_cutscene_weapon(CHR_P1P2, WEAPON_NONE, WEAPON_NONE)
|
|
yield
|
|
set_cutscene_weapon(CHR_P1P2, WEAPON_NONE, WEAPON_NONE)
|
|
show_nonessential_chrs(FALSE)
|
|
restart_timer
|
|
|
|
#define wait_until(time, loopid) \
|
|
beginloop(loopid) \
|
|
if_controller_button_pressed(/*goto*/ 0x48) \
|
|
if_timer_gt(time, /*goto*/ 0x02) \
|
|
endloop(loopid) \
|
|
label(0x02)
|
|
|
|
|
|
|
|
wait_until(38, 0x92)
|
|
play_sound(0x80c4, CHANNEL_10)
|
|
|
|
wait_until(84, 0x93)
|
|
play_sound(0x80c5, CHANNEL_10)
|
|
|
|
wait_until(130, 0x94)
|
|
play_sound(0x80c6, CHANNEL_10)
|
|
|
|
wait_until(176, 0x95)
|
|
play_sound(0x80c7, CHANNEL_10)
|
|
|
|
wait_until(220, 0x96)
|
|
play_sound(0x80c4, CHANNEL_10)
|
|
|
|
wait_until(274, 0x97)
|
|
play_sound(0x80c5, CHANNEL_10)
|
|
|
|
wait_until(320, 0x98)
|
|
play_sound(0x80c6, CHANNEL_10)
|
|
|
|
wait_until(365, 0x99)
|
|
play_sound(0x80c7, CHANNEL_10)
|
|
|
|
beginloop(0x04)
|
|
if_camera_animating(/*goto*/ 0x31)
|
|
goto_next(0x48)
|
|
|
|
label(0x31)
|
|
if_controller_button_pressed(/*goto*/ 0x48)
|
|
label(0x31)
|
|
endloop(0x04)
|
|
|
|
label(0x48)
|
|
mute_channel(CHANNEL_10)
|
|
label(0x02)
|
|
unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
|
unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
|
hide_object(OBJ_PLANE)
|
|
end_level
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func0402_init_stripes[] = {
|
|
set_chr_chrflag(CHR_SELF, CHRCFLAG_HIDDEN)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func1004_guard_activation[] = {
|
|
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)
|
|
hide_chr(0x15)
|
|
hide_chr(0x17)
|
|
hide_chr(0x19)
|
|
hide_chr(0x1b)
|
|
hide_chr(0x1d)
|
|
hide_chr(0x1f)
|
|
hide_chr(0x21)
|
|
hide_chr(0x23)
|
|
hide_chr(0x25)
|
|
hide_chr(0x27)
|
|
hide_chr(0x2a)
|
|
hide_chr(0x2c)
|
|
hide_chr(0x2e)
|
|
hide_chr(0x30)
|
|
hide_chr(0x32)
|
|
hide_chr(0x34)
|
|
hide_chr(0x36)
|
|
hide_chr(0x42)
|
|
hide_chr(0x43)
|
|
hide_chr(0x14)
|
|
hide_chr(0x16)
|
|
hide_chr(0x18)
|
|
hide_chr(0x1a)
|
|
hide_chr(0x1c)
|
|
hide_chr(0x1e)
|
|
hide_chr(0x20)
|
|
hide_chr(0x22)
|
|
hide_chr(0x24)
|
|
hide_chr(0x26)
|
|
hide_chr(0x28)
|
|
hide_chr(0x2b)
|
|
hide_chr(0x2d)
|
|
hide_chr(0x2f)
|
|
hide_chr(0x31)
|
|
hide_chr(0x33)
|
|
hide_chr(0x35)
|
|
hide_chr(0x37)
|
|
|
|
beginloop(0x00)
|
|
if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x02)
|
|
endloop(0x00)
|
|
|
|
label(0x02)
|
|
hide_object(0x27)
|
|
hide_object(0x28)
|
|
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) \
|
|
set_ailist(chr, AILIST_REMOVE_OR_UNALERT) \
|
|
set_chr_flag_bankx(chr, CHRFLAG0_AIVSAI, BANK_0) \
|
|
yield
|
|
|
|
|
|
|
|
remove_alaskan_guard(0x00)
|
|
remove_alaskan_guard(0x01)
|
|
remove_alaskan_guard(0x02)
|
|
remove_alaskan_guard(0x03)
|
|
remove_alaskan_guard(0x04)
|
|
remove_alaskan_guard(0x05)
|
|
remove_alaskan_guard(0x06)
|
|
remove_alaskan_guard(0x07)
|
|
remove_alaskan_guard(0x08)
|
|
remove_alaskan_guard(0x09)
|
|
remove_alaskan_guard(0x0a)
|
|
remove_alaskan_guard(0x0b)
|
|
remove_alaskan_guard(0x0d)
|
|
remove_alaskan_guard(0x0e)
|
|
remove_alaskan_guard(0x0f)
|
|
|
|
set_ailist(CHR_SECRETARY, AILIST_REMOVE_OR_COWER)
|
|
set_ailist(CHR_STEWARDESS, AILIST_REMOVE_OR_COWER)
|
|
set_ailist(CHR_OFFICE1, AILIST_REMOVE_OR_COWER)
|
|
set_ailist(CHR_OFFICE2, AILIST_REMOVE_OR_COWER)
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
set_ailist(0x10, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
set_ailist(0x11, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
|
|
#define enable_takeover_guard2(chr, function) \
|
|
show_chr(chr) \
|
|
set_ailist(chr, function) \
|
|
unset_chr_hiddenflag(chr, CHRHFLAG_40000000) \
|
|
unset_chr_chrflag(chr, CHRCFLAG_HIDDEN) \
|
|
yield
|
|
|
|
|
|
|
|
enable_takeover_guard2(0x15, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x17, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x21, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x23, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x25, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x27, 0x0423)
|
|
enable_takeover_guard2(0x2a, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x2c, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x2e, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x30, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x32, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x34, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x36, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
|
|
show_chr(0x42)
|
|
set_ailist(0x42, AILIST_FOYER_SPAWNER)
|
|
yield
|
|
|
|
show_chr(0x43)
|
|
set_ailist(0x43, AILIST_FOYER_SPAWNER)
|
|
yield
|
|
|
|
enable_takeover_guard2(0x22, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x24, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x26, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x28, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x2b, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x2d, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x2f, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x31, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x33, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x35, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
enable_takeover_guard2(0x37, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
|
|
set_ailist(0x10, AILIST_DRAW_MAGNUM)
|
|
set_ailist(0x11, AILIST_DRAW_MAGNUM)
|
|
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)
|
|
endloop(0x6d)
|
|
|
|
#define enable_bottom_guard(chr) \
|
|
show_chr(chr) \
|
|
set_ailist(chr, AILIST_INIT_POSTTAKEOVER_GUARD) \
|
|
unset_chr_hiddenflag(chr, CHRHFLAG_40000000) \
|
|
unset_chr_chrflag(chr, CHRCFLAG_HIDDEN) \
|
|
yield
|
|
|
|
|
|
|
|
label(0x02)
|
|
enable_bottom_guard(0x13)
|
|
enable_bottom_guard(0x14)
|
|
enable_bottom_guard(0x16)
|
|
enable_bottom_guard(0x18)
|
|
enable_bottom_guard(0x1a)
|
|
enable_bottom_guard(0x1c)
|
|
enable_bottom_guard(0x1f)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func0405_start_path15[] = {
|
|
set_chr_dodge_rating(2, 0x0a)
|
|
set_accuracy(12)
|
|
set_reaction_speed(70)
|
|
set_chr_maxdamage(CHR_SELF, 40)
|
|
add_health_or_armor(0)
|
|
set_recovery_speed(0)
|
|
set_shield(0)
|
|
restart_timer
|
|
|
|
beginloop(0x05)
|
|
if_timer_gt(120, /*goto*/ 0x02)
|
|
endloop(0x05)
|
|
|
|
label(0x02)
|
|
assign_path(15)
|
|
start_path
|
|
set_ailist(CHR_SELF, GAILIST_UNALERTED)
|
|
endlist
|
|
};
|
|
|
|
/**
|
|
* Assigned to the stewardess from another unused function.
|
|
*/
|
|
u8 func040b_unused[] = {
|
|
set_chr_maxdamage(CHR_SELF, 1)
|
|
set_ailist(CHR_SELF, 0x040b)
|
|
endlist
|
|
};
|
|
|
|
u8 func0407_stewardess[] = {
|
|
set_shotlist(AILIST_STEWARDESS)
|
|
if_chr_dying(CHR_SELF, /*goto*/ 0x02)
|
|
if_chr_dying(CHR_SELF, /*goto*/ 0x02)
|
|
if_chr_unloaded(CHR_SELF, /*goto*/ 0x02)
|
|
goto_next(0x31)
|
|
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
label(0x31)
|
|
if_just_injured(CHR_SELF, /*goto*/ 0x02)
|
|
goto_next(0x4c)
|
|
|
|
// Injured
|
|
label(0x02)
|
|
restart_timer
|
|
|
|
beginloop(0x4d)
|
|
if_stage_flag_eq(STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE, TRUE, /*goto*/ 0x75)
|
|
if_distance_to_target_gt(200, /*goto*/ 0x75)
|
|
set_stage_flag(STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE)
|
|
label(0x75)
|
|
if_self_flag_bankx_eq(CHRFLAG0_SAID_INJURY_QUIP, TRUE, BANK_0, /*goto*/ 0x02)
|
|
if_num_times_shot_lt(1, /*goto*/ 0x02)
|
|
if_timer_lt(20, /*goto*/ 0x02)
|
|
say_quip(CHR_BOND, 0x0d, 0x28, 0x03, 0x00, BANK_0, 0x00, 0x00)
|
|
say_quip(CHR_BOND, 0x0e, 0x28, 0x03, 0x01, BANK_0, 0x00, 0x00)
|
|
set_self_flag_bankx(CHRFLAG0_SAID_INJURY_QUIP, BANK_0)
|
|
label(0x02)
|
|
if_chr_stopped(/*goto*/ 0x4c)
|
|
endloop(0x4d)
|
|
|
|
// Not injured, or recovered
|
|
label(0x4c)
|
|
if_chr_unloaded(CHR_SELF, /*goto*/ 0x02)
|
|
goto_next(0x16)
|
|
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
restart_timer
|
|
|
|
beginloop(0x11)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
set_target_chr(CHR_P1P2)
|
|
if_stage_flag_eq(STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE, TRUE, /*goto*/ 0x75)
|
|
if_distance_to_target_gt(200, /*goto*/ 0x75)
|
|
set_stage_flag(STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE)
|
|
label(0x75)
|
|
if_self_flag_bankx_eq(CHRFLAG0_CAN_EXAMINE_BODY, FALSE, BANK_0, /*goto*/ 0x31)
|
|
if_saw_death(0x00, /*goto*/ 0x0f)
|
|
label(0x31)
|
|
if_distance_to_target_gt(500, /*goto*/ 0x31)
|
|
if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x04)
|
|
label(0x31)
|
|
if_player_looking_at_something_maybe(0x00, 0x00, 0x01, /*goto*/ 0x02)
|
|
if_target_in_sight(/*goto*/ 0x04)
|
|
label(0x02)
|
|
if_timer_gt(120, /*goto*/ 0x16)
|
|
endloop(0x11)
|
|
|
|
// Loaded
|
|
label(0x16)
|
|
if_self_flag_bankx_eq(CHRFLAG0_00002000, TRUE, BANK_0, /*goto*/ 0x31)
|
|
walk_to_pad(0x0012) // outside front door
|
|
goto_next(0x00)
|
|
|
|
label(0x31)
|
|
walk_to_pad(0x0026) // top of escalators
|
|
|
|
// Walking
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
set_target_chr(CHR_P1P2)
|
|
if_stage_flag_eq(STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE, TRUE, /*goto*/ 0x75)
|
|
if_distance_to_target_gt(200, /*goto*/ 0x75)
|
|
set_stage_flag(STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE)
|
|
label(0x75)
|
|
if_self_flag_bankx_eq(CHRFLAG0_CAN_EXAMINE_BODY, FALSE, BANK_0, /*goto*/ 0x31)
|
|
if_saw_death(0x00, /*goto*/ 0x0f)
|
|
label(0x31)
|
|
if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x04)
|
|
if_player_looking_at_something_maybe(0x00, 0x00, 0x01, /*goto*/ 0x02)
|
|
if_target_in_sight(/*goto*/ 0x04)
|
|
label(0x02)
|
|
if_chr_stopped(/*goto*/ 0x0b)
|
|
endloop(0x00)
|
|
|
|
// Saw player
|
|
label(0x04)
|
|
restart_timer
|
|
try_face_entity(0x0200, 0x0000, /*goto*/ 0x05)
|
|
|
|
beginloop(0x05)
|
|
if_jo_ccw_direction_lt(10, /*goto*/ 0x02)
|
|
if_timer_gt(60, /*goto*/ 0x02)
|
|
endloop(0x05)
|
|
|
|
label(0x02)
|
|
speak(CHR_TARGET, L_CAVE(25), 0x1adc, CHANNEL_4, COLOR_07_RED) // "Look out - it's an intruder..."
|
|
increase_squadron_alertness(100)
|
|
chr_do_animation(ANIM_SURRENDER_002E, 0, 193, 0x10, 0x10, CHR_SELF, 2)
|
|
|
|
beginloop(0x06)
|
|
if_chr_stopped(/*goto*/ 0x02)
|
|
endloop(0x06)
|
|
|
|
label(0x02)
|
|
jog_to_pad(0x001d) // alcove in foyer
|
|
|
|
beginloop(0x07)
|
|
if_chr_stopped(/*goto*/ 0x0b)
|
|
endloop(0x07)
|
|
|
|
label(0x0b)
|
|
if_self_flag_bankx_eq(CHRFLAG0_00002000, TRUE, BANK_0, /*goto*/ 0x31)
|
|
set_self_flag_bankx(CHRFLAG0_00002000, BANK_0)
|
|
chr_do_animation(ANIM_SNEEZE, 0, -1, 0x10, 0x10, CHR_SELF, 2)
|
|
|
|
beginloop(0x69)
|
|
if_chr_stopped(/*goto*/ 0x02)
|
|
endloop(0x69)
|
|
|
|
label(0x02)
|
|
goto_first(0x16)
|
|
|
|
label(0x31)
|
|
set_stage_flag(STAGEFLAG_STEWARDESS_ENTERED_BASE)
|
|
|
|
label(0x62)
|
|
set_stage_flag(STAGEFLAG_DISGUISE_UNCOVERED)
|
|
chr_do_animation(ANIM_COWER_0229, -1, 190, 0x10, 0x0a, CHR_SELF, 2)
|
|
|
|
beginloop(0x63)
|
|
if_chr_stopped(/*goto*/ 0x31)
|
|
endloop(0x63)
|
|
|
|
label(0x31)
|
|
goto_first(0x62)
|
|
|
|
label(0x0f)
|
|
try_jog_to_chr(CHR_SEEDIE, /*goto*/ 0x49)
|
|
dprint 'W','A','L','K','F','A','I','L','\n',0,
|
|
|
|
beginloop(0x49)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
set_target_chr(CHR_P1P2)
|
|
if_stage_flag_eq(STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE, TRUE, /*goto*/ 0x75)
|
|
if_distance_to_target_gt(200, /*goto*/ 0x75)
|
|
set_stage_flag(STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE)
|
|
label(0x75)
|
|
if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x4e)
|
|
dprint 'W','A','L','K','I','N','G','\n',0,
|
|
if_player_looking_at_something_maybe(0x00, 0x00, 0x01, /*goto*/ 0x31)
|
|
if_target_in_sight(/*goto*/ 0x02)
|
|
label(0x31)
|
|
if_distance_to_chr_lt(200, 0xfb, /*goto*/ 0x4a)
|
|
if_chr_stopped(/*goto*/ 0x4a)
|
|
endloop(0x49)
|
|
|
|
label(0x4a)
|
|
unset_self_flag_bankx(CHRFLAG0_CAN_EXAMINE_BODY, BANK_0)
|
|
speak(CHR_TARGET, L_CAVE(27), 0x1add, CHANNEL_4, COLOR_07_RED) // "Is he OK?"
|
|
stop_chr
|
|
restart_timer
|
|
|
|
beginloop(0x4b)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
set_target_chr(CHR_P1P2)
|
|
if_stage_flag_eq(STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE, TRUE, /*goto*/ 0x75)
|
|
if_distance_to_target_gt(200, /*goto*/ 0x75)
|
|
set_stage_flag(STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE)
|
|
label(0x75)
|
|
if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x4e)
|
|
if_timer_gt(240, /*goto*/ 0x02)
|
|
endloop(0x4b)
|
|
|
|
label(0x02)
|
|
speak(CHR_TARGET, L_CAVE(28), 0x1ade, CHANNEL_4, COLOR_07_RED) // "I'll go and get some help."
|
|
restart_timer
|
|
stop_chr
|
|
|
|
beginloop(0x10)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
set_target_chr(CHR_P1P2)
|
|
if_stage_flag_eq(STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE, TRUE, /*goto*/ 0x75)
|
|
if_distance_to_target_gt(200, /*goto*/ 0x75)
|
|
set_stage_flag(STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE)
|
|
label(0x75)
|
|
if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x4e)
|
|
if_timer_gt(120, /*goto*/ 0x02)
|
|
endloop(0x10)
|
|
|
|
label(0x02)
|
|
unset_self_flag_bankx(CHRFLAG0_CAN_EXAMINE_BODY, BANK_0)
|
|
jog_to_pad(0x0026)
|
|
goto_first(0x00)
|
|
|
|
label(0x4e)
|
|
goto_first(0x04)
|
|
|
|
endlist
|
|
};
|
|
|
|
u8 func0406_become_unalerted[] = {
|
|
set_self_chrflag(CHRCFLAG_00000040)
|
|
label(0x00)
|
|
yield
|
|
if_enemy_distance_lt_and_los(2540, /*goto*/ 0x02)
|
|
set_ailist(CHR_SELF, GAILIST_UNALERTED)
|
|
|
|
label(0x02)
|
|
if_target_is_player(/*goto*/ 0x02)
|
|
if_chr_dying(CHR_TARGET, /*goto*/ 0x02)
|
|
if_chr_death_animation_finished(CHR_TARGET, /*goto*/ 0x02)
|
|
if_chr_unloaded(CHR_TARGET, /*goto*/ 0x02)
|
|
set_shotlist(AILIST_BECOME_UNALERTED)
|
|
set_returnlist(CHR_SELF, AILIST_BECOME_UNALERTED)
|
|
set_ailist(CHR_SELF, GAILIST_COMBAT_WITH_TARGET)
|
|
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, GAILIST_UNALERTED)
|
|
set_returnlist(CHR_SELF, GAILIST_UNALERTED)
|
|
endlist
|
|
};
|
|
|
|
u8 func1005_check_civilians_killed[] = {
|
|
beginloop(0x00)
|
|
if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x02)
|
|
if_chr_dying(CHR_STEWARDESS, /*goto*/ 0x31)
|
|
if_chr_dying(CHR_SECRETARY, /*goto*/ 0x31)
|
|
if_chr_dying(CHR_OFFICE1, /*goto*/ 0x31)
|
|
if_chr_dying(CHR_OFFICE2, /*goto*/ 0x31)
|
|
endloop(0x00)
|
|
|
|
label(0x31)
|
|
message(CHR_BOND, L_CAVE(26)) // "Innocent civilians have been killed."
|
|
set_stage_flag(STAGEFLAG_CIVILIANS_KILLED)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
#define init_path(reaction, health, armor, recovery, pathid) \
|
|
set_accuracy(12) \
|
|
set_reaction_speed(reaction) \
|
|
set_chr_maxdamage(CHR_SELF, health) \
|
|
add_health_or_armor(armor) \
|
|
set_recovery_speed(recovery) \
|
|
set_shield(0) \
|
|
assign_path(pathid) \
|
|
start_path \
|
|
set_ailist(CHR_SELF, GAILIST_UNALERTED)
|
|
|
|
|
|
|
|
u8 func041b_start_path06[] = {
|
|
init_path(70, 40, 0, 0, 0x06)
|
|
endlist
|
|
};
|
|
|
|
u8 func041c_start_path07[] = {
|
|
init_path(70, 40, 0, 0, 0x07)
|
|
endlist
|
|
};
|
|
|
|
u8 func041d_start_path08[] = {
|
|
init_path(70, 40, 0, 0, 0x08)
|
|
endlist
|
|
};
|
|
|
|
u8 func041e_start_path09[] = {
|
|
init_path(70, 40, 0, 0, 0x09)
|
|
endlist
|
|
};
|
|
|
|
u8 func041f_start_path10[] = {
|
|
init_path(70, 40, 0, 0, 0x0a)
|
|
endlist
|
|
};
|
|
|
|
u8 func0420_start_path11[] = {
|
|
init_path(45, 60, 40, 30, 0x0b)
|
|
endlist
|
|
};
|
|
|
|
u8 func0421_start_path12[] = {
|
|
init_path(45, 60, 40, 30, 0x0c)
|
|
endlist
|
|
};
|
|
|
|
/**
|
|
* Assigned to a stripes guard near the plane.
|
|
*/
|
|
u8 func0422_start_path13[] = {
|
|
set_chr_team(CHR_SELF, TEAM_04)
|
|
set_accuracy(12)
|
|
set_reaction_speed(45)
|
|
set_chr_maxdamage(CHR_SELF, 60)
|
|
add_health_or_armor(40)
|
|
set_recovery_speed(30)
|
|
set_shield(0)
|
|
rebuild_teams
|
|
rebuild_squadrons
|
|
assign_path(13)
|
|
start_path
|
|
set_ailist(CHR_SELF, GAILIST_UNALERTED)
|
|
endlist
|
|
};
|
|
|
|
u8 func0423_start_path14[] = {
|
|
set_chr_team(CHR_SELF, TEAM_04)
|
|
set_accuracy(12)
|
|
set_reaction_speed(45)
|
|
set_chr_maxdamage(CHR_SELF, 60)
|
|
add_health_or_armor(40)
|
|
set_recovery_speed(30)
|
|
set_shield(0)
|
|
rebuild_teams
|
|
rebuild_squadrons
|
|
assign_path(14)
|
|
start_path
|
|
set_ailist(CHR_SELF, GAILIST_UNALERTED)
|
|
endlist
|
|
};
|
|
|
|
u8 func0424_start_path15_unused[] = {
|
|
set_accuracy(12)
|
|
set_reaction_speed(45)
|
|
set_chr_maxdamage(CHR_SELF, 60)
|
|
add_health_or_armor(40)
|
|
set_recovery_speed(30)
|
|
set_shield(0)
|
|
assign_path(15)
|
|
start_path
|
|
set_ailist(CHR_SELF, GAILIST_UNALERTED)
|
|
endlist
|
|
};
|
|
|
|
u8 func040c_init_secretary[] = {
|
|
set_chr_maxdamage(CHR_SELF, 1)
|
|
set_ailist(CHR_SELF, AILIST_SECRETARY)
|
|
endlist
|
|
};
|
|
|
|
/**
|
|
* The secretary uses morale to track things.
|
|
*
|
|
* 0 = Not done anything
|
|
* 1 = Not used
|
|
* 2 = Said "good afternoon"
|
|
* 3 = Said "you'll have to check that weapon"
|
|
* 4 = Said "weapons are not allowed"
|
|
*/
|
|
u8 func0408_secretary[] = {
|
|
set_shotlist(AILIST_SECRETARY)
|
|
set_morale(0)
|
|
if_chr_dying(CHR_SELF, /*goto*/ 0x02)
|
|
if_chr_death_animation_finished(CHR_SELF, /*goto*/ 0x02)
|
|
if_chr_unloaded(CHR_SELF, /*goto*/ 0x02)
|
|
goto_next(0x00)
|
|
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
#define LABEL_MAIN_LOOP 0x00
|
|
#define LABEL_BECOME_ALERT1 0x66
|
|
#define LABEL_BECOME_ALERT2 0x68
|
|
|
|
//
|
|
// MAIN LOOP
|
|
//
|
|
beginloop(LABEL_MAIN_LOOP)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
set_target_chr(CHR_P1P2)
|
|
set_view_distance(100)
|
|
if_saw_injury(0x00, /*goto*/ LABEL_BECOME_ALERT1)
|
|
if_saw_death(0x00, /*goto*/ LABEL_BECOME_ALERT1)
|
|
set_view_distance(14)
|
|
if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ LABEL_BECOME_ALERT1)
|
|
if_target_in_sight(/*goto*/ 0x02)
|
|
if_alarm_active2(/*goto*/ 0x67)
|
|
endloop(LABEL_MAIN_LOOP)
|
|
|
|
// Joanna within 14 units (?) of distance
|
|
label(0x02)
|
|
restart_timer
|
|
try_face_entity(0x0200, 0x0000, /*goto*/ 0x05)
|
|
|
|
beginloop(0x05)
|
|
if_jo_ccw_direction_lt(10, /*goto*/ 0x02)
|
|
if_timer_gt(60, /*goto*/ 0x02)
|
|
endloop(0x05)
|
|
|
|
label(0x02)
|
|
if_stage_flag_eq(STAGEFLAG_DISGUISED, TRUE, /*goto*/ 0x07)
|
|
|
|
//
|
|
// BECOMING ALERT
|
|
//
|
|
label(LABEL_BECOME_ALERT1)
|
|
mute_channel(CHANNEL_4)
|
|
yield
|
|
label(0x02)
|
|
speak(CHR_TARGET, L_CAVE(32), 0x8162, CHANNEL_4, COLOR_06_WHITE) // "Oh, my God!"
|
|
|
|
label(0x67)
|
|
increase_squadron_alertness(100)
|
|
restart_timer
|
|
chr_do_animation(ANIM_SURRENDER_002E, 0, 193, 0x18, 0x10, CHR_SELF, 2)
|
|
|
|
beginloop(0x06)
|
|
if_chr_stopped(/*goto*/ 0x4f)
|
|
endloop(0x06)
|
|
|
|
label(0x4f)
|
|
set_stage_flag(STAGEFLAG_DISGUISE_UNCOVERED)
|
|
chr_do_animation(ANIM_COWER_0229, -1, -1, 0x10, 0x0a, CHR_SELF, 2)
|
|
|
|
beginloop(0x0f)
|
|
if_chr_stopped(/*goto*/ 0x31)
|
|
endloop(0x0f)
|
|
|
|
label(0x31)
|
|
if_stage_flag_eq(STAGEFLAG_RECEPTIONIST_CALLED_SECURITY, TRUE, /*goto*/ 0x31)
|
|
goto_next(0x77)
|
|
|
|
label(0x31)
|
|
goto_first(0x4f)
|
|
|
|
// Unreachable
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
// Seen Jo while disguised
|
|
label(0x07)
|
|
if_morale_lt(2, /*goto*/ 0x32)
|
|
goto_next(0x02)
|
|
|
|
//
|
|
// FIRST TALK
|
|
//
|
|
label(0x32)
|
|
speak(CHR_TARGET, L_CAVE(29), 0x8161, CHANNEL_4, COLOR_06_WHITE) // "Good afternoon."
|
|
chr_do_animation(ANIM_TALKING_0231, 0, 193, 0x18, 0x10, CHR_SELF, 2)
|
|
restart_timer
|
|
set_morale(2)
|
|
|
|
beginloop(0x08)
|
|
if_saw_injury(0x00, /*goto*/ LABEL_BECOME_ALERT2)
|
|
if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ LABEL_BECOME_ALERT2)
|
|
if_timer_gt(60, /*goto*/ 0x02)
|
|
if_chr_sees_player(/*goto*/ 0x31)
|
|
goto_first(LABEL_MAIN_LOOP)
|
|
|
|
label(0x31)
|
|
endloop(0x08)
|
|
|
|
//
|
|
// SECOND TALK/WEAPON CHECK
|
|
//
|
|
label(0x02)
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_NONE, /*goto*/ 0x0c)
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_UNARMED, /*goto*/ 0x0c)
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_HORIZONSCANNER, /*goto*/ 0x0c)
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_SUITCASE, /*goto*/ 0x0c)
|
|
if_morale_lt(3, /*goto*/ 0x32)
|
|
goto_next(0x02)
|
|
|
|
//
|
|
// WEAPON TALK 1
|
|
//
|
|
label(0x32)
|
|
speak(CHR_TARGET, L_CAVE(31), 0x1273, CHANNEL_4, COLOR_06_WHITE) // "You'll have to check that weapon in here."
|
|
restart_timer
|
|
chr_do_animation(ANIM_TALKING_0232, 0, 193, 0x18, 0x10, CHR_SELF, 2)
|
|
set_morale(3)
|
|
|
|
beginloop(0x09)
|
|
if_saw_injury(0x00, /*goto*/ LABEL_BECOME_ALERT2)
|
|
if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ LABEL_BECOME_ALERT2)
|
|
if_timer_gt(400, /*goto*/ 0x02)
|
|
if_chr_sees_player(/*goto*/ 0x31)
|
|
goto_first(LABEL_MAIN_LOOP)
|
|
|
|
label(0x31)
|
|
endloop(0x09)
|
|
|
|
// 6.66 seconds since weapon talk
|
|
label(0x02)
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_NONE, /*goto*/ 0x31)
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_UNARMED, /*goto*/ 0x31)
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_HORIZONSCANNER, /*goto*/ 0x31)
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_SUITCASE, /*goto*/ 0x31)
|
|
if_morale_lt(4, /*goto*/ 0x32)
|
|
goto_next(0x02)
|
|
|
|
label(0x32)
|
|
speak(CHR_TARGET, L_CAVE(33), 0x1274, CHANNEL_4, COLOR_06_WHITE) // "Weapons are not allowed in the base."
|
|
restart_timer
|
|
chr_do_animation(ANIM_TALKING_0233, 0, 193, 0x18, 0x10, CHR_SELF, 2)
|
|
set_morale(4)
|
|
|
|
beginloop(0x0a)
|
|
if_saw_injury(0x00, /*goto*/ LABEL_BECOME_ALERT2)
|
|
if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ LABEL_BECOME_ALERT2)
|
|
if_timer_gt(400, /*goto*/ 0x0c)
|
|
if_chr_sees_player(/*goto*/ 0x31)
|
|
goto_first(LABEL_MAIN_LOOP)
|
|
|
|
label(0x31)
|
|
endloop(0x0a)
|
|
|
|
// Wait 1.5 seconds, check weapon equipped and call security if so
|
|
label(0x0c)
|
|
restart_timer
|
|
|
|
beginloop(0x0d)
|
|
if_timer_gt(90, /*goto*/ 0x31)
|
|
endloop(0x0d)
|
|
|
|
label(0x31)
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_NONE, /*goto*/ 0x31)
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_UNARMED, /*goto*/ 0x31)
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_HORIZONSCANNER, /*goto*/ 0x31)
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_SUITCASE, /*goto*/ 0x31)
|
|
|
|
// Calling security
|
|
label(0x77)
|
|
speak(CHR_TARGET, L_CAVE(34), 0x1276, CHANNEL_4, COLOR_06_WHITE) // "Right, I'm calling security."
|
|
set_stage_flag(STAGEFLAG_RECEPTIONIST_CALLED_SECURITY)
|
|
activate_alarm
|
|
restart_timer
|
|
chr_do_animation(ANIM_SURRENDER_002E, 0, 193, 0x18, 0x10, CHR_SELF, 2)
|
|
|
|
beginloop(0x0b)
|
|
if_timer_gt(180, /*goto*/ 0x02)
|
|
endloop(0x0b)
|
|
|
|
label(0x02)
|
|
goto_first(0x4f)
|
|
|
|
// Unreachable
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
//
|
|
// TALK 2
|
|
//
|
|
label(0x31)
|
|
speak(CHR_TARGET, L_CAVE(30), 0x1272, CHANNEL_4, COLOR_06_WHITE) // "OK, you know the way from here."
|
|
chr_do_animation(0x0232, 0, 193, 0x18, 0x10, CHR_SELF, 2)
|
|
unlock_door(0x18, 0x02)
|
|
|
|
beginloop(0x0e)
|
|
if_saw_injury(0x00, /*goto*/ LABEL_BECOME_ALERT2)
|
|
if_saw_death(0x00, /*goto*/ LABEL_BECOME_ALERT2)
|
|
if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ LABEL_BECOME_ALERT2)
|
|
endloop(0x0e)
|
|
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
label(LABEL_BECOME_ALERT2)
|
|
goto_first(LABEL_BECOME_ALERT1)
|
|
|
|
endlist
|
|
};
|
|
|
|
u8 unregistered_function2[] = {
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
if_chr_has_hiddenflag(CHR_P1P2, CHRHFLAG_DISGUISED, /*goto*/ 0x02)
|
|
endloop(0x00)
|
|
|
|
label(0x02)
|
|
if_stage_flag_eq(STAGEFLAG_DISGUISE_UNCOVERED, TRUE, /*goto*/ 0x02)
|
|
if_stage_flag_eq(STAGEFLAG_RECEPTIONIST_CALLED_SECURITY, TRUE, /*goto*/ 0x02)
|
|
set_stage_flag(STAGEFLAG_DISGUISED)
|
|
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func1007_console_activation[] = {
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
if_object_in_good_condition(OBJ_CONSOLE, /*goto*/ 0x31)
|
|
goto_next(0x0c)
|
|
|
|
label(0x31)
|
|
if_chr_activated_object(CHR_P1P2, OBJ_CONSOLE, /*goto*/ 0x02)
|
|
endloop(0x00)
|
|
|
|
label(0x02)
|
|
set_stage_flag(STAGEFLAG_CONSOLE_ACTIVATED)
|
|
set_object_image(OBJ_CONSOLE, 0x00, 0x0f)
|
|
set_object_image(OBJ_CONSOLE, 0x01, 0x0f)
|
|
set_chr_flag_bankx(0x12, CHRFLAG0_00002000, BANK_0)
|
|
message(CHR_P1P2, L_CAVE(35)) // "System shutdown initiated..."
|
|
mute_channel(CHANNEL_1)
|
|
assign_sound(0x01b9, CHANNEL_1)
|
|
control_sound_from_object(CHANNEL_1, OBJ_CONSOLE, TRUE)
|
|
restart_timer
|
|
|
|
beginloop(0x04)
|
|
if_object_in_good_condition(OBJ_CONSOLE, /*goto*/ 0x31)
|
|
goto_next(0x0c)
|
|
|
|
label(0x31)
|
|
if_timer_gt(120, /*goto*/ 0x02)
|
|
endloop(0x04)
|
|
|
|
label(0x02)
|
|
set_object_image(OBJ_CONSOLE, 0x00, 0x14)
|
|
mute_channel(CHANNEL_1)
|
|
assign_sound(0x0479, CHANNEL_1)
|
|
control_sound_from_object(CHANNEL_1, OBJ_CONSOLE, TRUE)
|
|
message(CHR_P1P2, L_CAVE(36)) // "Security systems have been shut down."
|
|
set_stage_flag(STAGEFLAG_SECURITY_SHUT_DOWN)
|
|
unset_chr_hiddenflag(CHR_BOND, CHRHFLAG_DISGUISED)
|
|
restart_timer
|
|
|
|
beginloop(0x05)
|
|
if_timer_gt(120, /*goto*/ 0x31)
|
|
endloop(0x05)
|
|
|
|
label(0x31)
|
|
set_object_image(OBJ_CONSOLE, 0x01, 0x14)
|
|
play_x_music(0x58, 88) // @bug? Invalid channel
|
|
|
|
beginloop(0x06)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
if_chr_y(CHR_P1P2, -2000, OPERATOR_LESS_THAN, /*goto*/ 0x02)
|
|
endloop(0x06)
|
|
|
|
label(0x02)
|
|
stop_music_channel(CHANNEL_1)
|
|
|
|
label(0x0c)
|
|
mute_channel(CHANNEL_1)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
#define weapon_detection_logic(chr) \
|
|
if_difficulty_lt(DIFF_SA, /*goto*/ 0x08) \
|
|
\
|
|
label(0x00) \
|
|
yield \
|
|
mute_channel(CHANNEL_6) \
|
|
set_lights_state(0x0039, 0x03, 0x78, 0xff, 0x3c) \
|
|
set_lights_state(0x003a, 0x03, 0x78, 0xff, 0x3c) \
|
|
set_lights_state(0x003b, 0x03, 0x78, 0xff, 0x3c) \
|
|
set_lights_state(0x0041, 0x03, 0x78, 0xff, 0x3c) \
|
|
set_lights_state(0x0042, 0x03, 0x78, 0xff, 0x3c) \
|
|
set_lights_state(0x0043, 0x03, 0x78, 0xff, 0x3c) \
|
|
\
|
|
beginloop(0x65) \
|
|
if_stage_flag_eq(STAGEFLAG_SUITCASE_DEPOSITED, TRUE, /*goto*/ 0x08) \
|
|
if_chr_in_room(chr, 0x00, 0x0039, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x003a, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x003b, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x0041, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x0042, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x0043, /*goto*/ 0x31) \
|
|
endloop(0x65) \
|
|
\
|
|
/* In hallway with weapons */ \
|
|
label(0x31) \
|
|
set_lights_state(0x0039, 0x04, 0x00, 0xff, 0x3c) \
|
|
set_lights_state(0x003a, 0x04, 0x00, 0xff, 0x3c) \
|
|
set_lights_state(0x003b, 0x04, 0x00, 0xff, 0x3c) \
|
|
set_lights_state(0x0041, 0x04, 0x00, 0xff, 0x3c) \
|
|
set_lights_state(0x0042, 0x04, 0x00, 0xff, 0x3c) \
|
|
set_lights_state(0x0043, 0x04, 0x00, 0xff, 0x3c) \
|
|
play_sound(0x04ac, CHANNEL_6) \
|
|
restart_timer \
|
|
\
|
|
beginloop(0x04) \
|
|
if_timer_gt(60, /*goto*/ 0x02) \
|
|
if_chr_in_room(chr, 0x00, 0x0039, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x003a, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x003b, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x0041, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x0042, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x0043, /*goto*/ 0x31) \
|
|
goto_first(0x00) \
|
|
\
|
|
label(0x31) \
|
|
endloop(0x04) \
|
|
\
|
|
/* In hallway with weapons for over 60 frames */ \
|
|
label(0x02) \
|
|
restart_timer \
|
|
set_lights_state(0x0039, 0x04, 0x00, 0xff, 0x32) \
|
|
set_lights_state(0x003a, 0x04, 0x00, 0xff, 0x32) \
|
|
set_lights_state(0x003b, 0x04, 0x00, 0xff, 0x32) \
|
|
set_lights_state(0x0041, 0x04, 0x00, 0xff, 0x32) \
|
|
set_lights_state(0x0042, 0x04, 0x00, 0xff, 0x32) \
|
|
set_lights_state(0x0043, 0x04, 0x00, 0xff, 0x32) \
|
|
\
|
|
beginloop(0x05) \
|
|
if_timer_gt(40, /*goto*/ 0x02) \
|
|
if_chr_in_room(chr, 0x00, 0x0039, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x003a, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x003b, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x0041, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x0042, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x0043, /*goto*/ 0x31) \
|
|
goto_first(0x00) \
|
|
\
|
|
label(0x31) \
|
|
endloop(0x05) \
|
|
\
|
|
/* In hallway with weapons for over 100 frames */ \
|
|
label(0x02) \
|
|
restart_timer \
|
|
set_lights_state(0x0039, 0x04, 0x00, 0xff, 0x28) \
|
|
set_lights_state(0x003a, 0x04, 0x00, 0xff, 0x28) \
|
|
set_lights_state(0x003b, 0x04, 0x00, 0xff, 0x28) \
|
|
set_lights_state(0x0041, 0x04, 0x00, 0xff, 0x28) \
|
|
set_lights_state(0x0042, 0x04, 0x00, 0xff, 0x28) \
|
|
set_lights_state(0x0043, 0x04, 0x00, 0xff, 0x28) \
|
|
\
|
|
beginloop(0x06) \
|
|
if_timer_gt(1, /*goto*/ 0x02) \
|
|
if_chr_in_room(chr, 0x00, 0x0039, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x003a, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x003b, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x0041, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x0042, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x0043, /*goto*/ 0x31) \
|
|
goto_first(0x00) \
|
|
\
|
|
label(0x31) \
|
|
endloop(0x06) \
|
|
\
|
|
/* In hallway with weapons for over 101 frames */ \
|
|
label(0x02) \
|
|
restart_timer \
|
|
set_lights_state(0x0039, 0x04, 0x00, 0xff, 0x1e) \
|
|
set_lights_state(0x003a, 0x04, 0x00, 0xff, 0x1e) \
|
|
set_lights_state(0x003b, 0x04, 0x00, 0xff, 0x1e) \
|
|
set_lights_state(0x0041, 0x04, 0x00, 0xff, 0x1e) \
|
|
set_lights_state(0x0042, 0x04, 0x00, 0xff, 0x1e) \
|
|
set_lights_state(0x0043, 0x04, 0x00, 0xff, 0x1e) \
|
|
\
|
|
beginloop(0x07) \
|
|
yield \
|
|
yield \
|
|
yield \
|
|
yield \
|
|
yield \
|
|
yield \
|
|
yield \
|
|
yield \
|
|
yield \
|
|
if_timer_gt(30, /*goto*/ 0x02) \
|
|
if_chr_in_room(chr, 0x00, 0x0039, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x003a, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x003b, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x0041, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x0042, /*goto*/ 0x31) \
|
|
if_chr_in_room(chr, 0x00, 0x0043, /*goto*/ 0x31) \
|
|
goto_first(0x00) \
|
|
\
|
|
label(0x31) \
|
|
endloop(0x07) \
|
|
\
|
|
label(0x02) \
|
|
message(chr, 0x0e25) /* "Weapons have been detected." */ \
|
|
set_stage_flag(STAGEFLAG_WEAPONS_DETECTED) \
|
|
label(0x31) \
|
|
mute_channel(CHANNEL_6) \
|
|
yield \
|
|
activate_alarm \
|
|
set_ailist(CHR_SELF, GAILIST_IDLE) \
|
|
\
|
|
/* Agent, or suitcase deposited */ \
|
|
label(0x08) \
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
|
|
|
|
u8 func1020_weapon_scanning_bond[] = {
|
|
yield
|
|
weapon_detection_logic(CHR_BOND)
|
|
endlist
|
|
};
|
|
|
|
u8 func1021_weapon_scanning_coop[] = {
|
|
yield
|
|
set_target_chr(CHR_COOP)
|
|
if_chr_death_animation_finished(CHR_COOP, /*goto*/ 0x31)
|
|
goto_next(0x02)
|
|
|
|
label(0x31)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
label(0x02)
|
|
weapon_detection_logic(CHR_COOP)
|
|
endlist
|
|
};
|
|
|
|
u8 func1009_carousel_activation[] = {
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
if_chr_activated_object(CHR_P1P2, OBJ_BAGGAGE_CARRIER, /*goto*/ 0x02)
|
|
if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x31)
|
|
reloop(0x00)
|
|
|
|
// Shut down without depositing
|
|
label(0x31)
|
|
if_difficulty_lt(DIFF_SA, /*goto*/ 0x09)
|
|
message(CHR_BOND, L_CAVE(66)) // "Hover trolley has been shut down."
|
|
set_stage_flag(STAGEFLAG_TROLLEY_SHUT_DOWN_WITHOUT_BRIEFCASE)
|
|
yield
|
|
message(CHR_BOND, L_CAVE(67)) // "Equipment cannot be checked in."
|
|
label(0x09)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
// Carrier activated
|
|
label(0x02)
|
|
if_chr_weapon_equipped(CHR_P1P2, WEAPON_SUITCASE, /*goto*/ 0x02)
|
|
endloop(0x00)
|
|
|
|
label(0x02)
|
|
message(CHR_P1P2, L_CAVE(38)) // "Suitcase has been deposited."
|
|
chr_draw_weapon_in_cutscene(CHR_P1P2, WEAPON_UNARMED)
|
|
set_stage_flag(STAGEFLAG_SUITCASE_DEPOSITED)
|
|
play_sound(0x80aa, CHANNEL_7)
|
|
unset_object_flag2(OBJ_BRIEFCASE2, OBJFLAG2_INVISIBLE)
|
|
move_object_to_pad(OBJ_BRIEFCASE2, 0x00de)
|
|
yield
|
|
restart_timer
|
|
|
|
beginloop(0x05)
|
|
if_timer_gt(120, /*goto*/ 0x02)
|
|
endloop(0x05)
|
|
|
|
label(0x02)
|
|
clear_inventory(CHR_BOND)
|
|
unset_object_flag(OBJ_BAGGAGE_CARRIER, OBJFLAG_DEACTIVATED)
|
|
open_door(0x23)
|
|
restart_timer
|
|
|
|
beginloop(0x04)
|
|
if_timer_gt(400, /*goto*/ 0x02)
|
|
endloop(0x04)
|
|
|
|
label(0x02)
|
|
set_object_flag(OBJ_BAGGAGE_CARRIER, OBJFLAG_DEACTIVATED)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func100b_suitcase_scanning[] = {
|
|
beginloop(0x00)
|
|
if_stage_flag_eq(STAGEFLAG_SUITCASE_DEPOSITED, TRUE, /*goto*/ 0x02)
|
|
endloop(0x00)
|
|
|
|
label(0x02)
|
|
restart_timer
|
|
if_difficulty_lt(DIFF_SA, /*goto*/ 0x07)
|
|
if_difficulty_lt(DIFF_PA, /*goto*/ 0xb7)
|
|
|
|
// PA
|
|
set_countdown_timer(30)
|
|
show_countdown_timer
|
|
start_countdown_timer
|
|
|
|
beginloop(0x06)
|
|
if_stage_flag_eq(STAGEFLAG_CONSOLE_ACTIVATED, TRUE, /*goto*/ 0x07)
|
|
if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x07)
|
|
if_countdown_timer_lt(1, /*goto*/ 0x02)
|
|
endloop(0x06)
|
|
|
|
// SA
|
|
label(0xb7)
|
|
set_countdown_timer(45)
|
|
show_countdown_timer
|
|
start_countdown_timer
|
|
|
|
beginloop(0x05)
|
|
if_stage_flag_eq(STAGEFLAG_CONSOLE_ACTIVATED, TRUE, /*goto*/ 0x07)
|
|
if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x07)
|
|
if_countdown_timer_lt(1, /*goto*/ 0x02)
|
|
endloop(0x05)
|
|
|
|
// Scanned
|
|
label(0x02)
|
|
message(CHR_BOND, L_CAVE(39)) // "Suitcase has been scanned."
|
|
set_stage_flag(STAGEFLAG_SUITCASE_SCANNED)
|
|
|
|
// Agent
|
|
label(0x07)
|
|
stop_countdown_timer
|
|
hide_countdown_timer
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func040d_init_office1[] = {
|
|
set_chr_maxdamage(CHR_SELF, 1)
|
|
set_ailist(CHR_SELF, AILIST_OFFICE1)
|
|
endlist
|
|
};
|
|
|
|
u8 func0409_office1[] = {
|
|
#define LABEL_RUN_TO_FOYER 0x4f
|
|
|
|
set_self_chrflag(CHRCFLAG_00040000)
|
|
set_morale(0)
|
|
set_shotlist(AILIST_OFFICE1)
|
|
if_chr_dying(CHR_SELF, /*goto*/ 0x02)
|
|
if_chr_death_animation_finished(CHR_SELF, /*goto*/ 0x02)
|
|
if_chr_unloaded(CHR_SELF, /*goto*/ 0x02)
|
|
goto_next(0x42)
|
|
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
label(0x42)
|
|
chr_do_animation(ANIM_SITTING_DORMANT, 0, -1, 0x14, 0x10, CHR_SELF, 2)
|
|
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
set_target_chr(CHR_P1P2)
|
|
if_target_in_sight(/*goto*/ 0x02)
|
|
if_saw_injury(0x00, /*goto*/ LABEL_RUN_TO_FOYER)
|
|
if_stage_flag_eq(STAGEFLAG_OFFICE2_DEAD, TRUE, /*goto*/ LABEL_RUN_TO_FOYER)
|
|
if_object_in_good_condition(0x45, /*goto*/ 0x33)
|
|
goto_next(LABEL_RUN_TO_FOYER)
|
|
|
|
label(0x33)
|
|
if_chr_idle(/*goto*/ 0x31)
|
|
goto_first(0x42)
|
|
|
|
label(0x31)
|
|
endloop(0x00)
|
|
|
|
// Jo in sight
|
|
label(0x02)
|
|
if_stage_flag_eq(STAGEFLAG_DISGUISED, FALSE, /*goto*/ 0x07)
|
|
|
|
// Disguised
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_UNARMED, /*goto*/ 0x31)
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_HORIZONSCANNER, /*goto*/ 0x31)
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_SUITCASE, /*goto*/ 0x31)
|
|
goto_next(0x07)
|
|
|
|
// Disguised and unarmed-ish
|
|
label(0x31)
|
|
chr_do_animation(ANIM_SITTING_0265, 0, -1, 0x14, 0x10, CHR_SELF, 2)
|
|
speak(CHR_TARGET, L_CAVE(41), 0x1ae6, CHANNEL_4, COLOR_08_RED) // "Are you new around here?"
|
|
|
|
beginloop(0x09)
|
|
if_saw_injury(0x00, /*goto*/ LABEL_RUN_TO_FOYER)
|
|
if_stage_flag_eq(STAGEFLAG_OFFICE2_DEAD, TRUE, /*goto*/ LABEL_RUN_TO_FOYER)
|
|
if_chr_has_object(CHR_TARGET, OBJ_BRIEFCASE1, /*goto*/ 0x02)
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_UNARMED, /*goto*/ 0x31)
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_HORIZONSCANNER, /*goto*/ 0x31)
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_SUITCASE, /*goto*/ 0x31)
|
|
goto_next(0x07)
|
|
|
|
label(0x31)
|
|
if_chr_idle(/*goto*/ 0x31)
|
|
goto_next(0x7b)
|
|
|
|
label(0x31)
|
|
reloop(0x09)
|
|
|
|
label(0x7b)
|
|
chr_do_animation(ANIM_SITTING_DORMANT, 0, -1, 0x14, 0x00, CHR_SELF, 2)
|
|
endloop(0x09)
|
|
|
|
// Picked up briefcase
|
|
label(0x02)
|
|
restart_timer
|
|
try_face_entity(0x0200, 0x0000, /*goto*/ 0x0b)
|
|
|
|
beginloop(0x0b)
|
|
if_sound_finished(CHANNEL_4, /*goto*/ 0x31)
|
|
reloop(0x0b)
|
|
|
|
label(0x31)
|
|
if_jo_ccw_direction_lt(10, /*goto*/ 0x02)
|
|
if_timer_gt(60, /*goto*/ 0x02)
|
|
endloop(0x0b)
|
|
|
|
label(0x02)
|
|
speak(CHR_TARGET, L_CAVE(42), 0x1ae7, CHANNEL_4, COLOR_08_RED) // "Hey - give me back my case."
|
|
restart_timer
|
|
increase_squadron_alertness(100)
|
|
|
|
beginloop(0x0a)
|
|
if_timer_gt(120, /*goto*/ 0x02)
|
|
endloop(0x0a)
|
|
|
|
label(0x02)
|
|
goto_next(LABEL_RUN_TO_FOYER)
|
|
|
|
// Not disguised, or disguised with weapon equipped
|
|
label(0x07)
|
|
object_do_animation(0x025a, 0xff, 0x02, 0xffff)
|
|
restart_timer
|
|
try_face_entity(0x0200, 0x0000, /*goto*/ 0x05)
|
|
|
|
beginloop(0x05)
|
|
if_jo_ccw_direction_lt(10, /*goto*/ 0x02)
|
|
if_timer_gt(60, /*goto*/ 0x02)
|
|
endloop(0x05)
|
|
|
|
label(0x72)
|
|
label(0x02)
|
|
speak(CHR_TARGET, L_CAVE(40), 0x1ae5, CHANNEL_4, COLOR_08_RED) // "Hey, you - this is a restricted area."
|
|
increase_squadron_alertness(100)
|
|
restart_timer
|
|
chr_do_animation(ANIM_WALK_BACKWARDS, -1, -1, 0x10, 0x10, CHR_SELF, 2)
|
|
|
|
beginloop(0x06)
|
|
if_timer_gt(180, /*goto*/ LABEL_RUN_TO_FOYER)
|
|
endloop(0x06)
|
|
|
|
// Run to foyer
|
|
label(LABEL_RUN_TO_FOYER)
|
|
jog_to_pad(0x001b)
|
|
|
|
beginloop(0x08)
|
|
if_chr_stopped(/*goto*/ 0x02)
|
|
endloop(0x08)
|
|
|
|
label(0x02)
|
|
speak(CHR_TARGET, L_CAVE(44), 0x1ae8, CHANNEL_4, COLOR_08_RED) // "Upstairs...there's an intruder."
|
|
increase_squadron_alertness(100)
|
|
set_stage_flag(STAGEFLAG_DISGUISE_UNCOVERED)
|
|
activate_alarm
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func040e_init_office2[] = {
|
|
set_chr_maxdamage(CHR_SELF, 1)
|
|
set_ailist(CHR_SELF, AILIST_OFFICE2)
|
|
endlist
|
|
};
|
|
|
|
u8 func040a_office2[] = {
|
|
set_self_chrflag(CHRCFLAG_00040000)
|
|
set_morale(0)
|
|
set_shotlist(AILIST_OFFICE2)
|
|
if_chr_dying(CHR_SELF, /*goto*/ 0x02)
|
|
if_chr_death_animation_finished(CHR_SELF, /*goto*/ 0x02)
|
|
if_chr_unloaded(CHR_SELF, /*goto*/ 0x02)
|
|
goto_next(0x42)
|
|
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
label(0x42)
|
|
chr_do_animation(ANIM_SITTING_DORMANT, 0, -1, 0x14, 0x10, CHR_SELF, 2)
|
|
|
|
beginloop(0x00)
|
|
if_alertness(99, OPERATOR_GREATER_THAN, /*goto*/ 0x02)
|
|
if_saw_injury(0x00, /*goto*/ 0x72)
|
|
if_stage_flag_eq(STAGEFLAG_OFFICE1_DEAD, TRUE, /*goto*/ 0x72)
|
|
if_chr_idle(/*goto*/ 0x31)
|
|
goto_first(0x42)
|
|
|
|
label(0x31)
|
|
endloop(0x00)
|
|
|
|
// Alert
|
|
label(0x02)
|
|
|
|
beginloop(0x09)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
set_target_chr(CHR_P1P2)
|
|
if_chr_sees_player(/*goto*/ 0x02)
|
|
if_saw_injury(0x00, /*goto*/ 0x02)
|
|
if_stage_flag_eq(STAGEFLAG_OFFICE1_DEAD, TRUE, /*goto*/ 0x72)
|
|
endloop(0x09)
|
|
|
|
label(0x72)
|
|
label(0x02)
|
|
object_do_animation(0x025a, 0xff, 0x02, 0xffff)
|
|
restart_timer
|
|
try_face_entity(0x0200, 0x0000, /*goto*/ 0x05)
|
|
|
|
// Wait for other guy to finish talking
|
|
beginloop(0x05)
|
|
if_sound_finished(CHANNEL_4, /*goto*/ 0x31)
|
|
reloop(0x05)
|
|
|
|
label(0x31)
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
if_sound_finished(CHANNEL_4, /*goto*/ 0x31)
|
|
reloop(0x05)
|
|
|
|
label(0x31)
|
|
if_jo_ccw_direction_lt(10, /*goto*/ 0x02)
|
|
if_timer_gt(60, /*goto*/ 0x02)
|
|
endloop(0x05)
|
|
|
|
label(0x02)
|
|
if_chr_dying(CHR_OFFICE1, /*goto*/ 0x02)
|
|
if_chr_death_animation_finished(CHR_OFFICE1, /*goto*/ 0x02)
|
|
if_chr_unloaded(CHR_OFFICE1, /*goto*/ 0x02)
|
|
speak(CHR_TARGET, L_CAVE(43), 0x1ae9, CHANNEL_4, COLOR_09_BLUE) // "You get security - I'll deal with her..."
|
|
increase_squadron_alertness(100)
|
|
restart_timer
|
|
|
|
beginloop(0x06)
|
|
if_chr_stopped(/*goto*/ 0x02)
|
|
if_timer_gt(120, /*goto*/ 0x02)
|
|
endloop(0x06)
|
|
|
|
// Attack player
|
|
label(0x02)
|
|
set_self_flag_bankx(CHRFLAG1_00000001, BANK_1)
|
|
set_ailist(CHR_SELF, GAILIST_ALERTED)
|
|
|
|
// Unreachable
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func100c_check_end_level[] = {
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
if_objective_complete(0, /*goto*/ 0x31)
|
|
goto_first(0x00)
|
|
|
|
label(0x31)
|
|
if_difficulty_lt(DIFF_SA, /*goto*/ 0x31)
|
|
if_objective_complete(1, /*goto*/ 0x31)
|
|
goto_first(0x00)
|
|
|
|
label(0x31)
|
|
if_objective_complete(2, /*goto*/ 0x31)
|
|
goto_first(0x00)
|
|
|
|
label(0x31)
|
|
if_difficulty_lt(DIFF_PA, /*goto*/ 0x31)
|
|
if_objective_complete(3, /*goto*/ 0x31)
|
|
goto_first(0x00)
|
|
|
|
label(0x31)
|
|
if_chr_distance_to_pad_lt(CHR_P1P2, 200, 0x00e9, /*goto*/ 0x04)
|
|
if_chr_distance_to_pad_lt(CHR_P1P2, 200, 0x00d5, /*goto*/ 0x05)
|
|
endloop(0x00)
|
|
|
|
// Pad 0x00e9
|
|
label(0x04)
|
|
set_stage_flag(STAGEFLAG_BOARDED_PLANE)
|
|
unset_savefile_flag(SAVEFILEFLAG_AF1_ENTRY)
|
|
if_chr_death_animation_finished(CHR_BOND, /*goto*/ 0x31)
|
|
if_chr_dying(CHR_BOND, /*goto*/ 0x31)
|
|
if_chr_unloaded(CHR_BOND, /*goto*/ 0x31)
|
|
goto_next(0x02)
|
|
|
|
label(0x31)
|
|
if_chr_death_animation_finished(CHR_COOP, /*goto*/ 0x31)
|
|
if_chr_dying(CHR_COOP, /*goto*/ 0x31)
|
|
if_chr_unloaded(CHR_COOP, /*goto*/ 0x31)
|
|
goto_next(0x02)
|
|
|
|
// Both players dead
|
|
label(0x31)
|
|
end_level
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
// Mission complete
|
|
label(0x02)
|
|
set_invincible(CHR_BOND)
|
|
set_ailist(CHR_SELF, 0x0425)
|
|
|
|
// Pad 0x00d5
|
|
label(0x05)
|
|
set_stage_flag(STAGEFLAG_BOARDED_PLANE)
|
|
set_savefile_flag(SAVEFILEFLAG_AF1_ENTRY)
|
|
if_chr_death_animation_finished(CHR_BOND, /*goto*/ 0x31)
|
|
if_chr_dying(CHR_BOND, /*goto*/ 0x31)
|
|
if_chr_unloaded(CHR_BOND, /*goto*/ 0x31)
|
|
goto_next(0x02)
|
|
|
|
label(0x31)
|
|
if_chr_death_animation_finished(CHR_COOP, /*goto*/ 0x31)
|
|
if_chr_dying(CHR_COOP, /*goto*/ 0x31)
|
|
if_chr_unloaded(CHR_COOP, /*goto*/ 0x31)
|
|
goto_next(0x02)
|
|
|
|
// Both players dead
|
|
label(0x31)
|
|
end_level
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
// Mission complete
|
|
label(0x02)
|
|
set_invincible(CHR_BOND)
|
|
set_ailist(CHR_SELF, 0x0425)
|
|
endlist
|
|
};
|
|
|
|
u8 func100d_laser_panel[] = {
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
if_chr_activated_object(CHR_P1P2, OBJ_LASER_PANEL, /*goto*/ 0x04)
|
|
if_object_in_good_condition(OBJ_LASER_PANEL, /*goto*/ 0x02)
|
|
goto_next(0x05)
|
|
|
|
label(0x02)
|
|
reloop(0x00)
|
|
|
|
label(0x04)
|
|
assign_sound(0x043a, CHANNEL_7)
|
|
control_sound_from_object(CHANNEL_7, OBJ_LASER_PANEL, TRUE)
|
|
message(CHR_P1P2, L_CAVE(45)) // "Laser grid access denied."
|
|
endloop(0x00)
|
|
|
|
label(0x05)
|
|
set_stage_flag(STAGEFLAG_LASERS_OVERLOADED)
|
|
message(CHR_P1P2, L_CAVE(46)) // "Laser grid system has been overloaded."
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func100e_check_alaskans_killed[] = {
|
|
set_chr_chrflag(0x00, CHRCFLAG_KILLCOUNTABLE)
|
|
set_chr_chrflag(0x01, CHRCFLAG_KILLCOUNTABLE)
|
|
set_chr_chrflag(0x02, CHRCFLAG_KILLCOUNTABLE)
|
|
set_chr_chrflag(0x03, CHRCFLAG_KILLCOUNTABLE)
|
|
set_chr_chrflag(0x04, CHRCFLAG_KILLCOUNTABLE)
|
|
set_chr_chrflag(0x05, CHRCFLAG_KILLCOUNTABLE)
|
|
set_chr_chrflag(0x06, CHRCFLAG_KILLCOUNTABLE)
|
|
set_chr_chrflag(0x07, CHRCFLAG_KILLCOUNTABLE)
|
|
set_chr_chrflag(0x08, CHRCFLAG_KILLCOUNTABLE)
|
|
set_chr_chrflag(0x09, CHRCFLAG_KILLCOUNTABLE)
|
|
set_chr_chrflag(0x0a, CHRCFLAG_KILLCOUNTABLE)
|
|
set_chr_chrflag(0x0b, CHRCFLAG_KILLCOUNTABLE)
|
|
set_chr_chrflag(0x0c, CHRCFLAG_KILLCOUNTABLE)
|
|
set_chr_chrflag(0x0d, CHRCFLAG_KILLCOUNTABLE)
|
|
set_chr_chrflag(0x0e, CHRCFLAG_KILLCOUNTABLE)
|
|
set_chr_chrflag(0x0f, CHRCFLAG_KILLCOUNTABLE)
|
|
|
|
beginloop(0x00)
|
|
if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x02)
|
|
if_kill_count_gt(2, /*goto*/ 0x31)
|
|
endloop(0x00)
|
|
|
|
label(0x31)
|
|
message(CHR_BOND, L_CAVE(47)) // "Too many neutral casualties inflicted."
|
|
set_stage_flag(STAGEFLAG_TOO_MANY_NEUTRALS_KILLED)
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
/**
|
|
* @unused
|
|
*/
|
|
u8 func0410_unused[] = {
|
|
set_chr_dodge_rating(2, 0x0a)
|
|
set_accuracy(22)
|
|
set_reaction_speed(80)
|
|
set_chr_maxdamage(CHR_SELF, 40)
|
|
add_health_or_armor(0)
|
|
set_recovery_speed(0)
|
|
set_shield(0)
|
|
set_self_chrflag(CHRCFLAG_00000040)
|
|
set_chr_chrflag(CHR_SELF, CHRCFLAG_00040000)
|
|
set_ailist(CHR_SELF, AILIST_NSA)
|
|
endlist
|
|
};
|
|
|
|
u8 func040f_nsa[] = {
|
|
set_shotlist(AILIST_NSA)
|
|
if_chr_dying(CHR_SELF, /*goto*/ 0x02)
|
|
if_chr_death_animation_finished(CHR_SELF, /*goto*/ 0x02)
|
|
if_chr_unloaded(CHR_SELF, /*goto*/ 0x02)
|
|
goto_next(0x44)
|
|
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
label(0x44)
|
|
if_chr_distance_to_pad_lt(CHR_SELF, 70, PAD_PRESET, /*goto*/ 0x02)
|
|
|
|
// Return to pad
|
|
walk_to_pad(PAD_PRESET)
|
|
|
|
beginloop(0x06)
|
|
dprint 'G','O',' ','F','O','R',' ','P','A','D','\n',0,
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
set_target_chr(CHR_P1P2)
|
|
if_distance_to_target_lt(250, /*goto*/ 0x64)
|
|
if_self_flag_bankx_eq(CHRFLAG0_00000080, TRUE, BANK_0, /*goto*/ 0x33)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x006b, /*goto*/ 0x31)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x006c, /*goto*/ 0x31)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x006d, /*goto*/ 0x31)
|
|
goto_first(0x00)
|
|
|
|
label(0x33)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x003c, /*goto*/ 0x31)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x003d, /*goto*/ 0x31)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x003e, /*goto*/ 0x31)
|
|
if_chr_y(CHR_TARGET, -257, OPERATOR_LESS_THAN, /*goto*/ 0x6d) // gone down an escalator
|
|
goto_next(0x76)
|
|
|
|
label(0x6d)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x003f, /*goto*/ 0x31)
|
|
label(0x76)
|
|
goto_first(0x00)
|
|
|
|
label(0x31)
|
|
if_chr_sees_player(/*goto*/ 0x04)
|
|
if_chr_distance_to_pad_lt(CHR_SELF, 70, PAD_PRESET, /*goto*/ 0x02)
|
|
endloop(0x06)
|
|
|
|
// At pad
|
|
label(0x02)
|
|
stop_chr
|
|
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
dprint 'W','A','I','T',' ','F','O','R',' ','C','H','R','\n',0,
|
|
set_target_chr(CHR_P1P2)
|
|
if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x0b)
|
|
if_chr_sees_player(/*goto*/ 0x31)
|
|
endloop(0x00)
|
|
|
|
// Seen player
|
|
label(0x31)
|
|
dprint 'C','H','R','\n',0,
|
|
if_chr_y(CHR_TARGET, -330, OPERATOR_LESS_THAN, /*goto*/ 0x02)
|
|
goto_first(0x00)
|
|
|
|
// Seen player down escalator
|
|
label(0x02)
|
|
if_self_flag_bankx_eq(CHRFLAG0_00000080, TRUE, BANK_0, /*goto*/ 0x33)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x006b, /*goto*/ 0x04)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x006c, /*goto*/ 0x04)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x006d, /*goto*/ 0x04)
|
|
goto_first(0x00)
|
|
|
|
label(0x33)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x003c, /*goto*/ 0x04)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x003d, /*goto*/ 0x04)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x003e, /*goto*/ 0x04)
|
|
if_chr_y(CHR_TARGET, -257, OPERATOR_LESS_THAN, /*goto*/ 0x6d)
|
|
goto_next(0x76)
|
|
|
|
// Seen player down escalator but not in security hall
|
|
label(0x6d)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x003f, /*goto*/ 0x04) // escalator room
|
|
label(0x76)
|
|
goto_first(0x00)
|
|
|
|
// Seen player in security hall or escalator room
|
|
label(0x04)
|
|
restart_timer
|
|
restart_timer
|
|
try_face_entity(0x0200, 0x0000, /*goto*/ 0x09)
|
|
|
|
beginloop(0x09)
|
|
if_jo_ccw_direction_lt(10, /*goto*/ 0x02)
|
|
if_jo_ccw_direction_gt(245, /*goto*/ 0x02)
|
|
if_timer_gt(60, /*goto*/ 0x02)
|
|
endloop(0x09)
|
|
|
|
label(0x02)
|
|
chr_do_animation(ANIM_TALKING_0098, 0, 90, 0x00, 0x10, CHR_SELF, 2)
|
|
say_quip(CHR_BOND, 0x1c, 0xff, 0x02, 0xff, 0x81, 0x00, 0x00)
|
|
set_self_flag_bankx(CHRFLAG0_00002000, BANK_0)
|
|
|
|
beginloop(0x0a)
|
|
if_chr_stopped(/*goto*/ 0x02)
|
|
endloop(0x0a)
|
|
|
|
label(0x02)
|
|
set_returnlist(CHR_SELF, GAILIST_ALERTED)
|
|
set_ailist(CHR_SELF, GAILIST_ALERTED)
|
|
|
|
// Unreachable
|
|
restart_timer
|
|
set_target_chr(CHR_P1P2)
|
|
try_walk_to_target(/*goto*/ 0x05)
|
|
|
|
// Also unreachable
|
|
label(0x31)
|
|
dprint 'R','U','N',' ','S','T','A','R','T','\n',0,
|
|
restart_timer
|
|
set_target_chr(CHR_BOND)
|
|
try_run_to_target(/*goto*/ 0x05)
|
|
|
|
beginloop(0x05)
|
|
set_returnlist(CHR_SELF, GAILIST_ALERTED)
|
|
set_ailist(CHR_SELF, GAILIST_ALERTED)
|
|
dprint 'G','O',' ','F','O','R',' ','C','H','R','\n',0,
|
|
if_chr_stopped(/*goto*/ 0x32)
|
|
if_timer_gt(30, /*goto*/ 0x32)
|
|
if_chr_y(CHR_TARGET, -330, OPERATOR_LESS_THAN, /*goto*/ 0x02)
|
|
goto_next(0x07)
|
|
|
|
label(0x02)
|
|
if_self_flag_bankx_eq(CHRFLAG0_00000080, TRUE, BANK_0, /*goto*/ 0x33)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x006b, /*goto*/ 0x31)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x006c, /*goto*/ 0x31)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x006d, /*goto*/ 0x31)
|
|
goto_next(0x07)
|
|
|
|
label(0x33)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x003c, /*goto*/ 0x31)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x003d, /*goto*/ 0x31)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x003e, /*goto*/ 0x31)
|
|
if_chr_in_room(CHR_TARGET, 0x00, 0x003f, /*goto*/ 0x31)
|
|
goto_next(0x07)
|
|
|
|
label(0x31)
|
|
if_distance_to_target_lt(250, /*goto*/ 0x02)
|
|
endloop(0x05)
|
|
|
|
label(0x32)
|
|
goto_first(0x04)
|
|
|
|
label(0x64)
|
|
label(0x02)
|
|
set_self_flag_bankx(CHRFLAG1_00000001, BANK_1)
|
|
set_self_flag_bankx(CHRFLAG0_00002000, BANK_0)
|
|
set_returnlist(CHR_SELF, AILIST_NSA)
|
|
set_ailist(CHR_SELF, GAILIST_HAND_COMBAT)
|
|
|
|
label(0x07)
|
|
chr_do_animation(ANIM_TALKING_0098, 0, 90, 0x00, 0x10, CHR_SELF, 2)
|
|
say_quip(CHR_BOND, 0x1d, 0xff, 0x02, 0xff, 0x81, 0x00, 0x00)
|
|
label(0x08)
|
|
yield
|
|
if_chr_stopped(/*goto*/ 0x02)
|
|
goto_first(0x08)
|
|
|
|
label(0x02)
|
|
goto_first(0x44)
|
|
|
|
label(0x0b)
|
|
set_ailist(CHR_SELF, GAILIST_UNALERTED)
|
|
endlist
|
|
};
|
|
|
|
u8 func0412_init_takeover_lackey[] = {
|
|
set_shotlist(GAILIST_ALERTED)
|
|
set_self_chrflag(CHRCFLAG_00000040)
|
|
set_chr_dodge_rating(2, 0x0a)
|
|
set_accuracy(60)
|
|
set_reaction_speed(80)
|
|
set_chr_maxdamage(CHR_SELF, 40)
|
|
add_health_or_armor(0)
|
|
set_recovery_speed(0)
|
|
set_shield(0)
|
|
set_ailist(CHR_SELF, AILIST_TAKEOVER_LACKEY)
|
|
endlist
|
|
};
|
|
|
|
u8 func0411_takeover_lackey[] = {
|
|
set_shotlist(GAILIST_ALERTED)
|
|
if_chr_dying(CHR_SELF, /*goto*/ 0x02)
|
|
if_chr_death_animation_finished(CHR_SELF, /*goto*/ 0x02)
|
|
if_chr_unloaded(CHR_SELF, /*goto*/ 0x02)
|
|
goto_next(0x00)
|
|
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
set_target_chr(CHR_P1P2)
|
|
if_chr_dying(0x0c, /*goto*/ 0x7b)
|
|
if_chr_death_animation_finished(0x0c, /*goto*/ 0x7b)
|
|
if_chr_unloaded(0x0c, /*goto*/ 0x7b)
|
|
if_target_in_sight(/*goto*/ 0x31)
|
|
goto_next(0x02)
|
|
|
|
label(0x31)
|
|
try_face_entity(0x0200, 0x0000, /*goto*/ 0x02)
|
|
label(0x02)
|
|
if_self_flag_bankx_eq(CHRFLAG0_00002000, FALSE, BANK_0, /*goto*/ 0x31)
|
|
if_target_in_sight(/*goto*/ 0x02)
|
|
label(0x31)
|
|
endloop(0x00)
|
|
|
|
// Alaskan guard is dead
|
|
label(0x7b)
|
|
label(0x02)
|
|
set_chr_team(CHR_SELF, TEAM_04)
|
|
if_chr_dying(0x0c, /*goto*/ 0x02)
|
|
if_chr_death_animation_finished(0x0c, /*goto*/ 0x02)
|
|
if_chr_unloaded(0x0c, /*goto*/ 0x02)
|
|
set_target_chr(0x0c)
|
|
try_chr_kneel_and_shoot_thing(0x0220, 0x0000, /*goto*/ 0x31)
|
|
label(0x31)
|
|
try_aim_and_shoot_thing2(0x0200, 0x0000, /*goto*/ 0x04)
|
|
|
|
beginloop(0x04)
|
|
if_chr_stopped(/*goto*/ 0x02)
|
|
endloop(0x04)
|
|
|
|
label(0x02)
|
|
speak(CHR_TARGET, L_CAVE(65), 0x05bf, CHANNEL_6, COLOR_08_RED) // "We're taking over!!"
|
|
|
|
beginloop(0x09)
|
|
if_chr_stopped(/*goto*/ 0x02)
|
|
endloop(0x09)
|
|
|
|
label(0x02)
|
|
set_chr_hiddenflag(CHR_BOND, CHRHFLAG_DISGUISE_UNCOVERED)
|
|
set_chr_hiddenflag(CHR_COOP, CHRHFLAG_DISGUISE_UNCOVERED)
|
|
set_ailist(CHR_SELF, GAILIST_ALERTED)
|
|
endlist
|
|
};
|
|
|
|
u8 func0413_alaskan_console_guard[] = {
|
|
set_chr_maxdamage(CHR_SELF, 1)
|
|
set_ailist(CHR_SELF, GAILIST_UNALERTED)
|
|
endlist
|
|
};
|
|
|
|
u8 unregistered_function3[] = {
|
|
set_chr_maxdamage(CHR_SELF, 1)
|
|
set_ailist(CHR_SELF, AILIST_OFFICEWORKER)
|
|
endlist
|
|
};
|
|
|
|
u8 func0414_officeworker[] = {
|
|
set_morale(0)
|
|
if_chr_dying(CHR_SELF, /*goto*/ 0x02)
|
|
if_chr_death_animation_finished(CHR_SELF, /*goto*/ 0x02)
|
|
if_chr_unloaded(CHR_SELF, /*goto*/ 0x02)
|
|
goto_next(0x00)
|
|
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
label(0x44)
|
|
chr_do_animation(ANIM_SITTING_DORMANT, -1, 60, 0x14, 0x00, CHR_SELF, 2)
|
|
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
set_target_chr(CHR_P1P2)
|
|
if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x07)
|
|
if_chr_idle(/*goto*/ 0x02)
|
|
goto_next(0x08)
|
|
|
|
label(0x02)
|
|
if_target_in_sight(/*goto*/ 0x02)
|
|
label(0x33)
|
|
endloop(0x00)
|
|
|
|
label(0x02)
|
|
chr_do_animation(ANIM_SITTING_0265, 0, 120, 0x14, 0x10, CHR_SELF, 2)
|
|
say_quip(CHR_BOND, 0x20, 0xff, 0x0a, 0xff, BANK_1, 0x00, 0x00)
|
|
restart_timer
|
|
|
|
beginloop(0x09)
|
|
if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x07)
|
|
if_chr_idle(/*goto*/ 0x02)
|
|
goto_next(0x08)
|
|
|
|
label(0x02)
|
|
if_timer_gt(180, /*goto*/ 0x02)
|
|
endloop(0x09)
|
|
|
|
label(0x02)
|
|
goto_first(0x00)
|
|
|
|
label(0x08)
|
|
goto_first(0x44)
|
|
|
|
// After takeover
|
|
label(0x07)
|
|
if_difficulty_lt(DIFF_PA, /*goto*/ 0x6d)
|
|
set_chr_hiddenflag(0x3a, CHRHFLAG_00100000)
|
|
chr_move_to_pad(0x3a, 0x00d7, 0x00, /*goto*/ 0x31)
|
|
|
|
label(0x31)
|
|
chr_do_animation(ANIM_SITTING_DORMANT, -1, 60, 0x14, 0x00, CHR_SELF, 2)
|
|
|
|
label(0x77)
|
|
chr_do_animation(ANIM_COWER_0229, -1, 60, 0x14, 0x0a, CHR_SELF, 2)
|
|
|
|
beginloop(0x04)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
set_target_chr(CHR_P1P2)
|
|
if_target_in_sight(/*goto*/ 0x02)
|
|
if_chr_idle(/*goto*/ 0x31)
|
|
goto_first(0x77)
|
|
|
|
label(0x31)
|
|
endloop(0x04)
|
|
|
|
label(0x02)
|
|
restart_timer
|
|
try_face_entity(0x0200, 0x0000, /*goto*/ 0x78)
|
|
|
|
beginloop(0x78)
|
|
if_jo_ccw_direction_lt(10, /*goto*/ 0x02)
|
|
if_timer_gt(40, /*goto*/ 0x02)
|
|
endloop(0x78)
|
|
|
|
label(0x02)
|
|
do_preset_animation(7)
|
|
speak(CHR_TARGET, L_CAVE(54), 0x1b38, CHANNEL_4, COLOR_08_RED) // "Stop them - they're breaking into the safe..."
|
|
|
|
beginloop(0x05)
|
|
if_sound_finished(CHANNEL_4, /*goto*/ 0x79)
|
|
endloop(0x05)
|
|
|
|
label(0x79)
|
|
chr_do_animation(0x0229, -1, 60, 0x14, 0x0a, CHR_SELF, 2)
|
|
|
|
beginloop(0x06)
|
|
if_chr_idle(/*goto*/ 0x02)
|
|
goto_first(0x79)
|
|
|
|
label(0x02)
|
|
endloop(0x06)
|
|
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
beginloop(0x6d)
|
|
damage_chr(CHR_SELF, 18)
|
|
if_chr_dying(CHR_SELF, /*goto*/ 0x31)
|
|
endloop(0x6d)
|
|
|
|
label(0x31)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func0415_alaskan_mountainlift_guard[] = {
|
|
set_chr_maxdamage(CHR_SELF, 1)
|
|
set_ailist(CHR_SELF, GAILIST_UNALERTED)
|
|
endlist
|
|
};
|
|
|
|
u8 func1010_setup_baggage_carrier[] = {
|
|
set_object_flag(OBJ_BAGGAGE_CARRIER, OBJFLAG_DEACTIVATED)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
#define laser_overloaded_logic(laser1, laser2, time) \
|
|
beginloop(0x00) \
|
|
if_stage_flag_eq(STAGEFLAG_LASERS_OVERLOADED, TRUE, /*goto*/ 0x04) \
|
|
endloop(0x00) \
|
|
\
|
|
label(0x04) \
|
|
restart_timer \
|
|
open_door(laser1) \
|
|
open_door(laser2) \
|
|
\
|
|
beginloop(0x05) \
|
|
if_timer_gt(time, /*goto*/ 0x02) \
|
|
endloop(0x05) \
|
|
\
|
|
label(0x02) \
|
|
close_door(laser1) \
|
|
close_door(laser2) \
|
|
\
|
|
beginloop(0x05) \
|
|
if_timer_gt(time, /*goto*/ 0x02) \
|
|
endloop(0x05) \
|
|
\
|
|
label(0x02) \
|
|
goto_first(0x04) \
|
|
\
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
|
|
|
|
u8 func1011_lasers1[] = {
|
|
laser_overloaded_logic(0x07, 0x0c, 120)
|
|
endlist
|
|
};
|
|
|
|
u8 func1012_lasers2[] = {
|
|
laser_overloaded_logic(0x0e, 0x10, 180)
|
|
endlist
|
|
};
|
|
|
|
u8 func1013_lasers3[] = {
|
|
laser_overloaded_logic(0x0b, 0x12, 90)
|
|
endlist
|
|
};
|
|
|
|
u8 func1014_lasers4[] = {
|
|
beginloop(0x00)
|
|
if_stage_flag_eq(STAGEFLAG_LASERS_OVERLOADED, TRUE, /*goto*/ 0x04)
|
|
endloop(0x00)
|
|
|
|
label(0x04)
|
|
restart_timer
|
|
open_door(0x11)
|
|
|
|
beginloop(0x05)
|
|
if_timer_gt(180, /*goto*/ 0x02)
|
|
endloop(0x05)
|
|
|
|
label(0x02)
|
|
close_door(0x11)
|
|
|
|
beginloop(0x05)
|
|
if_timer_gt(180, /*goto*/ 0x02)
|
|
endloop(0x05)
|
|
|
|
label(0x02)
|
|
goto_first(0x04)
|
|
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
/**
|
|
* This is the first laser, which gets disabled permanently.
|
|
*/
|
|
u8 func1017_laser5[] = {
|
|
beginloop(0x00)
|
|
if_stage_flag_eq(STAGEFLAG_LASERS_OVERLOADED, TRUE, /*goto*/ 0x04)
|
|
endloop(0x00)
|
|
|
|
label(0x04)
|
|
restart_timer
|
|
hide_object(0x13)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
// Unreachable
|
|
open_door(0x13)
|
|
|
|
beginloop(0x05)
|
|
if_door_state(0x13, (DOORSTATE_CLOSED | DOORSTATE_CLOSING), /*goto*/ 0x31)
|
|
endloop(0x05)
|
|
|
|
label(0x31)
|
|
goto_first(0x04)
|
|
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func0403_unused[] = {
|
|
set_chr_dodge_rating(2, 0x0a)
|
|
set_accuracy(12)
|
|
set_reaction_speed(45)
|
|
set_chr_maxdamage(CHR_SELF, 60)
|
|
add_health_or_armor(40)
|
|
set_recovery_speed(30)
|
|
set_shield(0)
|
|
set_chr_chrflag(CHR_SELF, CHRCFLAG_HIDDEN)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func1015_unhide_laser_guards[] = {
|
|
// These are all invalid chrs. They must have been removed.
|
|
// They would have appeared when the lasers were overloaded.
|
|
hide_chr(0x3e)
|
|
hide_chr(0x3f)
|
|
hide_chr(0x40)
|
|
hide_chr(0x41)
|
|
set_chr_chrflag(0x3e, CHRCFLAG_HIDDEN)
|
|
set_chr_chrflag(0x3f, CHRCFLAG_HIDDEN)
|
|
set_chr_chrflag(0x40, CHRCFLAG_HIDDEN)
|
|
set_chr_chrflag(0x41, CHRCFLAG_HIDDEN)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
// Unreachable
|
|
beginloop(0x00)
|
|
if_stage_flag_eq(STAGEFLAG_LASERS_OVERLOADED, TRUE, /*goto*/ 0x02)
|
|
endloop(0x00)
|
|
|
|
label(0x02)
|
|
unset_chr_chrflag(0x3e, CHRCFLAG_HIDDEN)
|
|
unset_chr_chrflag(0x3f, CHRCFLAG_HIDDEN)
|
|
unset_chr_chrflag(0x40, CHRCFLAG_HIDDEN)
|
|
unset_chr_chrflag(0x41, CHRCFLAG_HIDDEN)
|
|
show_chr(0x3e)
|
|
set_ailist(0x3e, 0x0404)
|
|
show_chr(0x3f)
|
|
set_ailist(0x3f, GAILIST_ALERTED)
|
|
show_chr(0x40)
|
|
set_ailist(0x40, GAILIST_ALERTED)
|
|
show_chr(0x41)
|
|
set_ailist(0x41, GAILIST_ALERTED)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
/**
|
|
* After overloading the lasers, some guards would have been unhidden who will
|
|
* chase you down. This function would have been assigned to one of them.
|
|
*
|
|
* @unused
|
|
*/
|
|
u8 func0404_laser_guard[] = {
|
|
set_shotlist(GAILIST_UNALERTED)
|
|
run_to_pad(0x0002)
|
|
label(0x04)
|
|
yield
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, GAILIST_UNALERTED)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func1016_console_noises[] = {
|
|
yield
|
|
assign_sound(0x8141, CHANNEL_0)
|
|
play_sound_from_object(CHANNEL_0, 0x04, 0x0258, 0x0320)
|
|
yield
|
|
assign_sound(0x8143, CHANNEL_2)
|
|
play_sound_from_object(CHANNEL_2, 0x05, 0x01f4, 0x03e8)
|
|
yield
|
|
play_sound_from_pad(0x0114, 0x81a7)
|
|
yield
|
|
play_sound_from_pad(0x0115, 0x81a7)
|
|
yield
|
|
play_sound_from_pad(0x01ac, 0x811b)
|
|
|
|
label(0x42)
|
|
restart_timer
|
|
|
|
beginloop(0x00)
|
|
if_object_in_good_condition(OBJ_CONSOLE, /*goto*/ 0x31)
|
|
goto_next(0x09)
|
|
|
|
label(0x31)
|
|
if_timer_gt(180, /*goto*/ 0x31)
|
|
endloop(0x00)
|
|
|
|
label(0x31)
|
|
yield
|
|
if_object_in_good_condition(0x01, /*goto*/ 0x31)
|
|
goto_next(0x09)
|
|
|
|
label(0x31)
|
|
if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x09)
|
|
call_rng
|
|
if_rand_lt(100, /*goto*/ 0x76)
|
|
if_rand_lt(150, /*goto*/ 0x77)
|
|
if_rand_lt(200, /*goto*/ 0x78)
|
|
goto_first(0x42)
|
|
|
|
// Rand 1
|
|
label(0x76)
|
|
if_object_in_good_condition(OBJ_CONSOLE, /*goto*/ 0x31)
|
|
goto_next(0x09)
|
|
|
|
label(0x31)
|
|
mute_channel(CHANNEL_1)
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
assign_sound(0x8112, CHANNEL_1)
|
|
play_sound_from_object(CHANNEL_1, OBJ_CONSOLE, 0x0258, 0x0320)
|
|
goto_first(0x42)
|
|
|
|
// Rand 2
|
|
label(0x77)
|
|
if_object_in_good_condition(OBJ_CONSOLE, /*goto*/ 0x31)
|
|
goto_next(0x09)
|
|
|
|
label(0x31)
|
|
mute_channel(CHANNEL_1)
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
assign_sound(0x813f, CHANNEL_1)
|
|
play_sound_from_object(CHANNEL_1, OBJ_CONSOLE, 0x0258, 0x0320)
|
|
goto_first(0x42)
|
|
|
|
// Rand 3
|
|
label(0x78)
|
|
if_object_in_good_condition(OBJ_CONSOLE, /*goto*/ 0x31)
|
|
goto_next(0x09)
|
|
|
|
label(0x31)
|
|
mute_channel(CHANNEL_1)
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
assign_sound(0x8140, CHANNEL_1)
|
|
play_sound_from_object(CHANNEL_1, OBJ_CONSOLE, 0x0258, 0x0320)
|
|
goto_first(0x42)
|
|
|
|
label(0x09)
|
|
mute_channel(CHANNEL_1)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func0426_init_alaskan_guard[] = {
|
|
set_chr_dodge_rating(2, 0x0a)
|
|
set_accuracy(12)
|
|
set_reaction_speed(70)
|
|
set_chr_maxdamage(CHR_SELF, 40)
|
|
add_health_or_armor(0)
|
|
set_recovery_speed(0)
|
|
set_shield(0)
|
|
set_ailist(CHR_SELF, GAILIST_UNALERTED)
|
|
endlist
|
|
};
|
|
|
|
/**
|
|
* Assigned to stripes guards and NSA lackeys during takeover.
|
|
*/
|
|
u8 func0427_init_posttakeover_guard[] = {
|
|
set_self_chrflag(CHRCFLAG_00040000)
|
|
set_self_chrflag(CHRCFLAG_HIDDEN)
|
|
set_chr_team(CHR_SELF, TEAM_04)
|
|
set_chr_dodge_rating(2, 0x0a)
|
|
set_accuracy(12)
|
|
set_reaction_speed(45)
|
|
set_chr_maxdamage(CHR_SELF, 60)
|
|
add_health_or_armor(40)
|
|
set_recovery_speed(30)
|
|
set_shield(0)
|
|
rebuild_teams
|
|
rebuild_squadrons
|
|
set_ailist(CHR_SELF, AILIST_POSTTAKEOVER_GUARD)
|
|
endlist
|
|
};
|
|
|
|
/**
|
|
* Wait until not in sight by any human player,
|
|
* then assign AILIST_BECOME_UNALERTED.
|
|
*/
|
|
u8 func0428_posttakeover_guard[] = {
|
|
beginloop(0x00)
|
|
set_target_chr(CHR_BOND)
|
|
if_within_units_of_sight(30, /*goto*/ 0x31)
|
|
if_chr_death_animation_finished(CHR_COOP, /*goto*/ 0x02)
|
|
set_target_chr(CHR_COOP)
|
|
if_within_units_of_sight(30, /*goto*/ 0x31)
|
|
|
|
label(0x02)
|
|
if_chr_death_animation_finished(CHR_ANTI, /*goto*/ 0x02)
|
|
set_target_chr(CHR_ANTI)
|
|
if_within_units_of_sight(30, /*goto*/ 0x31)
|
|
|
|
label(0x02)
|
|
unset_self_chrflag(CHRCFLAG_HIDDEN)
|
|
unset_self_chrflag(CHRCFLAG_00040000)
|
|
set_ailist(CHR_SELF, AILIST_BECOME_UNALERTED)
|
|
|
|
label(0x31)
|
|
restart_timer
|
|
|
|
beginloop(0x6d)
|
|
if_timer_gt(300, /*goto*/ 0x02)
|
|
endloop(0x6d)
|
|
|
|
label(0x02)
|
|
endloop(0x00)
|
|
|
|
endlist
|
|
};
|
|
|
|
/**
|
|
* @unused
|
|
*/
|
|
u8 func0429_unused[] = {
|
|
set_chr_dodge_rating(2, 0x0a)
|
|
set_accuracy(22)
|
|
set_reaction_speed(80)
|
|
set_chr_maxdamage(CHR_SELF, 40)
|
|
add_health_or_armor(0)
|
|
set_recovery_speed(0)
|
|
set_shield(0)
|
|
set_ailist(CHR_SELF, GAILIST_UNALERTED)
|
|
endlist
|
|
};
|
|
|
|
/**
|
|
* Assigned to two stripes guards in the foyer during takeover.
|
|
*/
|
|
u8 func042a_foyer_spawner[] = {
|
|
set_chr_dodge_rating(2, 0x0a)
|
|
set_accuracy(12)
|
|
set_reaction_speed(45)
|
|
set_chr_maxdamage(CHR_SELF, 60)
|
|
add_health_or_armor(40)
|
|
set_recovery_speed(30)
|
|
set_shield(0)
|
|
set_self_chrflag(CHRCFLAG_00000002)
|
|
set_self_chrflag(CHRCFLAG_HIDDEN)
|
|
set_self_chrflag(CHRCFLAG_00040000)
|
|
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
set_target_chr(CHR_P1P2)
|
|
if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x02)
|
|
if_chr_y(CHR_TARGET, -4800, OPERATOR_LESS_THAN, /*goto*/ 0x09)
|
|
reloop(0x00)
|
|
|
|
// Security shut down
|
|
label(0x02)
|
|
set_chr_team(CHR_SELF, TEAM_04)
|
|
rebuild_teams
|
|
rebuild_squadrons
|
|
dprint 'O','B','J','E','C','T','I','V','E',' ','D','O','N','E','\n',0,
|
|
if_never_been_onscreen(/*goto*/ 0x6a)
|
|
if_chr_sees_player(/*goto*/ 0x04)
|
|
reloop(0x00)
|
|
|
|
label(0x04)
|
|
set_ailist(CHR_SELF, AILIST_FOYER_CLONE)
|
|
|
|
label(0x6a)
|
|
unset_self_chrflag(CHRCFLAG_HIDDEN)
|
|
if_chr_death_animation_finished(CHR_CLONE, /*goto*/ 0x6a)
|
|
reloop(0x00)
|
|
|
|
label(0x6a)
|
|
try_spawn_clone2(CHR_SELF, AILIST_INIT_FOYER_CLONE, 0x00000000, /*goto*/ 0x31)
|
|
label(0x31)
|
|
yield
|
|
endloop(0x00)
|
|
|
|
// Player has gone to bottom without disabling security
|
|
label(0x09)
|
|
set_ailist(CHR_SELF, GAILIST_SEARCH_FOR_PLAYER)
|
|
endlist
|
|
};
|
|
|
|
u8 func042b_init_foyer_clone[] = {
|
|
set_self_flag_bankx(CHRFLAG1_00080000, BANK_1)
|
|
label(0x00)
|
|
rebuild_teams
|
|
rebuild_squadrons
|
|
try_inherit_properties(0x42, /*goto*/ 0x02)
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, AILIST_FOYER_CLONE)
|
|
endlist
|
|
};
|
|
|
|
u8 func042c_foyer_clone[] = {
|
|
set_ailist(CHR_SELF, GAILIST_ALERTED)
|
|
endlist
|
|
};
|
|
|
|
#define hoverbot_do_paths(path1, path2, path3) \
|
|
/* Path 1 */ \
|
|
label(0x44) \
|
|
begin_hovercar_path(path1) \
|
|
label(0x31) \
|
|
set_vehicle_speed(512, 120) \
|
|
\
|
|
beginloop(0x04) \
|
|
if_hoverbot_next_step(OPERATOR_GREATER_THAN, 3, /*goto*/ 0x02) \
|
|
endloop(0x04) \
|
|
\
|
|
/* Path 2 */ \
|
|
label(0x02) \
|
|
begin_hovercar_path(path2) \
|
|
label(0x31) \
|
|
set_vehicle_speed(512, 120) \
|
|
\
|
|
beginloop(0x05) \
|
|
if_hoverbot_next_step(OPERATOR_GREATER_THAN, 3, /*goto*/ 0x02) \
|
|
endloop(0x05) \
|
|
\
|
|
/* Path 3 */ \
|
|
label(0x02) \
|
|
begin_hovercar_path(path3) \
|
|
label(0x31) \
|
|
set_vehicle_speed(512, 120) \
|
|
\
|
|
beginloop(0x06) \
|
|
if_hoverbot_next_step(OPERATOR_GREATER_THAN, 3, /*goto*/ 0x02) \
|
|
endloop(0x06) \
|
|
\
|
|
label(0x02) \
|
|
goto_first(0x44) \
|
|
\
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
|
|
|
|
u8 func042d_hoverbot1[] = {
|
|
hoverbot_do_paths(0, 1, 2)
|
|
endlist
|
|
};
|
|
|
|
u8 func042e_hoverbot2[] = {
|
|
hoverbot_do_paths(1, 2, 0)
|
|
endlist
|
|
};
|
|
|
|
u8 func042f_hoverbot3[] = {
|
|
hoverbot_do_paths(2, 0, 1)
|
|
endlist
|
|
};
|
|
|
|
u8 func0430_hoverbot4[] = {
|
|
hoverbot_do_paths(3, 4, 5)
|
|
endlist
|
|
};
|
|
|
|
u8 func0431_hoverbot5[] = {
|
|
hoverbot_do_paths(4, 5, 3)
|
|
endlist
|
|
};
|
|
|
|
u8 func0432_hoverbot6[] = {
|
|
hoverbot_do_paths(5, 3, 4)
|
|
endlist
|
|
};
|
|
|
|
/**
|
|
* This looks to be copied from Chicago? But is assigned to an chr called
|
|
* steward.
|
|
*/
|
|
u8 func0419_ba8c[] = {
|
|
set_alertness(255)
|
|
set_returnlist(CHR_SELF, 0x0419)
|
|
set_shotlist(0x0419)
|
|
if_chr_dying(CHR_SELF, /*goto*/ 0x02)
|
|
if_chr_death_animation_finished(CHR_SELF, /*goto*/ 0x02)
|
|
if_chr_unloaded(CHR_SELF, /*goto*/ 0x02)
|
|
goto_next(0x31)
|
|
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
label(0x31)
|
|
if_chr_idle(/*goto*/ 0x6b)
|
|
if_num_times_shot_lt(1, /*goto*/ 0x00)
|
|
|
|
beginloop(0x0c)
|
|
if_chr_stopped(/*goto*/ 0x02)
|
|
endloop(0x0c)
|
|
|
|
label(0x02)
|
|
goto_next(0x0b)
|
|
|
|
// Unreachable
|
|
restart_timer
|
|
|
|
beginloop(0x6b)
|
|
if_saw_death(0x00, /*goto*/ 0x4f)
|
|
if_saw_injury(0x00, /*goto*/ 0x0f)
|
|
dprint 'D','U','R','I','N','G','T','A','L','K','\n',0,
|
|
if_timer_gt(180, /*goto*/ 0x02)
|
|
endloop(0x6b)
|
|
|
|
label(0x02)
|
|
if_self_flag_bankx_eq(CHRFLAG0_00004000, TRUE, BANK_0, /*goto*/ 0x33)
|
|
dprint 'N','O','T',' ','A',' ','P','A','T','R','O','L','L','E','R','\n',0,
|
|
stop_chr
|
|
goto_next(0x00)
|
|
|
|
label(0x33)
|
|
dprint 'P','A','T',' ','R','E','T','\n',0,
|
|
start_path
|
|
label(0x00)
|
|
yield
|
|
if_self_flag_bankx_eq(CHRFLAG0_00004000, TRUE, BANK_0, /*goto*/ 0x6c)
|
|
call_rng
|
|
if_rand_gt(128, /*goto*/ 0x6c)
|
|
label(0x6d)
|
|
restart_timer
|
|
label(0x07)
|
|
stop_chr
|
|
if_self_flag_bankx_eq(CHRFLAG1_DONE_SEARCH_ANIM, TRUE, BANK_1, /*goto*/ 0x31)
|
|
call_rng
|
|
if_rand_gt(128, /*goto*/ 0x31)
|
|
call_rng
|
|
if_rand_lt(64, /*goto*/ 0x6e)
|
|
if_rand_lt(128, /*goto*/ 0x6f)
|
|
if_rand_lt(196, /*goto*/ 0x70)
|
|
set_self_flag_bankx(CHRFLAG1_DONE_SEARCH_ANIM, BANK_1)
|
|
chr_do_animation(ANIM_SMOKE_CIGARETTE, 0, -1, 0x10, 0x0a, CHR_SELF, 2)
|
|
goto_next(0x72)
|
|
|
|
label(0x6e)
|
|
chr_do_animation(ANIM_SCRATCH_HEAD, 0, -1, 0x10, 0x0a, CHR_SELF, 2)
|
|
goto_next(0x72)
|
|
|
|
label(0x6f)
|
|
chr_do_animation(ANIM_YAWN, 0, -1, 0x10, 0x0a, CHR_SELF, 2)
|
|
goto_next(0x72)
|
|
|
|
label(0x70)
|
|
chr_do_animation(ANIM_GRAB_CROTCH, 0, -1, 0x10, 0x0a, CHR_SELF, 2)
|
|
goto_next(0x72)
|
|
|
|
label(0x71)
|
|
chr_do_animation(ANIM_TWO_GUN_HOLD, 0, 100, 0x10, 0x0a, CHR_SELF, 2)
|
|
goto_next(0x72)
|
|
|
|
label(0x31)
|
|
unset_self_flag_bankx(CHRFLAG1_DONE_SEARCH_ANIM, BANK_1)
|
|
if_chr_distance_to_pad_lt(CHR_SELF, 100, PAD_PRESET, /*goto*/ 0x02)
|
|
goto_next(0x31)
|
|
|
|
label(0x02)
|
|
call_rng
|
|
if_rand_lt(64, /*goto*/ 0x6e)
|
|
if_rand_lt(128, /*goto*/ 0x6f)
|
|
if_rand_lt(196, /*goto*/ 0x70)
|
|
try_set_target_pad_to_something(0x08, /*goto*/ 0x31)
|
|
label(0x6e)
|
|
try_set_target_pad_to_something(0x02, /*goto*/ 0x31)
|
|
label(0x6f)
|
|
try_set_target_pad_to_something(0x04, /*goto*/ 0x31)
|
|
label(0x70)
|
|
try_set_target_pad_to_something(0x08, /*goto*/ 0x31)
|
|
goto_next(0x72)
|
|
label(0x31)
|
|
go_to_target_pad(SPEED_WALK)
|
|
restart_timer
|
|
label(0x72)
|
|
yield
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
set_target_chr(CHR_P1P2)
|
|
if_saw_death(0x00, /*goto*/ 0x4f)
|
|
if_saw_injury(0x00, /*goto*/ 0x0f)
|
|
if_target_in_sight(/*goto*/ 0x02)
|
|
if_chr_stopped(/*goto*/ 0x73)
|
|
if_chr_idle(/*goto*/ 0x31)
|
|
if_timer_gt(180, /*goto*/ 0x73)
|
|
label(0x31)
|
|
goto_first(0x72)
|
|
|
|
label(0x73)
|
|
goto_first(0x00)
|
|
|
|
label(0x6c)
|
|
if_saw_death(0x00, /*goto*/ 0x4f)
|
|
if_saw_injury(0x00, /*goto*/ 0x0f)
|
|
if_target_in_sight(/*goto*/ 0x02)
|
|
goto_first(0x00)
|
|
|
|
label(0x02)
|
|
restart_timer
|
|
label(0x04)
|
|
yield
|
|
if_saw_death(0x00, /*goto*/ 0x4f)
|
|
if_saw_injury(0x00, /*goto*/ 0x0f)
|
|
if_chr_weapon_equipped(CHR_TARGET, WEAPON_UNARMED, /*goto*/ 0x31)
|
|
goto_next(0x02)
|
|
label(0x31)
|
|
if_self_flag_bankx_eq(CHRFLAG0_00002000, TRUE, BANK_0, /*goto*/ 0x31)
|
|
if_distance_to_target_gt(450, /*goto*/ 0x31)
|
|
set_self_flag_bankx(CHRFLAG0_00002000, BANK_0)
|
|
set_returnlist(CHR_SELF, 0x0419)
|
|
set_ailist(CHR_SELF, GAILIST_CIVILIAN_SAY_COMMENT)
|
|
label(0x31)
|
|
if_timer_lt(600, /*goto*/ 0x31)
|
|
unset_self_flag_bankx(CHRFLAG0_00002000, BANK_0)
|
|
label(0x31)
|
|
dprint 'L','I','M','O',' ','R','E','A','D','Y',' ','T','O',' ','G','O','\n',0,
|
|
goto_first(0x00)
|
|
|
|
label(0x0f)
|
|
restart_timer
|
|
try_face_entity(0x0200, 0x0000, /*goto*/ 0x08)
|
|
label(0x08)
|
|
yield
|
|
if_jo_ccw_direction_lt(10, /*goto*/ 0x02)
|
|
if_timer_gt(40, /*goto*/ 0x02)
|
|
goto_first(0x08)
|
|
|
|
label(0x4f)
|
|
restart_timer
|
|
chr_do_animation(0x025f, 0, 193, 0x10, 0x10, CHR_SELF, 2)
|
|
label(0x0f)
|
|
yield
|
|
if_timer_gt(90, /*goto*/ 0x0b)
|
|
goto_first(0x0f)
|
|
|
|
label(0x02)
|
|
say_quip(CHR_BOND, 0x24, 0xff, 0x00, 0xff, 0x81, 0x00, 0x00)
|
|
chr_do_animation(0x002e, 0, 193, 0x10, 0x10, CHR_SELF, 2)
|
|
label(0x09)
|
|
yield
|
|
if_timer_gt(120, /*goto*/ 0x0b)
|
|
goto_first(0x09)
|
|
|
|
label(0x0b)
|
|
try_set_chrpreset_to_unalerted_teammate(0, /*goto*/ 0x02)
|
|
goto_next(0x0e)
|
|
label(0x31)
|
|
goto_first(0x04)
|
|
|
|
label(0x02)
|
|
try_run_to_chr(CHR_PRESET, /*goto*/ 0x05)
|
|
label(0x05)
|
|
yield
|
|
if_detected_chr(CHR_PRESET, /*goto*/ 0x02)
|
|
goto_first(0x05)
|
|
|
|
label(0x02)
|
|
increase_squadron_alertness(100)
|
|
say_quip(CHR_BOND, 0x25, 0xff, 0x00, 0xff, 0x81, 0x00, 0x00)
|
|
label(0x0e)
|
|
chr_do_animation(0x0229, -1, -1, 0x10, 0x14, CHR_SELF, 2)
|
|
label(0x0a)
|
|
yield
|
|
if_chr_stopped(/*goto*/ 0x31)
|
|
goto_first(0x0a)
|
|
|
|
label(0x31)
|
|
goto_first(0x0e)
|
|
|
|
endlist
|
|
};
|
|
|
|
u8 func041a_draw_magnum[] = {
|
|
set_chr_team(CHR_SELF, TEAM_04)
|
|
try_equip_weapon(MODEL_CHRDY357, WEAPON_DY357MAGNUM, 0x10000000, /*goto*/ 0x00)
|
|
label(0x00)
|
|
unset_self_flag_bankx(CHRFLAG1_00000001, BANK_1)
|
|
set_self_flag_bankx(CHRFLAG0_AIVSAI, BANK_0)
|
|
set_self_flag_bankx(CHRFLAG1_WARNED, BANK_1)
|
|
rebuild_teams
|
|
rebuild_squadrons
|
|
set_ailist(CHR_SELF, GAILIST_UNALERTED)
|
|
endlist
|
|
};
|
|
|
|
u8 func141b_setup_lifts[] = {
|
|
activate_lift(1, 0x20)
|
|
activate_lift(2, 0x21)
|
|
activate_lift(9, 0x36)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func1018_safe_switch[] = {
|
|
set_object_flag2(OBJ_FLIGHTPLANS, OBJFLAG2_INVISIBLE)
|
|
set_object_flag(OBJ_SAFE_SWITCH_COVER, OBJFLAG_DEACTIVATED)
|
|
|
|
// Wait for player to activate switch
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
if_chr_activated_object(CHR_P1P2, OBJ_SAFE_SWITCH, /*goto*/ 0x31)
|
|
endloop(0x00)
|
|
|
|
// Raise switch cover
|
|
label(0x31)
|
|
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(OBJ_SAFE_SWITCH_COVER, OBJFLAG_DEACTIVATED)
|
|
|
|
// Wait for player to press button again
|
|
beginloop(0x06)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
if_chr_activated_object(CHR_P1P2, OBJ_SAFE_SWITCH, /*goto*/ 0x31)
|
|
endloop(0x06)
|
|
|
|
// Open safe
|
|
label(0x31)
|
|
play_sound(0x00ba, -1)
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
yield
|
|
open_door(OBJ_SAFEDOOR)
|
|
yield
|
|
set_object_flag(OBJ_SAFEDOOR, OBJFLAG_40000000)
|
|
|
|
unset_object_flag2(OBJ_FLIGHTPLANS, OBJFLAG2_INVISIBLE)
|
|
unset_object_flag(OBJ_FLIGHTPLANS, OBJFLAG_UNCOLLECTABLE)
|
|
set_object_flag(OBJ_FLIGHTPLANS, OBJFLAG_COLLECTABLE)
|
|
set_object_flag2(OBJ_FLIGHTPLANS, OBJFLAG2_00001000)
|
|
|
|
// 0x32 = a shield
|
|
set_object_flag2(0x34, OBJFLAG2_00001000)
|
|
unset_object_flag(0x34, OBJFLAG_UNCOLLECTABLE)
|
|
|
|
// 0x32 = invalid object
|
|
unset_object_flag2(0x32, OBJFLAG2_INVISIBLE)
|
|
unset_object_flag(0x32, OBJFLAG_UNCOLLECTABLE)
|
|
|
|
label(0x31)
|
|
|
|
beginloop(0x08)
|
|
if_door_state(OBJ_SAFEDOOR, DOORSTATE_CLOSING, /*goto*/ 0x31)
|
|
reloop(0x08)
|
|
|
|
label(0x31)
|
|
open_door(OBJ_SAFEDOOR)
|
|
endloop(0x08)
|
|
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func1018_safe_switch_cover[] = {
|
|
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(OBJ_SAFE_SWITCH_COVER, OBJFLAG_DEACTIVATED)
|
|
yield
|
|
yield
|
|
|
|
beginloop(0x04)
|
|
if_lift_stationary(OBJ_SAFE_SWITCH_COVER, /*goto*/ 0x31)
|
|
endloop(0x04)
|
|
|
|
label(0x31)
|
|
set_object_flag(OBJ_SAFE_SWITCH_COVER, OBJFLAG_CANNOT_ACTIVATE)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func101a_check_disguise_used[] = {
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
if_chr_has_hiddenflag(CHR_P1P2, CHRHFLAG_DISGUISED, /*goto*/ 0x31)
|
|
endloop(0x00)
|
|
|
|
label(0x31)
|
|
message(CHR_P1P2, L_CAVE(49)) // "Disguise worn."
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func1003_intro[] = {
|
|
label(0x31)
|
|
set_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
|
set_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
|
set_music_track(MUSIC_AIRBASE_INTRO)
|
|
camera_movement(0x01e5)
|
|
cmd0175(60)
|
|
set_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE)
|
|
set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000)
|
|
chr_do_animation(0x01e6, -1, -1, 0x06, 0x00, CHR_BOND, 4)
|
|
set_chr_hudpiece_visible(CHR_BOND, TRUE)
|
|
set_chr_chrflag(CHR_TRENT, CHRCFLAG_UNPLAYABLE)
|
|
unset_chr_chrflag(CHR_TRENT, CHRCFLAG_HIDDEN)
|
|
set_chr_hiddenflag(CHR_TRENT, CHRHFLAG_00020000)
|
|
chr_do_animation(0x01e7, -1, -1, 0x06, 0x00, CHR_TRENT, 4)
|
|
set_chr_chrflag(0x48, CHRCFLAG_UNPLAYABLE)
|
|
unset_chr_chrflag(0x48, CHRCFLAG_HIDDEN)
|
|
set_chr_hiddenflag(0x48, CHRHFLAG_00020000)
|
|
chr_do_animation(0x01e8, -1, -1, 0x06, 0x00, 0x48, 4)
|
|
set_chr_chrflag(0x49, CHRCFLAG_UNPLAYABLE)
|
|
unset_chr_chrflag(0x49, CHRCFLAG_HIDDEN)
|
|
set_chr_hiddenflag(0x49, CHRHFLAG_00020000)
|
|
chr_do_animation(0x01e9, -1, -1, 0x06, 0x00, 0x49, 4)
|
|
set_chr_chrflag(0x4a, CHRCFLAG_UNPLAYABLE)
|
|
unset_chr_chrflag(0x4a, CHRCFLAG_HIDDEN)
|
|
set_chr_hiddenflag(0x4a, CHRHFLAG_00020000)
|
|
chr_do_animation(0x01ea, -1, -1, 0x06, 0x00, 0x4a, 4)
|
|
set_chr_chrflag(0x4b, CHRCFLAG_UNPLAYABLE)
|
|
unset_chr_chrflag(0x4b, CHRCFLAG_HIDDEN)
|
|
set_chr_hiddenflag(0x4b, CHRHFLAG_00020000)
|
|
chr_do_animation(0x01eb, -1, -1, 0x06, 0x00, 0x4b, 4)
|
|
set_chr_chrflag(0x4c, CHRCFLAG_UNPLAYABLE)
|
|
unset_chr_chrflag(0x4c, CHRCFLAG_HIDDEN)
|
|
set_chr_hiddenflag(0x4c, CHRHFLAG_00020000)
|
|
chr_do_animation(0x01ec, -1, -1, 0x06, 0x00, 0x4c, 4)
|
|
show_object(0x22)
|
|
set_object_flag2(0x22, OBJFLAG2_04000000)
|
|
set_object_flag3(0x22, OBJFLAG3_00000010)
|
|
object_do_animation(0x01ed, 0x22, 0x04, 0xffff)
|
|
show_object(0x2f)
|
|
set_object_flag2(0x2f, OBJFLAG2_04000000)
|
|
set_object_flag3(0x2f, OBJFLAG3_00000010)
|
|
object_do_animation(0x01ee, 0x2f, 0x04, 0xffff)
|
|
restart_timer
|
|
fade_to_color(0x000000ff, 0x0000)
|
|
fade_to_color(0x00000000, 0x006e)
|
|
set_cutscene_weapon(CHR_BOND, WEAPON_NONE, WEAPON_NONE)
|
|
yield
|
|
set_cutscene_weapon(CHR_BOND, WEAPON_NONE, WEAPON_NONE)
|
|
|
|
wait_until(30, 0x6d)
|
|
speak(CHR_BOND, L_CAVE(55), 0x7447, CHANNEL_7, COLOR_09_BLUE) // "Agent Dark in prop. I can see the main entranc..."
|
|
|
|
wait_until(312, 0x89)
|
|
play_sound(0x0594, CHANNEL_10)
|
|
|
|
wait_until(346, 0x8a)
|
|
play_sound(0x0595, CHANNEL_10)
|
|
|
|
wait_until(580, 0x76)
|
|
speak(CHR_BOND, L_CAVE(56), 0x7448, CHANNEL_10, COLOR_06_WHITE) // "Excellent, Joanna. That cable car is your way in....."
|
|
|
|
wait_until(968, 0x8b)
|
|
play_sound(0x0596, CHANNEL_10)
|
|
|
|
wait_until(1315, 0x77)
|
|
speak(CHR_BOND, L_CAVE(57), 0x77db, CHANNEL_10, COLOR_09_BLUE) // "That they're probably innocent of any involvement ..."
|
|
|
|
wait_until(1411, 0x8e)
|
|
play_sound(0x04af, CHANNEL_0)
|
|
|
|
wait_until(1735, 0x85)
|
|
mute_channel(CHANNEL_0)
|
|
play_sound(0x04ea, CHANNEL_10)
|
|
|
|
wait_until(1800, 0x86)
|
|
play_sound(0x04eb, CHANNEL_10)
|
|
|
|
wait_until(1890, 0x87)
|
|
play_sound(0x04ec, CHANNEL_10)
|
|
|
|
wait_until(1900, 0x78)
|
|
speak(CHR_BOND, L_CAVE(58), 0x7449, CHANNEL_5, COLOR_06_WHITE) // "I don't know how far the conspiracy has spread thr..."
|
|
|
|
wait_until(1970, 0x8c)
|
|
play_sound(0x0171, CHANNEL_10)
|
|
|
|
wait_until(1980, 0x88)
|
|
|
|
wait_until(2013, 0x8d)
|
|
play_sound(0x0172, CHANNEL_10)
|
|
|
|
wait_until(2048, 0x8f)
|
|
play_sound(0x0596, CHANNEL_10)
|
|
|
|
wait_until(2076, 0x92)
|
|
play_sound(0x0161, CHANNEL_10)
|
|
|
|
wait_until(2088, 0x93)
|
|
play_sound(0x0162, CHANNEL_10)
|
|
|
|
wait_until(2116, 0x94)
|
|
play_sound(0x0163, CHANNEL_10)
|
|
|
|
wait_until(2140, 0x95)
|
|
play_sound(0x0164, CHANNEL_10)
|
|
|
|
wait_until(2154, 0x96)
|
|
play_sound(0x0165, CHANNEL_10)
|
|
|
|
wait_until(2184, 0x97)
|
|
play_sound(0x0166, CHANNEL_10)
|
|
|
|
wait_until(2202, 0x98)
|
|
play_sound(0x0167, CHANNEL_10)
|
|
|
|
wait_until(2246, 0x99)
|
|
play_sound(0x0168, CHANNEL_10)
|
|
|
|
wait_until(2296, 0x9a)
|
|
play_sound(0x0161, CHANNEL_10)
|
|
|
|
wait_until(2332, 0x9b)
|
|
play_sound(0x0162, CHANNEL_10)
|
|
|
|
wait_until(2376, 0x9c)
|
|
play_sound(0x0165, CHANNEL_10)
|
|
|
|
wait_until(2418, 0x9d)
|
|
play_sound(0x0163, CHANNEL_10)
|
|
|
|
wait_until(2446, 0x9e)
|
|
play_sound(0x0164, CHANNEL_10)
|
|
|
|
wait_until(2486, 0x9f)
|
|
play_sound(0x0168, CHANNEL_10)
|
|
|
|
wait_until(2526, 0xa0)
|
|
play_sound(0x0166, CHANNEL_10)
|
|
|
|
wait_until(2558, 0xa1)
|
|
play_sound(0x0167, CHANNEL_10)
|
|
|
|
wait_until(2674, 0xa2)
|
|
play_sound(0x0168, CHANNEL_10)
|
|
|
|
wait_until(2700, 0x79)
|
|
speak(CHR_BOND, L_CAVE(59), 0x744a, CHANNEL_7, COLOR_09_BLUE) // "Yes, and protect him from his abductors. Do you ha..."
|
|
|
|
wait_until(2704, 0xa3)
|
|
play_sound(0x0161, CHANNEL_10)
|
|
|
|
wait_until(2720, 0xa4)
|
|
play_sound(0x0163, CHANNEL_10)
|
|
|
|
wait_until(2770, 0xa5)
|
|
play_sound(0x0164, CHANNEL_10)
|
|
|
|
wait_until(2796, 0xa6)
|
|
play_sound(0x0167, CHANNEL_10)
|
|
|
|
wait_until(2812, 0xa7)
|
|
play_sound(0x0168, CHANNEL_10)
|
|
|
|
wait_until(2830, 0xa8)
|
|
play_sound(0x0162, CHANNEL_10)
|
|
|
|
wait_until(2846, 0xa9)
|
|
play_sound(0x0164, CHANNEL_10)
|
|
|
|
wait_until(2856, 0xaa)
|
|
play_sound(0x0165, CHANNEL_10)
|
|
|
|
wait_until(2890, 0xab)
|
|
play_sound(0x0166, CHANNEL_10)
|
|
|
|
wait_until(2946, 0xac)
|
|
play_sound(0x0163, CHANNEL_10)
|
|
|
|
wait_until(2976, 0xad)
|
|
play_sound(0x0164, CHANNEL_10)
|
|
|
|
wait_until(3008, 0xae)
|
|
play_sound(0x0167, CHANNEL_10)
|
|
|
|
wait_until(3116, 0xaf)
|
|
play_sound(0x0164, CHANNEL_10)
|
|
|
|
wait_until(3154, 0xb0)
|
|
play_sound(0x0165, CHANNEL_10)
|
|
|
|
wait_until(3188, 0xb1)
|
|
play_sound(0x0163, CHANNEL_10)
|
|
|
|
wait_until(3230, 0xb2)
|
|
play_sound(0x0164, CHANNEL_10)
|
|
|
|
wait_until(3250, 0x7a)
|
|
speak(CHR_BOND, L_CAVE(60), 0x744b, CHANNEL_5, COLOR_06_WHITE) // "Only vague suspicions, and I won't distract you wi..."
|
|
|
|
wait_until(3387, 0xb3)
|
|
play_sound(0x0166, CHANNEL_10)
|
|
|
|
wait_until(3427, 0xb4)
|
|
play_sound(0x0167, CHANNEL_10)
|
|
|
|
wait_until(3448, 0xb5)
|
|
play_sound(0x0168, CHANNEL_10)
|
|
|
|
wait_until(3656, 0xb6)
|
|
play_sound(0x0163, CHANNEL_10)
|
|
|
|
wait_until(3723, 0x90)
|
|
|
|
wait_until(3796, 0x91)
|
|
play_sound(0x04fc, CHANNEL_10)
|
|
|
|
beginloop(0x04)
|
|
if_camera_animating(/*goto*/ 0x31)
|
|
goto_next(0x48)
|
|
|
|
label(0x31)
|
|
if_controller_button_pressed(/*goto*/ 0x48)
|
|
label(0x31)
|
|
endloop(0x04)
|
|
|
|
label(0x48)
|
|
mute_channel(CHANNEL_7)
|
|
mute_channel(CHANNEL_6)
|
|
mute_channel(CHANNEL_5)
|
|
mute_channel(CHANNEL_4)
|
|
mute_channel(CHANNEL_0)
|
|
mute_channel(CHANNEL_10)
|
|
hide_object(0x22)
|
|
hide_object(0x2f)
|
|
label(0x02)
|
|
unset_chr_chrflag(CHR_COOP, CHRCFLAG_HIDDEN)
|
|
unset_chr_chrflag(CHR_ANTI, CHRCFLAG_HIDDEN)
|
|
unset_chr_chrflag(CHR_TRENT, CHRCFLAG_UNPLAYABLE)
|
|
unset_chr_chrflag(0x48, CHRCFLAG_UNPLAYABLE)
|
|
unset_chr_chrflag(0x49, CHRCFLAG_UNPLAYABLE)
|
|
unset_chr_chrflag(0x4a, CHRCFLAG_UNPLAYABLE)
|
|
unset_chr_chrflag(0x4b, CHRCFLAG_UNPLAYABLE)
|
|
unset_chr_chrflag(0x4c, CHRCFLAG_UNPLAYABLE)
|
|
remove_chr(CHR_TRENT)
|
|
remove_chr(0x48)
|
|
remove_chr(0x4a)
|
|
remove_chr(0x4b)
|
|
remove_chr(0x4c)
|
|
set_chr_chrflag(0x49, CHRCFLAG_INVINCIBLE_TO_GUNFIRE)
|
|
set_chr_chrflag(0x49, CHRCFLAG_HIDDEN)
|
|
set_chr_hiddenflag(0x49, CHRHFLAG_00020000)
|
|
chr_do_animation(0x01e9, -2, -1, 0x06, 0x00, 0x49, 2)
|
|
unset_chr_chrflag(CHR_BOND, CHRCFLAG_UNPLAYABLE)
|
|
set_chr_hiddenflag(CHR_BOND, CHRHFLAG_00020000)
|
|
chr_do_animation(0x01e6, -2, -1, 0x06, 0x00, CHR_BOND, 2)
|
|
set_chr_hudpiece_visible(CHR_BOND, FALSE)
|
|
unset_object_flag2(0x22, OBJFLAG2_04000000)
|
|
set_object_flag3(0x22, OBJFLAG3_00000010)
|
|
object_do_animation(0x01ed, 0x22, 0x01, 0xfffe)
|
|
set_ailist(0x00, 0x0405)
|
|
set_ailist(0x01, 0x0405)
|
|
set_ailist(CHR_STEWARDESS, AILIST_STEWARDESS)
|
|
restart_default_music
|
|
reset_ambience
|
|
enter_firstperson
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func101c_msg_nowsyourchance[] = {
|
|
beginloop(0x00)
|
|
if_stage_flag_eq(STAGEFLAG_TRIGGER_MSG_NOWSYOURCHANCE, TRUE, /*goto*/ 0x31)
|
|
endloop(0x00)
|
|
|
|
label(0x31)
|
|
speak(CHR_BOND, L_CAVE(50), 0x8182, CHANNEL_6, COLOR_09_BLUE) // "Now's your chance! Grab the stewardess's bag and g..."
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func101d_msg_usethatcase[] = {
|
|
if_difficulty_lt(DIFF_SA, /*goto*/ 0x09)
|
|
|
|
restart_timer
|
|
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
if_chr_has_object(CHR_P1P2, OBJ_BRIEFCASE1, /*goto*/ 0x31)
|
|
endloop(0x00)
|
|
|
|
label(0x31)
|
|
restart_timer
|
|
|
|
beginloop(0x04)
|
|
if_timer_gt(600, /*goto*/ 0x31)
|
|
reloop(0x04)
|
|
|
|
label(0x31)
|
|
if_sound_finished(CHANNEL_4, /*goto*/ 0x31)
|
|
endloop(0x04)
|
|
|
|
label(0x31)
|
|
speak(CHR_P1P2, L_CAVE(51), 0x8183, CHANNEL_4, COLOR_09_BLUE) // "Use that case to conceal your equipment."
|
|
|
|
label(0x09)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func101e_msg_casewillgetstopped[] = {
|
|
beginloop(0x00)
|
|
if_objective_complete(1, /*goto*/ 0x31)
|
|
endloop(0x00)
|
|
|
|
label(0x31)
|
|
restart_timer
|
|
|
|
beginloop(0x04)
|
|
if_timer_gt(120, /*goto*/ 0x31)
|
|
endloop(0x04)
|
|
|
|
label(0x31)
|
|
speak(CHR_BOND, L_CAVE(52), 0x8184, CHANNEL_6, COLOR_09_BLUE) // "The case will get stopped unless you do something."
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func101f_msg_smallerthanithought[] = {
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
if_chr_in_room(CHR_P1P2, 0x00, 0x0025, /*goto*/ 0x31)
|
|
if_chr_in_room(CHR_P1P2, 0x00, 0x001c, /*goto*/ 0x31)
|
|
endloop(0x00)
|
|
|
|
label(0x31)
|
|
speak(CHR_P1P2, L_CAVE(53), 0x73c7, CHANNEL_6, COLOR_09_BLUE) // "So that's Air Force One? ... Huh, smaller than I t..."
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func1022_check_office1_dead[] = {
|
|
beginloop(0x00)
|
|
if_chr_dying(CHR_OFFICE1, /*goto*/ 0x31)
|
|
if_chr_death_animation_finished(CHR_OFFICE1, /*goto*/ 0x31)
|
|
if_chr_unloaded(CHR_OFFICE1, /*goto*/ 0x31)
|
|
endloop(0x00)
|
|
|
|
label(0x31)
|
|
set_stage_flag(STAGEFLAG_OFFICE1_DEAD)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func1023_check_office2_dead[] = {
|
|
beginloop(0x00)
|
|
if_chr_dying(CHR_OFFICE2, /*goto*/ 0x31)
|
|
if_chr_death_animation_finished(CHR_OFFICE2, /*goto*/ 0x31)
|
|
if_chr_unloaded(CHR_OFFICE2, /*goto*/ 0x31)
|
|
endloop(0x00)
|
|
|
|
label(0x31)
|
|
set_stage_flag(STAGEFLAG_OFFICE2_DEAD)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func1024_double_dy357[] = {
|
|
set_object_flag(0x30, OBJFLAG_UNCOLLECTABLE)
|
|
set_object_flag2(0x30, OBJFLAG2_INVISIBLE)
|
|
set_object_flag(0x31, OBJFLAG_UNCOLLECTABLE)
|
|
set_object_flag2(0x31, OBJFLAG2_INVISIBLE)
|
|
|
|
beginloop(0x00)
|
|
if_chr_unloaded(0x10, /*goto*/ 0x31)
|
|
reloop(0x00)
|
|
|
|
label(0x31)
|
|
if_chr_unloaded(0x11, /*goto*/ 0x31)
|
|
endloop(0x00)
|
|
|
|
label(0x31)
|
|
unset_object_flag(0x30, OBJFLAG_UNCOLLECTABLE)
|
|
unset_object_flag2(0x30, OBJFLAG2_INVISIBLE)
|
|
unset_object_flag(0x31, OBJFLAG_UNCOLLECTABLE)
|
|
unset_object_flag2(0x31, OBJFLAG2_INVISIBLE)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
/**
|
|
* @unused
|
|
*/
|
|
u8 func0416_watch_flag[] = {
|
|
beginloop(0x00)
|
|
if_chr_has_hiddenflag(CHR_SELF, CHRHFLAG_40000000, /*goto*/ 0x31)
|
|
dprint 'F','L','A','G',' ','N','O','T',' ','S','E','T','\n',0,
|
|
reloop(0x00)
|
|
|
|
label(0x31)
|
|
dprint 'F','L','A','G',' ','S','E','T','\n',0,
|
|
endloop(0x00)
|
|
|
|
endlist
|
|
};
|
|
|
|
u8 func101a_check_disguise_used2[] = {
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
if_chr_has_object(CHR_P1P2, OBJ_UNIFORM, /*goto*/ 0x02)
|
|
endloop(0x00)
|
|
|
|
label(0x02)
|
|
dprint 'D','I','S','G','U','I','S','E','D',' ','U','P','\n',0,
|
|
|
|
beginloop(0x04)
|
|
if_chr_has_hiddenflag(CHR_P1P2, CHRHFLAG_DISGUISED, /*goto*/ 0x31)
|
|
endloop(0x04)
|
|
|
|
label(0x31)
|
|
if_stage_flag_eq(STAGEFLAG_DISGUISE_UNCOVERED, TRUE, /*goto*/ 0x02)
|
|
if_stage_flag_eq(STAGEFLAG_RECEPTIONIST_CALLED_SECURITY, TRUE, /*goto*/ 0x02)
|
|
set_stage_flag(STAGEFLAG_DISGUISED)
|
|
set_stage_flag(STAGEFLAG_DISGUISED2)
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
label(0x00)
|
|
endlist
|
|
};
|
|
|
|
u8 func1026_check_alarm_destroyed[] = {
|
|
beginloop(0x00)
|
|
if_object_in_good_condition(OBJ_ALARM, /*goto*/ 0x31)
|
|
activate_alarm
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
label(0x31)
|
|
endloop(0x00)
|
|
|
|
endlist
|
|
};
|
|
|
|
u8 func0417_remove_or_unalert[] = {
|
|
set_self_chrflag(CHRCFLAG_00040000)
|
|
|
|
label(0x00)
|
|
yield
|
|
set_target_chr(CHR_BOND)
|
|
if_within_units_of_sight(30, /*goto*/ 0x02)
|
|
if_chr_death_animation_finished(CHR_COOP, /*goto*/ 0x31)
|
|
set_target_chr(CHR_COOP)
|
|
if_within_units_of_sight(30, /*goto*/ 0x02)
|
|
label(0x31)
|
|
if_chr_death_animation_finished(CHR_ANTI, /*goto*/ 0x04)
|
|
set_target_chr(CHR_ANTI)
|
|
if_within_units_of_sight(30, /*goto*/ 0x02)
|
|
label(0x04)
|
|
yield
|
|
chr_drop_weapon(CHR_SELF)
|
|
remove_chr(CHR_SELF)
|
|
label(0x31)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
label(0x02)
|
|
set_ailist(CHR_SELF, GAILIST_UNALERTED)
|
|
endlist
|
|
};
|
|
|
|
u8 func0418_remove_or_cower[] = {
|
|
set_self_chrflag(CHRCFLAG_00040000)
|
|
label(0x00)
|
|
yield
|
|
set_target_chr(CHR_BOND)
|
|
if_within_units_of_sight(30, /*goto*/ 0x02)
|
|
if_chr_death_animation_finished(CHR_COOP, /*goto*/ 0x31)
|
|
set_target_chr(CHR_COOP)
|
|
if_within_units_of_sight(30, /*goto*/ 0x02)
|
|
label(0x31)
|
|
if_chr_death_animation_finished(CHR_ANTI, /*goto*/ 0x04)
|
|
set_target_chr(CHR_ANTI)
|
|
if_within_units_of_sight(30, /*goto*/ 0x02)
|
|
label(0x04)
|
|
yield
|
|
remove_chr(CHR_SELF)
|
|
label(0x31)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
label(0x02)
|
|
label(0x62)
|
|
chr_do_animation(ANIM_COWER_0229, -1, -1, 0x14, 0x0a, CHR_SELF, 2)
|
|
|
|
beginloop(0x63)
|
|
if_chr_stopped(/*goto*/ 0x31)
|
|
endloop(0x63)
|
|
|
|
label(0x31)
|
|
goto_first(0x62)
|
|
|
|
endlist
|
|
};
|
|
|
|
u8 func102a_setup_snow[] = {
|
|
enable_snow(TRUE)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func1027_remotemine[] = {
|
|
beginloop(0x00)
|
|
if_object_in_good_condition(OBJ_REMOTEMINE, /*goto*/ 0x31)
|
|
goto_next(0x02)
|
|
|
|
label(0x31)
|
|
reloop(0x00)
|
|
|
|
label(0x02)
|
|
destroy_object(OBJ_REMOTEMINE)
|
|
yield
|
|
destroy_object(0x46)
|
|
yield
|
|
destroy_object(0x47)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
label(0x31)
|
|
endloop(0x00)
|
|
|
|
endlist
|
|
};
|
|
|
|
u8 func141b_setup_lifts_and_doors[] = {
|
|
if_difficulty_lt(DIFF_SA, /*goto*/ 0x31)
|
|
|
|
// SA and PA
|
|
unlock_door(0x35, 0x80)
|
|
goto_next(0x02)
|
|
|
|
// Agent
|
|
label(0x31)
|
|
hide_object(0x09)
|
|
label(0x02)
|
|
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(OBJ_DIAGONAL_LIFT, OBJFLAG_DEACTIVATED)
|
|
unset_object_flag(OBJ_VERTICAL_LIFT, OBJFLAG_DEACTIVATED)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func1029_lift_doors[] = {
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
if_chr_activated_object(CHR_P1P2, 0x37, /*goto*/ 0x31)
|
|
if_chr_activated_object(CHR_P1P2, 0x38, /*goto*/ 0x31)
|
|
if_chr_activated_object(CHR_P1P2, 0x39, /*goto*/ 0x31)
|
|
if_chr_activated_object(CHR_P1P2, 0x42, /*goto*/ 0x05)
|
|
if_chr_activated_object(CHR_P1P2, 0x43, /*goto*/ 0x05)
|
|
if_chr_activated_object(CHR_P1P2, 0x48, /*goto*/ 0x05)
|
|
if_chr_activated_object(CHR_P1P2, 0x49, /*goto*/ 0x05)
|
|
if_chr_activated_object(CHR_P1P2, 0x3b, /*goto*/ 0x05)
|
|
if_chr_activated_object(CHR_P1P2, 0x3c, /*goto*/ 0x05)
|
|
if_chr_activated_object(CHR_P1P2, 0x3d, /*goto*/ 0x05)
|
|
if_chr_activated_object(CHR_P1P2, 0x3e, /*goto*/ 0x05)
|
|
if_chr_activated_object(CHR_P1P2, 0x3f, /*goto*/ 0x05)
|
|
if_chr_activated_object(CHR_P1P2, 0x40, /*goto*/ 0x05)
|
|
if_chr_activated_object(CHR_P1P2, 0x41, /*goto*/ 0x05)
|
|
reloop(0x00)
|
|
|
|
label(0x31)
|
|
if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x05)
|
|
message(CHR_P1P2, L_CAVE(61)) // "Lift inoperative - security system is active."
|
|
restart_timer
|
|
|
|
beginloop(0x04)
|
|
if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x05)
|
|
if_timer_gt(120, /*goto*/ 0x31)
|
|
endloop(0x04)
|
|
|
|
label(0x31)
|
|
reloop(0x00)
|
|
|
|
label(0x05)
|
|
play_sound(0x81b0, -1)
|
|
restart_timer
|
|
|
|
beginloop(0x06)
|
|
if_timer_gt(120, /*goto*/ 0x02)
|
|
endloop(0x06)
|
|
|
|
label(0x02)
|
|
endloop(0x00)
|
|
|
|
endlist
|
|
};
|
|
|
|
u8 func102b_check_secretary_dead[] = {
|
|
beginloop(0x00)
|
|
if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x09)
|
|
if_chr_death_animation_finished(CHR_SECRETARY, /*goto*/ 0x31)
|
|
if_chr_dying(CHR_SECRETARY, /*goto*/ 0x31)
|
|
if_chr_unloaded(CHR_SECRETARY, /*goto*/ 0x31)
|
|
endloop(0x00)
|
|
|
|
label(0x31)
|
|
if_door_locked(0x18, 0x02, /*goto*/ 0x31)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
|
|
label(0x31)
|
|
message(CHR_BOND, L_CAVE(62)) // "Critical mission personnel disabled."
|
|
set_stage_flag(STAGEFLAG_SECRETARY_DEAD)
|
|
label(0x09)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func102c_lock_door_on_alarm[] = {
|
|
beginloop(0x00)
|
|
if_alarm_active(/*goto*/ 0x31)
|
|
endloop(0x00)
|
|
|
|
label(0x31)
|
|
lock_door(0x18, 0x04)
|
|
close_door(0x18)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func102d_check_console_destroyed[] = {
|
|
beginloop(0x00)
|
|
if_object_in_good_condition(OBJ_CONSOLE, /*goto*/ 0x31)
|
|
goto_next(0x02)
|
|
|
|
label(0x31)
|
|
endloop(0x00)
|
|
|
|
label(0x02)
|
|
mute_channel(CHANNEL_1)
|
|
if_stage_flag_eq(STAGEFLAG_SECURITY_SHUT_DOWN, TRUE, /*goto*/ 0x31)
|
|
set_stage_flag(STAGEFLAG_CONSOLE_DESTROYED)
|
|
message(CHR_BOND, L_CAVE(63)) // "Critical mission object destroyed."
|
|
label(0x31)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func102e_check_base_entered[] = {
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
if_chr_in_room(CHR_P1P2, 0x00, 0x002e, /*goto*/ 0x31)
|
|
endloop(0x00)
|
|
|
|
label(0x31)
|
|
message(CHR_BOND, L_CAVE(64)) // "Entrance to base secured."
|
|
set_stage_flag(STAGEFLAG_ENTERED_BASE)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func102f_undisguise_on_alarm[] = {
|
|
beginloop(0x00)
|
|
if_alarm_active(/*goto*/ 0x31)
|
|
endloop(0x00)
|
|
|
|
label(0x31)
|
|
set_chr_hiddenflag(CHR_BOND, CHRHFLAG_DISGUISE_UNCOVERED)
|
|
if_chr_death_animation_finished(CHR_COOP, /*goto*/ 0x31)
|
|
set_chr_hiddenflag(CHR_COOP, CHRHFLAG_DISGUISE_UNCOVERED)
|
|
label(0x31)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func1030_setup_rtracker[] = {
|
|
yield
|
|
set_object_flag3(0x30, OBJFLAG3_RTRACKED_BLUE)
|
|
set_object_flag3(0x31, OBJFLAG3_RTRACKED_BLUE)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func1031_setup_lighting[] = {
|
|
yield
|
|
misc_command(0x0000, 0x00, 0x00)
|
|
misc_command(0x0000, 0x01, 0x00)
|
|
misc_command(0x0000, 0x02, 0x00)
|
|
misc_command(0x0000, 0x03, 0x00)
|
|
misc_command(0x0000, 0x04, 0x00)
|
|
misc_command(0x007b, 0x05, 0x01)
|
|
misc_command(0x007b, 0x06, 0x01)
|
|
misc_command(0x007c, 0x05, 0x01)
|
|
misc_command(0x007c, 0x06, 0x01)
|
|
misc_command(0x007d, 0x05, 0x01)
|
|
misc_command(0x007d, 0x06, 0x01)
|
|
misc_command(0x007f, 0x05, 0x01)
|
|
misc_command(0x007f, 0x06, 0x01)
|
|
misc_command(0x0080, 0x06, 0x01)
|
|
misc_command(0x0081, 0x05, 0x01)
|
|
misc_command(0x0081, 0x06, 0x01)
|
|
misc_command(0x0082, 0x05, 0x01)
|
|
misc_command(0x0082, 0x06, 0x01)
|
|
misc_command(0x0083, 0x05, 0x01)
|
|
misc_command(0x0083, 0x06, 0x01)
|
|
misc_command(0x0084, 0x06, 0x01)
|
|
misc_command(0x0085, 0x06, 0x01)
|
|
misc_command(0x0086, 0x05, 0x01)
|
|
misc_command(0x0086, 0x06, 0x01)
|
|
misc_command(0x0087, 0x05, 0x01)
|
|
misc_command(0x0087, 0x06, 0x01)
|
|
misc_command(0x0088, 0x05, 0x01)
|
|
misc_command(0x0088, 0x06, 0x01)
|
|
misc_command(0x0089, 0x05, 0x01)
|
|
misc_command(0x008f, 0x05, 0x01)
|
|
misc_command(0x0090, 0x06, 0x01)
|
|
misc_command(0x0091, 0x06, 0x01)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func1032_unhide_guards_near_plane[] = {
|
|
// Wait until player is in a room near the plane. If you ride the vertical
|
|
// elevator all the way to the bottom, then come out and turn left, you'll
|
|
// walk through these rooms before reaching the stairs.
|
|
beginloop(0x00)
|
|
chr_toggle_p1p2(CHR_SELF)
|
|
if_chr_in_room(CHR_P1P2, 0x00, 0x0016, /*goto*/ 0x31)
|
|
if_chr_in_room(CHR_P1P2, 0x00, 0x0017, /*goto*/ 0x31)
|
|
endloop(0x00)
|
|
|
|
label(0x31)
|
|
show_chr(0x1b)
|
|
set_ailist(0x1b, 0x0422)
|
|
unset_chr_hiddenflag(0x1b, CHRHFLAG_40000000)
|
|
unset_chr_chrflag(0x1b, CHRCFLAG_HIDDEN)
|
|
yield
|
|
show_chr(0x19)
|
|
set_ailist(0x19, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
unset_chr_hiddenflag(0x19, CHRHFLAG_40000000)
|
|
unset_chr_chrflag(0x19, CHRCFLAG_HIDDEN)
|
|
yield
|
|
show_chr(0x1d)
|
|
set_ailist(0x1d, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
unset_chr_hiddenflag(0x1d, CHRHFLAG_40000000)
|
|
unset_chr_chrflag(0x1d, CHRCFLAG_HIDDEN)
|
|
yield
|
|
show_chr(0x1e)
|
|
set_ailist(0x1e, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
unset_chr_hiddenflag(0x1e, CHRHFLAG_40000000)
|
|
unset_chr_chrflag(0x1e, CHRCFLAG_HIDDEN)
|
|
yield
|
|
show_chr(0x20)
|
|
set_ailist(0x20, AILIST_INIT_POSTTAKEOVER_GUARD)
|
|
unset_chr_hiddenflag(0x20, CHRHFLAG_40000000)
|
|
unset_chr_chrflag(0x20, CHRCFLAG_HIDDEN)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
u8 func1420_setup_portals[] = {
|
|
yield
|
|
configure_room_portals(0x0080)
|
|
set_ailist(CHR_SELF, GAILIST_IDLE)
|
|
endlist
|
|
};
|
|
|
|
struct ailist ailists[] = {
|
|
{ func1000_rebuild_groups, 0x1000 },
|
|
{ func1401_setup_counterop, 0x1401 },
|
|
{ func1002_objectives_failed_msg, 0x1002 },
|
|
{ func1003_intro, 0x1003 },
|
|
{ func1004_guard_activation, 0x1004 },
|
|
{ func1005_check_civilians_killed, 0x1005 },
|
|
{ func1007_console_activation, 0x1007 },
|
|
{ func1009_carousel_activation, 0x1009 },
|
|
{ func100b_suitcase_scanning, 0x100b },
|
|
{ func100c_check_end_level, 0x100c },
|
|
{ func100d_laser_panel, 0x100d },
|
|
{ func100e_check_alaskans_killed, 0x100e },
|
|
{ func1010_setup_baggage_carrier, 0x1010 },
|
|
{ func1011_lasers1, 0x1011 },
|
|
{ func1012_lasers2, 0x1012 },
|
|
{ func1013_lasers3, 0x1013 },
|
|
{ func1014_lasers4, 0x1014 },
|
|
{ func1015_unhide_laser_guards, 0x1015 },
|
|
{ func1016_console_noises, 0x1016 },
|
|
{ func1017_laser5, 0x1017 },
|
|
{ func1018_safe_switch, 0x1018 },
|
|
{ func1018_safe_switch_cover, 0x1019 },
|
|
{ func101a_check_disguise_used, 0x101a },
|
|
{ func141b_setup_lifts, 0x141b },
|
|
{ func101c_msg_nowsyourchance, 0x101c },
|
|
{ func101d_msg_usethatcase, 0x101d },
|
|
{ func101e_msg_casewillgetstopped, 0x101e },
|
|
{ func101f_msg_smallerthanithought, 0x101f },
|
|
{ func1020_weapon_scanning_bond, 0x1020 },
|
|
{ func1021_weapon_scanning_coop, 0x1021 },
|
|
{ func1022_check_office1_dead, 0x1022 },
|
|
{ func1023_check_office2_dead, 0x1023 },
|
|
{ func1024_double_dy357, 0x1024 },
|
|
{ func101a_check_disguise_used2, 0x1025 },
|
|
{ func1026_check_alarm_destroyed, 0x1026 },
|
|
{ func1027_remotemine, 0x1027 },
|
|
{ func141b_setup_lifts_and_doors, 0x1028 },
|
|
{ func1029_lift_doors, 0x1029 },
|
|
{ func102a_setup_snow, 0x102a },
|
|
{ func102b_check_secretary_dead, 0x102b },
|
|
{ func102c_lock_door_on_alarm, 0x102c },
|
|
{ func102d_check_console_destroyed, 0x102d },
|
|
{ func102e_check_base_entered, 0x102e },
|
|
{ func102f_undisguise_on_alarm, 0x102f },
|
|
{ func1030_setup_rtracker, 0x1030 },
|
|
{ func1031_setup_lighting, 0x1031 },
|
|
{ func1032_unhide_guards_near_plane, 0x1032 },
|
|
{ func1420_setup_portals, 0x1420 },
|
|
{ func0404_laser_guard, 0x0404 },
|
|
{ func0403_unused, 0x0403 },
|
|
{ func0402_init_stripes, 0x0402 },
|
|
{ func0401_unused_cutscene, 0x0401 },
|
|
{ func0405_start_path15, 0x0405 },
|
|
{ func0406_become_unalerted, 0x0406 },
|
|
{ func041b_start_path06, 0x041b },
|
|
{ func041c_start_path07, 0x041c },
|
|
{ func041d_start_path08, 0x041d },
|
|
{ func041e_start_path09, 0x041e },
|
|
{ func041f_start_path10, 0x041f },
|
|
{ func0420_start_path11, 0x0420 },
|
|
{ func0421_start_path12, 0x0421 },
|
|
{ func0422_start_path13, 0x0422 },
|
|
{ func0423_start_path14, 0x0423 },
|
|
{ func0424_start_path15_unused, 0x0424 },
|
|
{ func0407_stewardess, 0x0407 },
|
|
{ func0408_secretary, 0x0408 },
|
|
{ func0409_office1, 0x0409 },
|
|
{ func040a_office2, 0x040a },
|
|
{ func040b_unused, 0x040b },
|
|
{ func040c_init_secretary, 0x040c },
|
|
{ func040d_init_office1, 0x040d },
|
|
{ func040e_init_office2, 0x040e },
|
|
{ func040f_nsa, 0x040f },
|
|
{ func0410_unused, 0x0410 },
|
|
{ func0411_takeover_lackey, 0x0411 },
|
|
{ func0412_init_takeover_lackey, 0x0412 },
|
|
{ func0413_alaskan_console_guard, 0x0413 },
|
|
{ func0414_officeworker, 0x0414 },
|
|
{ func0415_alaskan_mountainlift_guard, 0x0415 },
|
|
{ func0416_watch_flag, 0x0416 },
|
|
{ func0417_remove_or_unalert, 0x0417 },
|
|
{ func0418_remove_or_cower, 0x0418 },
|
|
{ func0419_ba8c, 0x0419 },
|
|
{ func041a_draw_magnum, 0x041a },
|
|
{ func0425_outro, 0x0425 },
|
|
{ func0426_init_alaskan_guard, 0x0426 },
|
|
{ func0427_init_posttakeover_guard, 0x0427 },
|
|
{ func0428_posttakeover_guard, 0x0428 },
|
|
{ func0429_unused, 0x0429 },
|
|
{ func042a_foyer_spawner, 0x042a },
|
|
{ func042b_init_foyer_clone, 0x042b },
|
|
{ func042c_foyer_clone, 0x042c },
|
|
{ func042d_hoverbot1, 0x042d },
|
|
{ func042e_hoverbot2, 0x042e },
|
|
{ func042f_hoverbot3, 0x042f },
|
|
{ func0430_hoverbot4, 0x0430 },
|
|
{ func0431_hoverbot5, 0x0431 },
|
|
{ func0432_hoverbot6, 0x0432 },
|
|
{ func1003_intro, 0x0c00 },
|
|
{ func0425_outro, 0x0c01 },
|
|
{ NULL, 0 },
|
|
};
|
|
|