# # Defense # .set HEADERLEN, 0x20 .include "asm/include/setup.inc" // Characters .set CHR_CARRINGTON, 0x00 .set CHR_HOSTAGE_DEVICE_F, 0x01 // device room - female .set CHR_HOSTAGE_FR1, 0x02 .set CHR_HOSTAGE_INFO_M, 0x03 // info room - male .set CHR_HOSTAGE_HOLO, 0x04 // holo .set CHR_HANGARGUY, 0x05 // wears hostage clothes but isn't a hostage .set CHR_HOSTAGE_DEVICE_M, 0x06 // device room - male .set CHR_HOSTAGE_FR2, 0x07 .set CHR_HOSTAGE_INFO_F, 0x08 // info room - female .set CHR_TAKER_FR1, 0x1f .set CHR_TAKER_FR2, 0x20 .set CHR_TAKER_HOLO1, 0x21 .set CHR_TAKER_HOLO2, 0x22 .set CHR_TAKER_HOLO3, 0x23 .set CHR_TAKER_DEVICE_M, 0x24 .set CHR_TAKER_DEVICE_F, 0x25 .set CHR_TAKER_INFO_F, 0x26 .set CHR_TAKER_INFO_M, 0x27 .set CHR_BLONDE1, 0x28 .set CHR_BLONDE2, 0x29 .set CHR_BLONDE3, 0x2a .set CHR_BLONDE4, 0x2b .set CHR_BLONDE5, 0x2c .set CHR_BLONDE6, 0x2d .set CHR_BLONDE7, 0x30 .set CHR_SKEDAR1, 0x31 .set CHR_SKEDAR2, 0x32 .set CHR_SKEDAR3, 0x33 .set CHR_SKEDAR4, 0x34 .set CHR_HOLOCLONE1, 0x35 .set CHR_HOLOCLONE2, 0x36 .set CHR_HOLOCLONE3, 0x37 .set CHR_JONATHAN, 0x38 // Objects .set OBJ_RCP120, 0x05 .set OBJ_AUTOGUN1, 0x06 .set OBJ_AUTOGUN2, 0x07 .set OBJ_AUTOGUN3, 0x08 .set OBJ_SAFEINFO, 0x09 .set OBJ_AUTOGUN_SWITCH1, 0x0a .set OBJ_AUTOGUN_SWITCH2, 0x0b .set OBJ_AUTOGUN_SWITCH3, 0x0c .set OBJ_SAFEDOOR, 0x39 .set OBJ_SKEDAR_SHUTTLE, 0x3c .set OBJ_RCP120_GLASS, 0x3d .set OBJ_FR_GLASS, 0x3e .set OBJ_DEVASTATOR, 0x45 .set OBJ_FR_PC, 0x4e .set OBJ_DATAUPLINK_JOANNA, 0x4f .set OBJ_DATAUPLINK_VELVET, 0x50 // Stage flags .set STAGEFLAG_00000001, 0x00000001 // never set .set STAGEFLAG_AUTOGUN1_ACTIVE, 0x00000100 .set STAGEFLAG_AUTOGUN2_ACTIVE, 0x00000200 .set STAGEFLAG_AUTOGUN3_ACTIVE, 0x00000400 .set STAGEFLAG_ENOUGH_HOSTAGES_SAVED, 0x00000800 .set STAGEFLAG_TOO_MANY_HOSTAGES_KILLED, 0x00001000 .set STAGEFLAG_SAFEINFO_DESTROYED, 0x00002000 .set STAGEFLAG_BOMB_AIRBORNE, 0x00004000 .set STAGEFLAG_CARRINGTON_DEAD, 0x00010000 .set STAGEFLAG_HOLO_TAKERS_DEAD, 0x00040000 .set STAGEFLAG_DEVICE_TAKERS_DEAD, 0x00080000 .set STAGEFLAG_INFO_TAKERS_DEAD, 0x00100000 .set STAGEFLAG_AUTOGUN_SWITCH_DESTROYED, 0x00200000 .set STAGEFLAG_BOMB_EXPLODING_ON_GROUND, 0x00800000 .set STAGEFLAG_TRIGGER_SHUTTLE_TAKEOFF, 0x01000000 .set STAGEFLAG_INTRO_FINISHED, 0x02000000 .set STAGEFLAG_VISITED_HOSTAGES_BEFORE_AUTOGUNS, 0x04000000 .set STAGEFLAG_TRIGGER_AUTODEFENSES_MSG, 0x08000000 .set STAGEFLAG_TRIGGER_COUNTINGONME_MSG, 0x10000000 .set STAGEFLAG_TRIGGER_SPAWNING, 0x20000000 .set STAGEFLAG_DROPPED_DEVASTATOR, 0x40000000 .set STAGEFLAG_FR_PC_DESTROYED, 0x80000000 // Functions .set FUNC_SPAWNER1, 0x0401 .set FUNC_CLONE1, 0x0402 .set FUNC_INIT_CLONE1, 0x0403 .set FUNC_SPAWNER2, 0x0404 .set FUNC_CLONE2, 0x0405 .set FUNC_INIT_CLONE2, 0x0406 .set FUNC_SPAWNER3, 0x0407 .set FUNC_CLONE3, 0x0408 .set FUNC_INIT_CLONE3, 0x0409 .set FUNC_SPAWNER4, 0x040a .set FUNC_CLONE4, 0x040b .set FUNC_INIT_CLONE4, 0x040c .set FUNC_SPAWNER5, 0x040d .set FUNC_CLONE5, 0x040e .set FUNC_INIT_CLONE5, 0x040f .set FUNC_SPAWNER6, 0x0410 .set FUNC_CLONE6, 0x0411 .set FUNC_INIT_CLONE6, 0x0412 .set FUNC_DEFEND_PAD, 0x0413 .set FUNC_FIRINGRANGE_HOSTAGE, 0x0414 .set FUNC_INIT_HOSTAGE_FR1, 0x0415 .set FUNC_INIT_HOSTAGE_FR2, 0x0416 .set FUNC_INIT_FIRINGRANGE_TAKER, 0x0419 .set FUNC_HOSTAGE_HOLO, 0x041a .set FUNC_INIT_HOSTAGE_HOLO, 0x041b .set FUNC_INIT_HOLOCLONE1, 0x041c .set FUNC_INIT_HOLOCLONE2, 0x041d .set FUNC_INIT_HOLOCLONE3, 0x041e .set FUNC_HOLOCLONE, 0x041f .set FUNC_TAKER_HOLO1, 0x0420 .set FUNC_TAKER_HOLO2, 0x0421 .set FUNC_TAKER_HOLO3, 0x0422 .set FUNC_INIT_SHOCK, 0x0423 .set FUNC_HOLOCLONE_ONSHOT, 0x0424 .set FUNC_HOSTAGE_THANK_AND_RUN, 0x0425 .set FUNC_INIT_SAVED_HOSTAGE, 0x0426 .set FUNC_DROP_DEVASTATOR, 0x0427 .set FUNC_INIT_DROP_DEVASTATOR, 0x0428 .set FUNC_SKEDAR4, 0x0429 .set FUNC_INIT_JONATHAN, 0x042a .set FUNC_DEVICEROOM_HOSTAGE, 0x042b .set FUNC_INIT_HOSTAGE_DEVICE_F, 0x042c .set FUNC_INIT_HOSTAGE_DEVICE_M, 0x042d .set FUNC_TAKER_DEVICE_M, 0x042e .set FUNC_INIT_TAKER_DEVICE_M, 0x042f .set FUNC_TAKER_DEVICE_F, 0x0430 .set FUNC_INIT_TAKER_DEVICE_F, 0x0431 .set FUNC_TAKER_ATTACK, 0x0432 .set FUNC_INFOROOM_HOSTAGE, 0x0433 .set FUNC_INIT_HOSTAGE_INFO_M, 0x0434 .set FUNC_INIT_HOSTAGE_INFO_F, 0x0435 .set FUNC_TAKER_INFO_M, 0x0436 .set FUNC_INIT_TAKER_INFO_M, 0x0437 .set FUNC_TAKER_INFO_F, 0x0438 .set FUNC_INIT_TAKER_INFO_F, 0x0439 .set FUNC_INIT_BLONDE, 0x043b .set FUNC_INIT_CISOLDIER, 0x043c .set FUNC_CARRINGTON, 0x043e props: briefing 0, 0x2201 briefing 1, 0x2200 briefing 2, 0x2202 briefing 3, 0x2203 beginobjective 0, 0x2205, DIFFBIT_SA | DIFFBIT_PA | DIFFBIT_PD // "Reactivate automatic defenses" complete_flags STAGEFLAG_AUTOGUN1_ACTIVE complete_flags STAGEFLAG_AUTOGUN2_ACTIVE complete_flags STAGEFLAG_AUTOGUN3_ACTIVE fail_flags STAGEFLAG_AUTOGUN_SWITCH_DESTROYED fail_flags STAGEFLAG_00000001 endobjective beginobjective 1, 0x2206, DIFFBIT_A | DIFFBIT_SA | DIFFBIT_PA | DIFFBIT_PD // "Release hostages" complete_flags STAGEFLAG_ENOUGH_HOSTAGES_SAVED fail_flags STAGEFLAG_TOO_MANY_HOSTAGES_KILLED endobjective beginobjective 2, 0x2207, DIFFBIT_A | DIFFBIT_SA | DIFFBIT_PA | DIFFBIT_PD // "Retrieve experimental weapon" require_object_collected OBJ_RCP120 fail_flags STAGEFLAG_FR_PC_DESTROYED endobjective beginobjective 3, 0x2208, DIFFBIT_PA | DIFFBIT_PD // "Destroy sensitive information" complete_flags STAGEFLAG_SAFEINFO_DESTROYED endobjective beginobjective 4, 0x2209, DIFFBIT_A | DIFFBIT_SA | DIFFBIT_PA | DIFFBIT_PD // "Deactivate bomb" complete_flags STAGEFLAG_BOMB_AIRBORNE fail_flags STAGEFLAG_BOMB_EXPLODING_ON_GROUND fail_flags STAGEFLAG_CARRINGTON_DEAD endobjective tag 0x23, 2 tag 0x24, 2 door 0x0100, MODEL_CIDOOR1_REF, 0x0156, 0x00000400, 0x20000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, 0x00040000, 0x00000004, 0x00000384, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000800, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_CIDOOR1_REF, 0x0157, 0x00000400, 0x20000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, 0x00040000, 0x00000004, 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 tag 0x43, 2 tag 0x44, 2 door 0x0100, MODEL_CIDOOR1_REF, 0x0158, 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, 0x00040000, 0x00000000, 0x00000384, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000800, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_CIDOOR1_REF, 0x0159, 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, 0x00040000, 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 door 0x0100, MODEL_CIDOOR1_REF, 0x015b, 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, 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_CIDOOR1_REF, 0x015c, 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, 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 0x54, 1 door 0x0100, MODEL_CIDOOR1_REF, 0x015a, 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, 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 0x19, 1 door 0x0100, MODEL_CIDOOR1_REF, 0x015d, 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, 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 0x51, 1 door 0x0100, MODEL_CH_SHUTTER1, 0x0166, 0x10000400, 0x20000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x00007fff, 0x00014000, 0x00000222, 0x00000004, 0x00000020, 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_CH_SHUTTER1, 0x0167, 0x10000400, 0x20000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x00007fff, 0x00014000, 0x00000222, 0x00000004, 0x00000020, 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 object 0x0100, MODEL_CI_SOFA, 0x0212, 0x000005e1, 0x00004100, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_CI_SOFA, 0x0213, 0x000005e1, 0x00004100, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_CI_SOFA, 0x0214, 0x000005e1, 0x00004100, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_CI_SOFA, 0x0215, 0x000005e1, 0x00004100, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_CI_SOFA, 0x0216, 0x000005e1, 0x00004100, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_CI_SOFA, 0x0217, 0x000005e1, 0x00004100, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_CI_SOFA, 0x0218, 0x000005e1, 0x00004100, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_CI_SOFA, 0x0219, 0x000005e1, 0x00004100, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 glass 0x0100, MODEL_WINDOW, 0x019f, 0x04000b62, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x019e, 0x04000b62, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x019d, 0x04000b62, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x019c, 0x04000b62, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01a0, 0x04000b62, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01a1, 0x04000b62, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01a2, 0x04000b62, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01a3, 0x04000b62, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01a4, 0x04000b62, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01a5, 0x04000b62, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01a6, 0x04000b62, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01a7, 0x04000b62, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01c4, 0x04020b62, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01c5, 0x04020b62, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01c6, 0x04020b62, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01c7, 0x04020b62, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01a8, 0x04020b62, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01a9, 0x04020b62, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01aa, 0x04020b62, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01ab, 0x04020b62, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01ac, 0x04020b62, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01ad, 0x04020b62, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01ae, 0x04020b62, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01af, 0x04020b62, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_WINDOW, 0x01d1, 0x04000362, 0x00104000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 tag 0x46, 6 tag 0x47, 6 tag 0x48, 6 tag 0x49, 6 tag 0x41, 1 lift 0x0100, MODEL_CI_LIFT, 0x0193, 0x035204e8, 0x00304300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0193, 0x0194, 0xffffffff, 0x00000001, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000071c, 0x0010aaaa, 0x16000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DD_LIFTDOOR, 0x015e, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000e666, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, 0x00080000, 0x00000000, 0x000001e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00001c00, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DD_LIFTDOOR, 0x015f, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000e666, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, 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_DD_LIFTDOOR, 0x0160, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000e666, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, 0x00080000, 0x00000000, 0x000001e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00001c00, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DD_LIFTDOOR, 0x0161, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000e666, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, 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 -4, -5, 0, 0 link_objects -4, -6, 0, 0 link_objects -4, -7, 0, 1 link_objects -4, -8, 0, 1 tag 0x4a, 6 tag 0x4b, 6 tag 0x4c, 6 tag 0x4d, 6 tag 0x42, 1 lift 0x0100, MODEL_CI_LIFT, 0x0195, 0x035204e8, 0x00304300, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0195, 0x0196, 0xffffffff, 0x00000001, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000071c, 0x0010aaaa, 0x16000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DD_LIFTDOOR, 0x0164, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000e666, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, 0x00080000, 0x00000000, 0x000001e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00001c00, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DD_LIFTDOOR, 0x0165, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000e666, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, 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_DD_LIFTDOOR, 0x0162, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000e666, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, 0x00080000, 0x00000000, 0x000001e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00001c00, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DD_LIFTDOOR, 0x0163, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000e666, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, 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 -4, -5, 0, 0 link_objects -4, -6, 0, 0 link_objects -4, -7, 0, 1 link_objects -4, -8, 0, 1 tag 0x00, 1 object 0x0100, MODEL_DD_CHAIR, 0x021b, 0x000005e1, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_DD_DESK, 0x021a, 0x000005e1, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x4e, 1 object 0x0100, MODEL_GOODPC, 0x021c, 0x000004e1, 0x00000001, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x01, 1 object 0x0100, MODEL_DD_CHAIR, 0x021f, 0x000005e1, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_DD_DESK, 0x021d, 0x000005e1, 0x00004000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_GOODPC, 0x021e, 0x000004e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x02, 1 object 0x0100, MODEL_DD_CHAIR, 0x0220, 0x000005e1, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_DD_DESK, 0x0222, 0x000005e1, 0x00004000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_GOODPC, 0x0221, 0x000004e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 chr 0x00010400, 0x02, 0x00fa, BODY_CILABTECH, HEAD_CHRIST, FUNC_INIT_HOSTAGE_FR1, 0x00b7, -1, 1000, 6, 0x00000000, 0x00300000, 0x10, 0x05, -1, 0, 0x02000000 weapon 0x0100, MODEL_CHRFALCON2, 0x0002, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_FALCON2, 0x00ffffff, 0x00000000 chr 0x00014400, 0x07, 0x0013, BODY_CILABTECH, HEAD_BEAU1, FUNC_INIT_HOSTAGE_FR2, 0x00b7, -1, 0, 0, 0x48000000, 0x00300000, 0x10, 0x0d, 0x00, 0, 0x00020000 weapon 0x0100, MODEL_CHRFALCON2, 0x0007, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_FALCON2, 0x00ffffff, 0x00000000 chr 0x00010400, 0x04, 0x0103, BODY_CIFEMTECH, HEAD_SECRETARY, FUNC_INIT_HOSTAGE_HOLO, -1, -1, 1000, 6, 0x00000000, 0x00200000, 0x10, 0x05, -1, 0, 0x02000000 chr 0x00010400, 0x01, 0x010b, BODY_CIFEMTECH, HEAD_SECRETARY, FUNC_INIT_HOSTAGE_DEVICE_F, -1, -1, 1000, 6, 0x00000000, 0x00200000, 0x10, 0x05, -1, 0, 0x02000000 chr 0x00014400, 0x06, 0x00fd, BODY_CILABTECH, HEAD_RUSS, FUNC_INIT_HOSTAGE_DEVICE_M, -1, -1, 0, 0, 0x48000000, 0x00200000, 0x10, 0x0d, 0x01, 0, 0x00020000 chr 0x00010400, 0x03, 0x010c, BODY_CILABTECH, HEAD_MARK2, FUNC_INIT_HOSTAGE_INFO_M, -1, -1, 1000, 6, 0x00000000, 0x00200001, 0x10, 0x05, -1, 0, 0x02000000 chr 0x00014400, 0x08, 0x00f7, BODY_CIFEMTECH, HEAD_SECRETARY, FUNC_INIT_HOSTAGE_INFO_F, -1, -1, 0, 0, 0x00000000, 0x00200001, 0x10, 0x0d, 0x02, 0, 0x00020000 chr 0x00000400, 0x05, 0x00fb, BODY_CILABTECH, HEAD_BRIAN, GFUNC_IDLE, 0x00fb, -1, 1000, 6, 0x00012000, 0x00300000, 0x10, 0x05, -1, 0, 0x02000000 weapon 0x0100, MODEL_CHRFALCON2, 0x0005, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_FALCON2, 0x00ffffff, 0x00000000 chr 0x00010400, 0x00, 0x0142, BODY_CARREVENINGSUIT, HEAD_CARRINGTON, GFUNC_IDLE, 0x0142, -1, 200, 100, 0x00012000, 0x00301000, 0x10, 0x01, -1, 0, 0x00000000 chr 0x00000000, 0x0c, 0x0133, BODY_DDSHOCK, HEAD_RANDOM, FUNC_SPAWNER1, -1, -1, 200, 100, 0x80092000, 0x00301000, 0x02, 0x00, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRAVENGER, 0x000c, 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 0x00000080, 0x0d, 0x0134, BODY_DDSHOCK, HEAD_RANDOM, FUNC_SPAWNER2, -1, -1, 200, 100, 0x80092000, 0x00301000, 0x02, 0x00, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRAVENGER, 0x000d, 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, 0x0e, 0x0135, BODY_DDSHOCK, HEAD_RANDOM, FUNC_SPAWNER2, -1, -1, 200, 100, 0x80092000, 0x00301000, 0x02, 0x00, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRAVENGER, 0x000e, 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, 0x10, 0x0137, BODY_DDSHOCK, HEAD_RANDOM, FUNC_SPAWNER3, -1, -1, 200, 100, 0x80092000, 0x00301000, 0x02, 0x00, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRAVENGER, 0x0010, 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, 0x12, 0x0139, BODY_DDSHOCK, HEAD_RANDOM, FUNC_SPAWNER5, -1, -1, 200, 100, 0x80092000, 0x00301000, 0x02, 0x00, -1, 0, 0x00000000 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 chr 0x00000000, 0x13, 0x003a, BODY_DDSHOCK, HEAD_RANDOM, FUNC_SPAWNER4, -1, -1, 200, 100, 0x80092000, 0x00301000, 0x02, 0x00, -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 0x00000000, 0x15, 0x013c, BODY_CISOLDIER, HEAD_RANDOM, GFUNC_IDLE, 0x013c, -1, 200, 100, 0x80012000, 0xc0300000, 0x10, 0x01, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRAR34, 0x0015, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_AR34, 0x00ffffff, 0x00000000 chr 0x00000000, 0x16, 0x013d, BODY_CISOLDIER, HEAD_RANDOM, GFUNC_IDLE, 0x013d, -1, 200, 100, 0x80012000, 0xc0300000, 0x10, 0x01, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRAR34, 0x0016, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_AR34, 0x00ffffff, 0x00000000 chr 0x00000000, 0x17, 0x013e, BODY_CISOLDIER, HEAD_RANDOM, GFUNC_IDLE, 0x013e, -1, 200, 100, 0x80012000, 0xc0300000, 0x10, 0x01, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRAR34, 0x0017, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_AR34, 0x00ffffff, 0x00000000 chr 0x00000000, 0x18, 0x013f, BODY_CISOLDIER, HEAD_RANDOM, GFUNC_IDLE, 0x013f, -1, 200, 100, 0x80012000, 0xc0300000, 0x10, 0x01, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRAR34, 0x0018, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_AR34, 0x00ffffff, 0x00000000 chr 0x00000000, 0x1b, 0x0143, BODY_CISOLDIER, HEAD_RANDOM, GFUNC_IDLE, 0x0143, -1, 200, 100, 0x80012000, 0xc0300000, 0x10, 0x01, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRAR34, 0x001b, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_AR34, 0x00ffffff, 0x00000000 chr 0x00000000, 0x1c, 0x0144, BODY_CISOLDIER, HEAD_RANDOM, GFUNC_IDLE, 0x0144, -1, 200, 100, 0x80012000, 0xc0300000, 0x10, 0x01, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRAR34, 0x001c, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_AR34, 0x00ffffff, 0x00000000 chr 0x00000000, 0x1d, 0x0145, BODY_CISOLDIER, HEAD_RANDOM, GFUNC_IDLE, 0x00b1, -1, 200, 100, 0x80012000, 0xc0300000, 0x10, 0x01, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRAR34, 0x001d, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_AR34, 0x00ffffff, 0x00000000 chr 0x00000000, 0x1e, 0x0146, BODY_CISOLDIER, HEAD_RANDOM, GFUNC_IDLE, 0x0146, -1, 200, 100, 0x80012000, 0x80300000, 0x10, 0x01, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRAR34, 0x001e, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_AR34, 0x00ffffff, 0x00000000 chr 0x00000000, 0x19, 0x0140, BODY_CISOLDIER, HEAD_RANDOM, GFUNC_IDLE, 0x0140, -1, 200, 100, 0x80012000, 0xc0300000, 0x10, 0x01, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRAR34, 0x0019, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_AR34, 0x00ffffff, 0x00000000 chr 0x00000000, 0x1a, 0x0141, BODY_CISOLDIER, HEAD_RANDOM, GFUNC_IDLE, 0x0141, -1, 200, 100, 0x80012000, 0xc0300000, 0x10, 0x01, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRAR34, 0x001a, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_AR34, 0x00ffffff, 0x00000000 chr 0x00000000, 0x1f, 0x014b, BODY_DDSHOCK, HEAD_RANDOM, FUNC_INIT_SHOCK, -1, -1, 200, 100, 0x00092000, 0x00300000, 0x02, 0x00, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRAVENGER, 0x001f, 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, 0x20, 0x014c, BODY_DDSHOCK, HEAD_RANDOM, FUNC_INIT_SHOCK, -1, -1, 200, 100, 0x00092000, 0x00300000, 0x02, 0x00, -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 0x00000000, 0x21, 0x014d, BODY_DDSHOCK, HEAD_RANDOM, FUNC_INIT_SHOCK, -1, -1, 200, 100, 0x00092000, 0x00300000, 0x02, 0x00, -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 0x00000000, 0x22, 0x014e, BODY_DDSHOCK, HEAD_RANDOM, FUNC_INIT_SHOCK, -1, -1, 200, 100, 0x00092000, 0x00300000, 0x02, 0x00, -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 0x00000000, 0x23, 0x014f, BODY_DDSHOCK, HEAD_RANDOM, FUNC_INIT_SHOCK, -1, -1, 200, 100, 0x00092000, 0x00300000, 0x02, 0x00, -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 0x00000000, 0x24, 0x0150, BODY_DDSHOCK, HEAD_RANDOM, FUNC_INIT_TAKER_DEVICE_M, -1, -1, 200, 100, 0x00092000, 0x00300000, 0x02, 0x0f, -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 0x00000000, 0x25, 0x0151, BODY_DDSHOCK, HEAD_RANDOM, FUNC_INIT_TAKER_DEVICE_F, -1, -1, 200, 100, 0x00092000, 0x00300000, 0x02, 0x0f, -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 0x00000000, 0x26, 0x0152, BODY_DDSHOCK, HEAD_RANDOM, FUNC_INIT_TAKER_INFO_F, -1, -1, 200, 100, 0x00010000, 0x00300000, 0x02, 0x00, -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 0x00000000, 0x27, 0x0153, BODY_DDSHOCK, HEAD_RANDOM, FUNC_INIT_TAKER_INFO_M, -1, -1, 200, 100, 0x00010000, 0x00300000, 0x02, 0x00, -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 0x00000000, 0x14, 0x0053, BODY_DDSHOCK, HEAD_RANDOM, FUNC_SPAWNER6, -1, -1, 200, 100, 0x00010000, 0x00300000, 0x02, 0x00, -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 0x00000200, 0x28, 0x0148, BODY_MRBLONDE, HEAD_MRBLONDE, GFUNC_IDLE_0009, -1, -1, 200, 100, 0xc0092000, 0x00300000, 0x02, 0x0d, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRMAULER, 0x0028, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_MAULER, 0x00ffffff, 0x00000000 chr 0x00000200, 0x29, 0x0149, BODY_MRBLONDE, HEAD_MRBLONDE, GFUNC_IDLE_0009, -1, -1, 200, 100, 0xc0092000, 0x00300000, 0x02, 0x0d, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRMAULER, 0x0029, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_MAULER, 0x00ffffff, 0x00000000 chr 0x00000200, 0x2a, 0x014a, BODY_MRBLONDE, HEAD_MRBLONDE, GFUNC_IDLE_0009, -1, -1, 200, 100, 0xc0092000, 0x00300000, 0x02, 0x0d, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRMAULER, 0x002a, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_MAULER, 0x00ffffff, 0x00000000 chr 0x00000200, 0x2b, 0x0154, BODY_MRBLONDE, HEAD_MRBLONDE, GFUNC_IDLE_0009, -1, -1, 200, 100, 0xc0092000, 0x00300000, 0x02, 0x0e, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRMAULER, 0x002b, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_MAULER, 0x00ffffff, 0x00000000 chr 0x00000200, 0x2c, 0x0155, BODY_MRBLONDE, HEAD_MRBLONDE, GFUNC_IDLE_0009, -1, -1, 200, 100, 0xc0092000, 0x00300000, 0x02, 0x0e, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRMAULER, 0x002c, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_MAULER, 0x00ffffff, 0x00000000 chr 0x00000200, 0x2d, 0x0147, BODY_MRBLONDE, HEAD_MRBLONDE, GFUNC_IDLE_0009, -1, -1, 200, 100, 0xc0092000, 0x00300000, 0x02, 0x0e, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRMAULER, 0x002d, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_MAULER, 0x00ffffff, 0x00000000 chr 0x00000000, 0x30, 0x00ff, BODY_MRBLONDE, HEAD_MRBLONDE, GFUNC_IDLE, -1, -1, 200, 100, 0x00092000, 0x00301000, 0x02, 0x00, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRMAULER, 0x0030, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_MAULER, 0x00ffffff, 0x00000000 chr 0x00004000, 0x31, 0x0100, BODY_SKEDAR, HEAD_RANDOM, GFUNC_INVINCIBLE_AND_IDLE, -1, -1, 200, 100, 0x00092000, 0x00301000, 0x02, 0x00, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRMAULER, 0x0031, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_MAULER, 0x00ffffff, 0x00000000 chr 0x00004000, 0x32, 0x0101, BODY_SKEDAR, HEAD_RANDOM, GFUNC_INVINCIBLE_AND_IDLE, -1, -1, 200, 100, 0x00092000, 0x00301000, 0x02, 0x00, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRMAULER, 0x0032, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_MAULER, 0x00ffffff, 0x00000000 chr 0x00004000, 0x33, 0x0102, BODY_SKEDAR, HEAD_RANDOM, GFUNC_IDLE, -1, -1, 200, 100, 0x00092000, 0x00301000, 0x02, 0x00, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRMAULER, 0x0033, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_MAULER, 0x00ffffff, 0x00000000 chr 0x00004100, 0x34, 0x003a, BODY_SKEDAR, HEAD_RANDOM, GFUNC_STOP_AND_IDLE, -1, -1, 200, 100, 0x00092000, 0x40300000, 0x02, 0x00, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRMAULER, 0x0034, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_MAULER, 0x00ffffff, 0x00000000 chr 0x00010100, 0x38, 0x0051, BODY_CISOLDIER, HEAD_JONATHAN, FUNC_INIT_JONATHAN, 0x0051, -1, 200, 100, 0x00012000, 0xc0300000, 0x10, 0x01, -1, 0, 0x00000000 weapon 0x0100, MODEL_CHRDY357, 0x0038, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DY357MAGNUM, 0x00ffffff, 0x00000000 tag 0x06, 1 autogun 0x00a6, MODEL_CI_ROOFGUN, 0x0235, 0x00000004, 0x00002001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00750000, 0x00000000, 0x00005555, 0xffffaaab, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000aaa, 0x00320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 tag 0x07, 1 autogun 0x00a6, MODEL_CI_ROOFGUN, 0x0234, 0x00000004, 0x00002001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x007c0000, 0x00000000, 0x00005555, 0xffffaaab, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000aaa, 0x00320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 tag 0x08, 1 autogun 0x00a6, MODEL_CI_ROOFGUN, 0x0233, 0x00000004, 0x00002001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00970000, 0x00000000, 0x00005555, 0xffffaaab, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000aaa, 0x00320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 tag 0x0a, 1 multimonitor 0x0099, MODEL_CIHUB, 0x0236, 0x00000002, 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, 0x03000000 tag 0x0b, 1 multimonitor 0x0099, MODEL_CIHUB, 0x0237, 0x00000002, 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, 0x03000000 tag 0x0c, 1 multimonitor 0x0099, MODEL_CIHUB, 0x0238, 0x00000002, 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, 0x03000000 tag 0x0d, 1 object 0x0100, MODEL_DROPSHIP, 0xffff, 0x00021501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x0e, 1 object 0x0100, MODEL_A51_CRATE1, 0xffff, 0x00021501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x0f, 1 object 0x0100, MODEL_A51_CRATE1, 0xffff, 0x00021501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x10, 1 object 0x0100, MODEL_A51_CRATE1, 0xffff, 0x00021501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x11, 1 object 0x0100, MODEL_A51_CRATE1, 0xffff, 0x00021501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x12, 1 object 0x0100, MODEL_A51_CRATE1, 0xffff, 0x00021501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x13, 1 object 0x0100, MODEL_A51_CRATE1, 0xffff, 0x00021501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x14, 1 object 0x0100, MODEL_A51_CRATE1, 0xffff, 0x00021501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x15, 1 object 0x0100, MODEL_A51_CRATE1, 0xffff, 0x00021501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x16, 1 object 0x0300, MODEL_LASERCUT, 0xffff, 0x00021501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x17, 1 object 0x0100, MODEL_LASERCUT, 0xffff, 0x00021501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x18, 1 object 0x0100, MODEL_LASERCUT, 0xffff, 0x00021501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x52, 1 object 0x0019, MODEL_KNOCKKNOCK, 0xffff, 0x00021501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x53, 1 object 0x0019, MODEL_KNOCKKNOCK, 0xffff, 0x00021501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x05, 1 weapon 0x0180, MODEL_CHRRCP120, 0x011a, 0x00100008, 0x00000000, 0x20400000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_RCP120, 0x00ffffff, 0x00000000 tag 0x09, 1 object 0x0480, MODEL_SENSITIVEINFO, 0x010f, 0x000204e8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 rename_object -1, 0x4e, 0x220a, 0x220b, 0x220c, 0x220d, 0x220e, 0x0000, 0x0000 // "Obtain sensitive info." tag 0x4f, 1 weapon 0x0180, MODEL_CHRDATATHIEF, 0xffff, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DATAUPLINK, 0x00ffffff, 0x00000000 rename_object -1, 0x36, 0x2239, 0x223a, 0x223b, 0x223c, 0x223d, 0x0000, 0x0000 // "Obtain Data Uplink." tag 0x50, 1 weapon 0x0180, MODEL_CHRDATATHIEF, 0xffff, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DATAUPLINK, 0x00ffffff, 0x00000000 rename_object -1, 0x36, 0x2239, 0x223a, 0x223b, 0x223c, 0x223d, 0x0000, 0x0000 // "Obtain Data Uplink." door 0x0100, MODEL_INSTFRONTDOOR, 0x018f, 0x10000600, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, 0x00040000, 0x00000008, 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_INSTFRONTDOOR, 0x0190, 0x10000600, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x00007fff, 0x00014000, 0x00000666, 0x00040000, 0x00000008, 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 door 0x0100, MODEL_DOOR2_G5, 0x0168, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x0169, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x016a, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x016b, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x016c, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x016d, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x016e, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x016f, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x0170, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x0171, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x0172, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x0173, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x0174, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x0175, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x0176, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x0177, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x0178, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x0179, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x017b, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x017c, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x017d, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x017e, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x017f, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x0180, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_CH_SHUTTER1, 0x0181, 0x00000400, 0x20000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x00007fff, 0x00014000, 0x00000222, 0x00000004, 0x00000040, 0x00000384, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000400, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_CH_SHUTTER1, 0x0182, 0x00000400, 0x20000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x00007fff, 0x00014000, 0x00000222, 0x00000004, 0x00000040, 0x00000384, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000400, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x0183, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000300, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DOOR2_G5, 0x0184, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x00010000, 0x0001aaaa, 0x0001aaaa, 0x00000222, 0x00060000, 0x00000000, 0x00000258, 0x00000000, 0x00000000, 0x00000000, 0x012c0320, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 glass 0x0100, MODEL_DD_WINDOW, 0x01b7, 0x04000b62, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_DD_WINDOW, 0x01b8, 0x04000b62, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_DD_WINDOW, 0x01b9, 0x04000b62, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_DD_WINDOW, 0x01ba, 0x04000b62, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_DD_WINDOW, 0x01bb, 0x04000b62, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_DD_WINDOW, 0x01bc, 0x04000b62, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_DD_WINDOW, 0x01bd, 0x04000b62, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_DD_WINDOW, 0x01be, 0x04000b62, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_DD_WINDOW, 0x01bf, 0x04000b62, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 glass 0x0100, MODEL_DD_WINDOW, 0x01c3, 0x04000b62, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 tag 0x39, 1 object 0x0100, MODEL_AIRBASE_SAFEDOOR, 0x025b, 0x000205e8, 0x00200002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000007d0, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_BARREL, 0x0252, 0x00000501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_BARREL, 0x0253, 0x00000501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_BARREL, 0x0254, 0x00000501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_BARREL, 0x0255, 0x00000501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_BARREL, 0x0256, 0x00000501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_BARREL, 0x0257, 0x00000501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_BARREL, 0x0258, 0x00000501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_BARREL, 0x0259, 0x00000501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_BARREL, 0x025a, 0x00000501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01d6, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01e1, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01e2, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01e5, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01e6, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01e8, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01e9, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01ea, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01eb, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01ec, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01ed, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01ee, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01ef, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01f0, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01f1, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01f3, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01f4, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01f5, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01f6, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01f7, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01fa, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01fb, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01fc, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01fd, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01fe, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x0200, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x0201, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x0202, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x0204, 0x00020501, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x3c, 1 object 0x0100, MODEL_SK_SHUTTLE, 0xffff, 0x00021501, 0x00006001, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00002ee0, 0x00000000, 0x00000000, 0x0fff0000 glass 0x0100, MODEL_DD_WINDOW, 0x01c8, 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_DD_WINDOW, 0x01c9, 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_DD_WINDOW, 0x01ca, 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_DD_WINDOW, 0x01cb, 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_DD_WINDOW, 0x01cc, 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_DD_WINDOW, 0x01cd, 0x04000b62, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 tag 0x3d, 1 glass 0x0100, MODEL_DD_WINDOW, 0x01ce, 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_DD_WINDOW, 0x01cf, 0x04000b62, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 tag 0x3e, 1 glass 0x0100, MODEL_DD_WINDOW, 0x01d0, 0x04000b62, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 door 0x0100, MODEL_DD_GRATE, 0x0185, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x005a0000, 0x03e80000, 0x012c0000, 0x012c0000, 0x00030000, 0x00100005, 0x00000040, 0x000001e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000b00, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DEVICESECRETDOOR, 0x0186, 0x36000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x005a0000, 0x03e80000, 0x012c0000, 0x012c0000, 0x00030000, 0x00100005, 0x00000040, 0x000001e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000b00, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_DD_GRATE, 0x0187, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x005a0000, 0x03e80000, 0x012c0000, 0x012c0000, 0x00030000, 0x00100005, 0x00000040, 0x000001e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000b00, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_CARRINGTONSECRETDOOR, 0x0188, 0x16000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x005a0000, 0x03e80000, 0x012c0000, 0x012c0000, 0x00030000, 0x00100005, 0x00000040, 0x000001e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000b00, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 tag 0x3f, 1 shield 0x0100, MODEL_CHRSHIELD, 0x0288, 0x00000001, 0x000000e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00010000, 0x00000000, 0x00000000 tag 0x40, 1 shield 0x0180, MODEL_CHRSHIELD, 0x0092, 0x00000001, 0x000000c0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00010000, 0x00000000, 0x00000000 tag 0x45, 1 weapon 0x0100, MODEL_CHRDEVASTATOR, 0xffff, 0x20000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DEVASTATOR, 0x00ffffff, 0x00000000 endprops intro: outfit OUTFIT_FROCK intro_weapon WEAPON_AR34, -1 ammo AMMOTYPE_RIFLE, 200 ammo AMMOTYPE_PISTOL, 300 ammo AMMOTYPE_SMG, 400 intro_weapon WEAPON_COMBATBOOST, -1 ammo AMMOTYPE_BOOST, 2 intro_weapon WEAPON_LASER, -1 intro_weapon WEAPON_LASER, -1 spawn 0x0120 endintro path00: pad 0x0113 endpath func1001_objectives_failed_msg: yield give_object_to_chr OBJ_DATAUPLINK_JOANNA, CHR_JOANNA if_chr_death_animation_finished CHR_VELVET, /*goto*/ 0x2e give_object_to_chr OBJ_DATAUPLINK_VELVET, CHR_VELVET label 0x2e set_chr_flag_bank3 CHR_CARRINGTON, CHRFLAG3_04000000 set_chr_flag_bank3 CHR_HOSTAGE_DEVICE_F, CHRFLAG3_04000000 set_chr_flag_bank3 CHR_HOSTAGE_FR1, CHRFLAG3_04000000 set_chr_flag_bank3 CHR_HOSTAGE_INFO_M, CHRFLAG3_04000000 set_chr_flag_bank3 CHR_HOSTAGE_HOLO, CHRFLAG3_04000000 set_chr_flag_bank3 CHR_HANGARGUY, CHRFLAG3_04000000 set_chr_flag_bank3 CHR_HOSTAGE_DEVICE_M, CHRFLAG3_04000000 set_chr_flag_bank3 CHR_HOSTAGE_FR2, CHRFLAG3_04000000 set_chr_flag_bank3 CHR_HOSTAGE_INFO_F, CHRFLAG3_04000000 set_chr_flag_bank3 0x09, CHRFLAG3_04000000 set_chr_flag_bank3 0x0a, CHRFLAG3_04000000 set_chr_flag_bank3 CHR_HOSTAGE_FR1, CHRFLAG3_UNEXPLODABLE set_chr_flag_bank3 CHR_HOSTAGE_FR2, CHRFLAG3_UNEXPLODABLE set_chr_flag_bank3 CHR_TAKER_FR1, CHRFLAG3_UNEXPLODABLE set_chr_flag_bank3 CHR_TAKER_FR2, CHRFLAG3_UNEXPLODABLE set_function CHR_SELF, GFUNC_SHOW_OBJ_FAILED_MSG endfunction func1400_setup_counterop: yield set_chr_alliance CHR_COUNTEROP, ALLIANCE_ENEMY set_function CHR_SELF, GFUNC_REBUILD_GROUPS endfunction .macro spawner_logic initfunc clonefunc set_self_flag_bank3 CHRFLAG3_00000002 set_self_flag_bank3 CHRFLAG3_HIDDEN set_self_flag_bank3 CHRFLAG3_00040000 beginloop 0x0f if_stage_flag_eq STAGEFLAG_TRIGGER_SPAWNING, TRUE, /*goto*/ 0x04 endloop 0x0f beginloop 0x04 if_never_been_onscreen /*goto*/ 0x4f if_chr_sees_player /*goto*/ 0x0a reloop 0x04 label 0x0a set_function CHR_SELF, \clonefunc label 0x4f if_chr_death_animation_finished CHR_CLONE, /*goto*/ 0x4f reloop 0x04 label 0x4f try_spawn_clone2 CHR_SELF, \initfunc, 0x00000000, /*goto*/ 0x2e set_function CHR_SELF, \clonefunc label 0x2e yield endloop 0x04 .endm .macro initclone_logic templatechr clonefunc set_chr_field_0x35e_0x35f 2, 0x00 set_accuracy 20 set_reaction_speed 70 set_chr_health CHR_SELF, 40 set_armor 0 set_recovery_speed 0 set_shield 90 set_self_flag_bankx CHRFLAG1_00080000, BANK_1 set_chr_flag_bank2 CHR_SELF, CHRFLAG2_00400000 label 0x04 try_inherit_properties \templatechr, /*goto*/ 0x08 label 0x08 set_chr_alliance CHR_SELF, ALLIANCE_ENEMY cmd0145_rebuild_groups cmd0146_rebuild_groups set_function CHR_SELF, \clonefunc .endm // Spawn clones in autogun hall dead end room func0401_spawner1: spawner_logic FUNC_INIT_CLONE1, FUNC_CLONE1 endfunction func0403_init_clone1: initclone_logic 0x0b, FUNC_CLONE1 endfunction func0402_clone1: unset_self_flag_bank3 CHRFLAG3_INVINCIBLE_TO_GUNFIRE run_to_pad 0x00c2 set_return_function CHR_SELF, FUNC_CLONE1 set_function CHR_SELF, GFUNC_UNALERTED endfunction // Spawn clones in vehicle maintenance area - assigned to two spawners func0404_spawner2: spawner_logic FUNC_INIT_CLONE2, FUNC_CLONE2 endfunction func0406_init_clone2: initclone_logic 0x0d, FUNC_CLONE2 endfunction func0405_clone2: run_to_pad 0x00b1 set_return_function CHR_SELF, FUNC_CLONE2 set_function CHR_SELF, GFUNC_UNALERTED endfunction // Spawn clones in room with pit near autogun switches func0407_spawner3: spawner_logic FUNC_INIT_CLONE3, FUNC_CLONE3 endfunction func0409_init_clone3: initclone_logic 0x0f, FUNC_CLONE3 endfunction func0408_clone3: run_to_pad 0x00af set_return_function CHR_SELF, FUNC_CLONE3 set_function CHR_SELF, GFUNC_UNALERTED endfunction /** * Assigned to CI soldiers, Jon and hangar guy */ func0413_defend_pad: set_onshot_function FUNC_DEFEND_PAD if_enemy_distance_lt_and_los 2540, /*goto*/ 0x0a if_chr_distance_to_pad_lt CHR_SELF, 200, TARGET_PAD, /*goto*/ 0x08 // Distance to pad >= 200 label 0x03 jog_to_pad TARGET_PAD beginloop 0x04 dprint "GO TO PAD\n" if_enemy_distance_lt_and_los 2540, /*goto*/ 0x0a if_chr_distance_to_pad_lt CHR_SELF, 200, TARGET_PAD, /*goto*/ 0x08 endloop 0x04 // At pad label 0x08 stop_chr beginloop 0x0b dprint "AT PAD\n" if_enemy_distance_lt_and_los 2540, /*goto*/ 0x0a if_chr_distance_to_pad_gt CHR_SELF, 300, TARGET_PAD, /*goto*/ 0x08 endloop 0x0b label 0x08 goto_first 0x03 // Detected enemy label 0x0a dprint "DETECTED\n" set_onshot_function FUNC_DEFEND_PAD set_return_function CHR_SELF, FUNC_DEFEND_PAD set_function CHR_SELF, GFUNC_COMBAT_WITH_TARGET_CHR endfunction func100b_setup_autoguns: yield set_autoturret_type OBJ_AUTOGUN1, 0xef set_autoturret_type OBJ_AUTOGUN2, 0xef set_autoturret_type OBJ_AUTOGUN3, 0xef if_difficulty_lt DIFF_SA, /*goto*/ 0x2f // SA and PA only restart_timer beginloop 0x71 if_timer_gt 120, /*goto*/ 0x2e endloop 0x71 label 0x2e set_object_flag_bank0 OBJ_AUTOGUN1, OBJECTFLAG0_DEACTIVATED set_object_flag_bank0 OBJ_AUTOGUN2, OBJECTFLAG0_DEACTIVATED set_object_flag_bank0 OBJ_AUTOGUN3, OBJECTFLAG0_DEACTIVATED label 0x2f set_function CHR_SELF, GFUNC_IDLE endfunction func1004_check_hostages_killed: set_chr_flag_bank3 CHR_HOSTAGE_DEVICE_F, CHRFLAG3_KILLCOUNTABLE set_chr_flag_bank3 CHR_HOSTAGE_FR1, CHRFLAG3_KILLCOUNTABLE set_chr_flag_bank3 CHR_HOSTAGE_INFO_M, CHRFLAG3_KILLCOUNTABLE set_chr_flag_bank3 CHR_HOSTAGE_HOLO, CHRFLAG3_KILLCOUNTABLE set_chr_flag_bank3 CHR_HOSTAGE_DEVICE_M, CHRFLAG3_KILLCOUNTABLE set_chr_flag_bank3 CHR_HOSTAGE_FR2, CHRFLAG3_KILLCOUNTABLE set_chr_flag_bank3 CHR_HOSTAGE_INFO_F, CHRFLAG3_KILLCOUNTABLE if_difficulty_lt DIFF_SA, /*goto*/ 0x0a if_difficulty_lt DIFF_PA, /*goto*/ 0x0b // PA beginloop 0x0c if_kill_count_gt 2, /*goto*/ 0x08 endloop 0x0c // Agent beginloop 0x0a if_kill_count_gt 4, /*goto*/ 0x08 endloop 0x0a // SA beginloop 0x0b if_kill_count_gt 3, /*goto*/ 0x08 endloop 0x0b label 0x08 if_stage_flag_eq STAGEFLAG_ENOUGH_HOSTAGES_SAVED, TRUE, /*goto*/ 0x2e set_stage_flag STAGEFLAG_TOO_MANY_HOSTAGES_KILLED message CHR_JOANNA, 0x2210 // "Too many hostages killed." label 0x2e set_function CHR_SELF, GFUNC_IDLE endfunction func1005_check_safeinfo_destroyed: beginloop 0x04 if_object_in_good_condition OBJ_SAFEINFO, /*goto*/ 0x2e goto_next 0x08 label 0x2e endloop 0x04 label 0x08 message CHR_JOANNA, 0x2212 // "Sensitive information has been destroyed." set_stage_flag STAGEFLAG_SAFEINFO_DESTROYED set_function CHR_SELF, GFUNC_IDLE endfunction .macro autogun_switch_logic switch autogun stageflag if_difficulty_lt DIFF_SA, /*goto*/ 0x0e beginloop 0x04 consider_coop_for_p1p2_chr CHR_SELF if_object_in_good_condition \switch, /*goto*/ 0x2e goto_next 0x0b label 0x2e if_object_in_good_condition \autogun, /*goto*/ 0x2e goto_next 0x0b label 0x2e if_chr_activated_object CHR_P1P2, \switch, /*goto*/ 0x08 endloop 0x04 // Switch activated label 0x08 play_sound 0x043a, CHANNEL_7 message CHR_P1P2, 0x220f // "Automatic gun activated." label 0x0e unset_object_flag_bank0 \autogun, OBJECTFLAG0_DEACTIVATED set_stage_flag \stageflag beginloop 0x0f if_object_in_good_condition \autogun, /*goto*/ 0x2e goto_next 0x0b label 0x2e endloop 0x0f // Autogun or switch destroyed label 0x0b if_difficulty_lt DIFF_SA, /*goto*/ 0x11 message CHR_JOANNA, 0x2222 // "Critical mission object has been destroyed." set_stage_flag STAGEFLAG_AUTOGUN_SWITCH_DESTROYED .if \autogun == OBJ_AUTOGUN1 set_function CHR_SELF, GFUNC_IDLE .endif label 0x11 set_function CHR_SELF, GFUNC_IDLE .endm func1007_autogun_switch1: autogun_switch_logic OBJ_AUTOGUN_SWITCH1, OBJ_AUTOGUN1, STAGEFLAG_AUTOGUN1_ACTIVE endfunction func1008_autogun_switch2: autogun_switch_logic OBJ_AUTOGUN_SWITCH2, OBJ_AUTOGUN2, STAGEFLAG_AUTOGUN2_ACTIVE endfunction func1009_autogun_switch3: autogun_switch_logic OBJ_AUTOGUN_SWITCH3, OBJ_AUTOGUN3, STAGEFLAG_AUTOGUN3_ACTIVE endfunction func0c01_outro: camera_movement 0x01a2 set_music_track MUSIC_DEFENSE_OUTRO set_chr_flag_bank3 CHR_COUNTEROP, CHRFLAG3_HIDDEN set_chr_flag_bank3 0xf1, CHRFLAG3_HIDDEN set_function CHR_P1P2, GFUNC_IDLE set_chr_flag_bank3 CHR_CARRINGTON, CHRFLAG3_HIDDEN set_chr_flag_bank3 CHR_P1P2, CHRFLAG3_UNPLAYABLE unset_chr_flag_bank3 CHR_P1P2, CHRFLAG3_HIDDEN set_chr_flag_bank2 CHR_P1P2, CHRFLAG2_00020000 animation 0x01a3, -1, -1, 0x0600, CHR_P1P2, 4 .macro show_object_with_animation object animation show_object \object set_object_flag_bank1 \object, OBJECTFLAG1_04000000 set_object_flag_bank2 \object, OBJECTFLAG2_00000010 object_do_animation \animation, \object, 0x04ff, 0xff .endm show_object_with_animation 0x0e, 0x01a4 show_object_with_animation 0x0f, 0x01a5 show_object_with_animation 0x10, 0x01a6 show_object_with_animation 0x11, 0x01a7 show_object_with_animation 0x12, 0x01a8 show_object_with_animation 0x13, 0x01a9 show_object_with_animation 0x14, 0x01aa show_object 0x0d unset_object_flag_bank0 0x0d, OBJECTFLAG0_DEACTIVATED set_object_flag_bank1 0x0d, OBJECTFLAG1_04000000 set_object_flag_bank2 0x0d, OBJECTFLAG2_00000010 object_do_animation 0x01b4, 0x0d, 0x01ff, 0xff show_nonessential_chrs FALSE open_door 0x51 restart_timer yield set_object_flag_bank0 0x51, OBJECTFLAG0_40000000 set_cutscene_weapon CHR_P1P2, WEAPON_NONE, WEAPON_NONE yield set_cutscene_weapon CHR_P1P2, WEAPON_AR34, WEAPON_NONE .macro wait_until time loopid beginloop \loopid if_controller_button_pressed /*goto*/ 0xb8 if_timer_gt \time, /*goto*/ 0x08 endloop \loopid label 0x08 .endm wait_until 86, 0x73 play_sound 0x0161, CHANNEL_10 wait_until 114, 0x74 play_sound 0x0162, CHANNEL_10 wait_until 140, 0x75 play_sound 0x0163, CHANNEL_10 wait_until 168, 0x76 play_sound 0x0164, CHANNEL_10 wait_until 186, 0x77 play_sound 0x0161, CHANNEL_10 beginloop 0x0a if_camera_animating /*goto*/ 0x2e goto_next 0xb8 label 0x2e if_controller_button_pressed /*goto*/ 0xb8 label 0x2e endloop 0x0a label 0xb8 mute_channel CHANNEL_10 hide_object 0x0d camera_movement 0x01ac unset_chr_flag_bank3 CHR_SKEDAR1, CHRFLAG3_HIDDEN unset_chr_flag_bank3 CHR_SKEDAR2, CHRFLAG3_HIDDEN set_chr_flag_bank3 CHR_SKEDAR1, CHRFLAG3_UNPLAYABLE unset_chr_flag_bank3 CHR_SKEDAR1, CHRFLAG3_HIDDEN set_chr_flag_bank2 CHR_SKEDAR1, CHRFLAG2_00020000 animation 0x01ad, -1, -1, 0x0600, CHR_SKEDAR1, 4 set_chr_flag_bank3 CHR_SKEDAR2, CHRFLAG3_UNPLAYABLE unset_chr_flag_bank3 CHR_SKEDAR2, CHRFLAG3_HIDDEN set_chr_flag_bank2 CHR_SKEDAR2, CHRFLAG2_00020000 animation 0x01ae, -1, -1, 0x0600, CHR_SKEDAR2, 4 wait_until 16, 0x78 play_sound 0x0530, CHANNEL_10 wait_until 56, 0x79 play_sound 0x052b, CHANNEL_10 beginloop 0x0b if_camera_animating /*goto*/ 0x2e goto_next 0xb8 label 0x2e if_controller_button_pressed /*goto*/ 0xb8 label 0x2e endloop 0x0b label 0xb8 mute_channel CHANNEL_10 camera_movement 0x0305 set_chr_flag_bank3 CHR_P1P2, CHRFLAG3_UNPLAYABLE unset_chr_flag_bank3 CHR_P1P2, CHRFLAG3_HIDDEN set_chr_flag_bank2 CHR_P1P2, CHRFLAG2_00020000 animation 0x0306, -1, -1, 0x0600, CHR_P1P2, 4 show_object_with_animation 0x0e, 0x0307 show_object_with_animation 0x0f, 0x0308 show_object_with_animation 0x10, 0x0309 show_object_with_animation 0x11, 0x030a show_object_with_animation 0x12, 0x030b show_object_with_animation 0x13, 0x030c show_object_with_animation 0x14, 0x030d show_object_with_animation 0x0d, 0x030f show_object 0x16 set_object_flag_bank1 0x16, OBJECTFLAG1_04000000 set_object_flag_bank2 0x16, OBJECTFLAG2_00000010 object_do_animation 0x01b1, 0x16, 0x02ff, 0xff wait_until 372, 0x7a play_sound 0x0506, CHANNEL_10 wait_until 382, 0x7b play_sound 0x0048, CHANNEL_10 wait_until 390, 0x7c play_sound 0x0506, CHANNEL_10 wait_until 400, 0x7d play_sound 0x0049, CHANNEL_10 wait_until 432, 0x7e play_sound 0x0506, CHANNEL_10 wait_until 442, 0x7f play_sound 0x00d0, CHANNEL_10 wait_until 454, 0x80 play_sound 0x0506, CHANNEL_10 wait_until 464, 0x81 play_sound 0x0078, CHANNEL_10 wait_until 466, 0x82 play_sound 0x0161, CHANNEL_10 wait_until 484, 0x83 play_sound 0x0162, CHANNEL_10 wait_until 502, 0x84 play_sound 0x0164, CHANNEL_10 wait_until 516, 0x85 play_sound 0x0163, CHANNEL_10 wait_until 528, 0x86 play_sound 0x0162, CHANNEL_10 wait_until 570, 0x71 speak CHR_JOANNA, 0x2231, 0x747d, CHANNEL_10, COLOR_09_BLUE // "Get clear! I'll hold them off... You can come back..." wait_until 847, 0x87 play_sound 0x0161, CHANNEL_10 wait_until 852, 0x88 play_sound 0x0162, CHANNEL_10 wait_until 865, 0x72 set_chr_shooting_in_cutscene CHR_JOANNA, TRUE yield set_chr_shooting_in_cutscene CHR_JOANNA, TRUE yield set_chr_shooting_in_cutscene CHR_JOANNA, TRUE yield set_chr_shooting_in_cutscene CHR_JOANNA, FALSE wait_until 870, 0x89 label 0x8a set_chr_shooting_in_cutscene CHR_JOANNA, TRUE yield if_controller_button_pressed /*goto*/ 0xb8 if_timer_gt 960, /*goto*/ 0x08 goto_first 0x8a label 0x08 set_chr_shooting_in_cutscene CHR_JOANNA, FALSE speak CHR_JOANNA, 0x2232, 0x747e, CHANNEL_10, COLOR_09_BLUE // "At least, I hope you can." wait_until 1018, 0x8c set_chr_shooting_in_cutscene CHR_JOANNA, TRUE yield set_chr_shooting_in_cutscene CHR_JOANNA, TRUE yield set_chr_shooting_in_cutscene CHR_JOANNA, TRUE yield set_chr_shooting_in_cutscene CHR_JOANNA, FALSE wait_until 1065, 0x94 play_sound 0x052b, CHANNEL_7 label 0x0c yield if_camera_animating /*goto*/ 0x2e goto_next 0xb8 label 0x2e if_controller_button_pressed /*goto*/ 0xb8 label 0x2e goto_first 0x0c label 0xb8 mute_channel CHANNEL_10 camera_movement 0x0310 set_chr_flag_bank3 CHR_P1P2, CHRFLAG3_UNPLAYABLE unset_chr_flag_bank3 CHR_P1P2, CHRFLAG3_HIDDEN set_chr_flag_bank2 CHR_P1P2, CHRFLAG2_00020000 animation 0x0311, -1, -1, 0x0600, CHR_P1P2, 4 set_chr_flag_bank3 CHR_SKEDAR1, CHRFLAG3_UNPLAYABLE unset_chr_flag_bank3 CHR_SKEDAR1, CHRFLAG3_HIDDEN set_chr_flag_bank2 CHR_SKEDAR1, CHRFLAG2_00020000 animation 0x0312, -1, -1, 0x0600, CHR_SKEDAR1, 4 show_object_with_animation 0x0e, 0x0313 show_object_with_animation 0x0f, 0x0314 show_object_with_animation 0x10, 0x0315 show_object_with_animation 0x11, 0x0316 show_object_with_animation 0x12, 0x0317 show_object_with_animation 0x13, 0x0318 show_object_with_animation 0x14, 0x0319 wait_until 1090, 0x95 play_sound 0x0529, CHANNEL_10 wait_until 1100, 0x96 play_sound 0x052a, CHANNEL_10 wait_until 1264, 0x97 play_sound 0x00e3, CHANNEL_10 wait_until 1280, 0x98 play_sound 0x00e4, CHANNEL_10 wait_until 1315, 0x99 play_sound 0x77ba, CHANNEL_10 play_sound 0x00ee, CHANNEL_10 wait_until 1330, 0x9a play_sound 0x00df, CHANNEL_10 wait_until 1350, 0x9b set_chr_shooting_in_cutscene CHR_JOANNA, TRUE yield set_chr_shooting_in_cutscene CHR_JOANNA, TRUE yield set_chr_shooting_in_cutscene CHR_JOANNA, TRUE yield set_chr_shooting_in_cutscene CHR_JOANNA, FALSE play_sound 0x77ba, CHANNEL_10 play_sound 0x00e4, CHANNEL_10 beginloop 0x0d if_camera_animating /*goto*/ 0x2e goto_next 0xb8 label 0x2e if_controller_button_pressed /*goto*/ 0xb8 label 0x2e endloop 0x0d label 0xb8 mute_channel CHANNEL_10 restart_default_music reset_ambience end_level set_function CHR_SELF, GFUNC_IDLE endfunction func1002_intro: set_music_track MUSIC_DEFENSE_INTRO camera_movement 0x02bc set_chr_flag_bank3 CHR_VELVET, CHRFLAG3_HIDDEN set_chr_flag_bank3 CHR_COUNTEROP, CHRFLAG3_HIDDEN set_function CHR_CARRINGTON, GFUNC_IDLE set_function 0x19, GFUNC_IDLE set_function 0x1a, GFUNC_IDLE set_chr_flag_bank3 0x16, CHRFLAG3_HIDDEN set_chr_flag_bank3 CHR_JONATHAN, CHRFLAG3_HIDDEN set_chr_flag_bank3 CHR_JOANNA, CHRFLAG3_UNPLAYABLE set_chr_flag_bank2 CHR_JOANNA, CHRFLAG2_00020000 animation 0x02bd, -1, -1, 0x0600, CHR_JOANNA, 4 set_chr_flag_bank3 CHR_CARRINGTON, CHRFLAG3_UNPLAYABLE unset_chr_flag_bank3 CHR_CARRINGTON, CHRFLAG3_HIDDEN set_chr_flag_bank2 CHR_CARRINGTON, CHRFLAG2_00020000 animation 0x02be, -1, -1, 0x0600, CHR_CARRINGTON, 4 set_chr_flag_bank3 0x19, CHRFLAG3_UNPLAYABLE unset_chr_flag_bank3 0x19, CHRFLAG3_HIDDEN set_chr_flag_bank2 0x19, CHRFLAG2_00020000 animation 0x02bf, -1, -1, 0x0600, 0x19, 4 set_chr_flag_bank3 0x1a, CHRFLAG3_UNPLAYABLE unset_chr_flag_bank3 0x1a, CHRFLAG3_HIDDEN set_chr_flag_bank2 0x1a, CHRFLAG2_00020000 animation 0x02c0, -1, -1, 0x0600, 0x1a, 4 show_object 0x0d set_object_flag_bank1 0x0d, OBJECTFLAG1_04000000 set_object_flag_bank2 0x0d, OBJECTFLAG2_00000010 object_do_animation 0x02c1, 0x0d, 0x04ff, 0xff restart_timer set_cutscene_weapon 0x1a, WEAPON_NONE, WEAPON_NONE yield set_cutscene_weapon 0x1a, WEAPON_AR34, WEAPON_NONE wait_until 4, 0x71 speak CHR_JOANNA, 0x2229, 0x7475, CHANNEL_10, COLOR_06_WHITE // "All ready, Joanna? We can't keep the Maian delegat..." wait_until 72, 0x72 play_sound 0x0161, CHANNEL_10 wait_until 104, 0x73 play_sound 0x0162, CHANNEL_10 wait_until 450, 0x74 speak CHR_JOANNA, 0x222a, 0x7476, CHANNEL_10, COLOR_09_BLUE // "Am I ready? What do you mean? I was ready half an ..." wait_until 688, 0x76 play_sound 0x0163, CHANNEL_10 wait_until 754, 0x77 play_sound 0x0164, CHANNEL_10 wait_until 800, 0x75 speak CHR_JOANNA, 0x222b, 0x7477, CHANNEL_10, COLOR_06_WHITE // "But you know how it is, Joanna... I had to make su..." wait_until 822, 0x78 play_sound 0x0165, CHANNEL_10 wait_until 850, 0x79 play_sound 0x0166, CHANNEL_10 wait_until 866, 0x7a play_sound 0x0167, CHANNEL_10 wait_until 892, 0x7b play_sound 0x0168, CHANNEL_10 wait_until 926, 0x7c play_sound 0x0161, CHANNEL_10 wait_until 945, 0x7d play_sound 0x0162, CHANNEL_10 wait_until 976, 0x7e play_sound 0x0161, CHANNEL_10 wait_until 990, 0x7f play_sound 0x0163, CHANNEL_10 wait_until 1030, 0x80 play_sound 0x0162, CHANNEL_10 wait_until 1048, 0x81 play_sound 0x0168, CHANNEL_10 wait_until 1102, 0x83 play_sound 0x0167, CHANNEL_10 wait_until 1110, 0x84 play_sound 0x0164, CHANNEL_10 wait_until 1158, 0x85 play_sound 0x0165, CHANNEL_10 wait_until 1160, 0x82 speak CHR_JOANNA, 0x222c, 0x7478, CHANNEL_10, COLOR_09_BLUE // "They should keep you away from mirrors. Nervous?" wait_until 1170, 0x86 play_sound 0x0166, CHANNEL_10 wait_until 1224, 0x87 play_sound 0x0167, CHANNEL_10 wait_until 1258, 0x88 play_sound 0x0168, CHANNEL_10 wait_until 1440, 0x89 speak CHR_JOANNA, 0x222d, 0x7479, CHANNEL_10, COLOR_06_WHITE // "Very. I've waited for this moment for so many year..." wait_until 1442, 0x8a play_sound 0x0162, CHANNEL_10 wait_until 1450, 0x8b play_sound 0x0161, CHANNEL_10 wait_until 1594, 0x8c play_sound 0x0163, CHANNEL_10 wait_until 1676, 0x8d play_sound 0x0164, CHANNEL_10 wait_until 1741, 0x8e play_sound 0x0165, CHANNEL_10 wait_until 2252, 0x8f play_sound 0x0166, CHANNEL_10 wait_until 2296, 0x90 play_sound 0x0167, CHANNEL_10 wait_until 2326, 0x91 play_sound 0x0164, CHANNEL_10 wait_until 2378, 0x92 play_sound 0x0168, CHANNEL_10 wait_until 2383, 0x93 play_sound 0x00b5, CHANNEL_10 wait_until 2410, 0x94 speak CHR_JOANNA, 0x222e, 0x747a, CHANNEL_10, COLOR_06_WHITE // "Where did that come from?" wait_until 2416, 0x95 play_sound 0x0165, CHANNEL_10 wait_until 2446, 0x96 play_sound 0x0166, CHANNEL_10 wait_until 2510, 0x97 play_sound 0x00ad, CHANNEL_10 wait_until 2566, 0x98 play_sound 0x0161, CHANNEL_10 wait_until 2582, 0x99 play_sound 0x00b2, CHANNEL_10 wait_until 2628, 0x9b speak CHR_JOANNA, 0x222f, 0x747b, CHANNEL_10, COLOR_09_BLUE // "It was up on ground level..." wait_until 2804, 0x9c play_sound 0x00b5, CHANNEL_10 wait_until 2910, 0x9e play_sound 0x0165, CHANNEL_10 set_cutscene_weapon 0x1a, WEAPON_NONE, WEAPON_NONE set_cutscene_weapon CHR_JOANNA, WEAPON_AR34, WEAPON_NONE wait_until 2940, 0x9f play_sound 0x03c5, CHANNEL_10 wait_until 2965, 0xa0 play_sound 0x0168, CHANNEL_10 wait_until 2970, 0x9d speak CHR_JOANNA, 0x2230, 0x747c, CHANNEL_10, COLOR_09_BLUE // "Looks like someone doesn't know when to quit. We'v..." wait_until 2984, 0xa1 play_sound 0x0165, CHANNEL_10 wait_until 3000, 0xa2 play_sound 0x0166, CHANNEL_10 wait_until 3106, 0xa3 play_sound 0x0165, CHANNEL_10 wait_until 3125, 0xa4 play_sound 0x0168, CHANNEL_10 wait_until 3142, 0xae play_sound 0x0167, CHANNEL_10 unset_object_flag_bank1 0x0d, OBJECTFLAG1_04000000 wait_until 3144, 0xa5 play_sound 0x0166, CHANNEL_10 wait_until 3169, 0xa6 play_sound 0x0167, CHANNEL_10 wait_until 3180, 0xaf play_sound 0x0165, CHANNEL_10 wait_until 3204, 0xb0 play_sound 0x0168, CHANNEL_10 wait_until 3228, 0xa7 play_sound 0x0166, CHANNEL_10 wait_until 3246, 0xa8 play_sound 0x0165, CHANNEL_10 wait_until 3263, 0xa9 play_sound 0x0168, CHANNEL_10 wait_until 3295, 0xaa play_sound 0x0166, CHANNEL_10 wait_until 3317, 0xab play_sound 0x0165, CHANNEL_10 wait_until 3342, 0xac play_sound 0x0168, CHANNEL_10 wait_until 3355, 0xb1 play_sound 0x0166, CHANNEL_10 wait_until 3365, 0xad play_sound 0x0165, CHANNEL_10 wait_until 3472, 0xb2 play_sound 0x0164, CHANNEL_10 wait_until 3498, 0xb3 play_sound 0x0165, CHANNEL_10 wait_until 3520, 0xb4 play_sound 0x0166, CHANNEL_10 beginloop 0x0a if_camera_animating /*goto*/ 0x2e goto_next 0xb8 label 0x2e if_controller_button_pressed /*goto*/ 0xb8 label 0x2e endloop 0x0a label 0xb8 mute_channel CHANNEL_10 camera_movement 0x02c2 cmd0175 60 unset_object_flag_bank1 0x0d, OBJECTFLAG1_04000000 if_controller_button_pressed /*goto*/ 0xcc unset_chr_flag_bank3 CHR_SKEDAR4, CHRFLAG3_HIDDEN set_chr_flag_bank3 CHR_SKEDAR4, CHRFLAG3_UNPLAYABLE set_chr_flag_bank2 CHR_SKEDAR4, CHRFLAG2_00020000 animation 0x02c3, -1, -1, 0x0600, CHR_SKEDAR4, 4 set_chr_flag_bank3 CHR_JOANNA, CHRFLAG3_UNPLAYABLE set_chr_flag_bank2 CHR_JOANNA, CHRFLAG2_00020000 animation 0x02c4, -1, -1, 0x0600, CHR_JOANNA, 4 show_object 0x52 set_object_flag_bank1 0x52, OBJECTFLAG1_04000000 set_object_flag_bank2 0x52, OBJECTFLAG2_00000010 object_do_animation 0x02c5, 0x52, 0x04ff, 0xff show_object 0x53 set_object_flag_bank1 0x53, OBJECTFLAG1_04000000 set_object_flag_bank2 0x53, OBJECTFLAG2_00000010 object_do_animation 0x02c6, 0x53, 0x04ff, 0xff restart_timer .macro wait_until2 time loopid beginloop \loopid if_controller_button_pressed /*goto*/ 0xcc if_timer_gt \time, /*goto*/ 0x08 endloop \loopid label 0x08 .endm wait_until2 8, 0x62 play_sound 0x052a, CHANNEL_10 wait_until2 26, 0x65 play_sound 0x05a0, CHANNEL_10 wait_until2 38, 0x63 play_sound 0x00e3, CHANNEL_10 wait_until2 43, 0x64 play_sound 0x00e4, CHANNEL_10 wait_until2 63, 0x66 play_sound 0x05a1, CHANNEL_10 wait_until2 160, 0x67 play_sound 0x0161, CHANNEL_10 wait_until2 202, 0x68 play_sound 0x0162, CHANNEL_10 wait_until2 238, 0x69 play_sound 0x0163, CHANNEL_10 wait_until2 255, 0x6a play_sound 0x0164, CHANNEL_10 wait_until2 259, 0x6b play_sound 0x0530, CHANNEL_10 wait_until2 441, 0x6c play_sound 0x0163, CHANNEL_10 wait_until2 454, 0x6d play_sound 0x0164, CHANNEL_10 wait_until2 522, 0x6e play_sound 0x05c7, CHANNEL_10 wait_until2 546, 0x6f play_sound 0x05c6, CHANNEL_10 wait_until2 610, 0x70 play_sound 0x05c5, CHANNEL_10 beginloop 0x0b if_camera_animating /*goto*/ 0x2e goto_next 0xcc label 0x2e if_controller_button_pressed /*goto*/ 0xcc label 0x2e endloop 0x0b label 0xcc mute_channel CHANNEL_7 mute_channel CHANNEL_6 mute_channel CHANNEL_5 mute_channel CHANNEL_10 set_cutscene_weapon CHR_JOANNA, WEAPON_AR34, WEAPON_NONE unset_chr_flag_bank3 CHR_JOANNA, CHRFLAG3_UNPLAYABLE set_chr_flag_bank2 CHR_JOANNA, CHRFLAG2_00020000 animation 0x02c4, -2, -1, 0x0600, CHR_JOANNA, 2 unset_chr_flag_bank3 CHR_CARRINGTON, CHRFLAG3_UNPLAYABLE set_chr_flag_bank2 CHR_CARRINGTON, CHRFLAG2_00020000 animation 0x02be, -2, -1, 0x0600, CHR_CARRINGTON, 2 unset_chr_flag_bank3 0x19, CHRFLAG3_UNPLAYABLE set_chr_flag_bank2 0x19, CHRFLAG2_00020000 animation 0x02bf, -2, -1, 0x0600, 0x19, 2 unset_chr_flag_bank3 0x1a, CHRFLAG3_UNPLAYABLE set_chr_flag_bank2 0x1a, CHRFLAG2_00020000 animation 0x02c0, -2, -1, 0x0600, 0x1a, 2 unset_chr_flag_bank3 CHR_SKEDAR4, CHRFLAG3_HIDDEN unset_chr_flag_bank3 CHR_SKEDAR4, CHRFLAG3_UNPLAYABLE set_chr_flag_bank2 CHR_SKEDAR4, CHRFLAG2_00020000 animation 0x02c3, -2, -1, 0x0600, CHR_SKEDAR4, 2 unset_object_flag_bank1 0x0d, OBJECTFLAG1_04000000 set_object_flag_bank0 0x0d, OBJECTFLAG0_DEACTIVATED set_object_flag_bank2 0x0d, OBJECTFLAG2_00000010 object_do_animation 0x01b4, 0x0d, 0x01ff, 0xff show_object 0x52 set_object_flag_bank1 0x52, OBJECTFLAG1_04000000 set_object_flag_bank2 0x52, OBJECTFLAG2_00000010 object_do_animation 0x02c5, 0x52, 0x04ff, 0xfe show_object 0x53 set_object_flag_bank1 0x53, OBJECTFLAG1_04000000 set_object_flag_bank2 0x53, OBJECTFLAG2_00000010 object_do_animation 0x02c6, 0x53, 0x04ff, 0xfe set_stage_flag STAGEFLAG_INTRO_FINISHED restart_default_music reset_ambience unset_chr_flag_bank3 CHR_VELVET, CHRFLAG3_HIDDEN unset_chr_flag_bank3 CHR_COUNTEROP, CHRFLAG3_HIDDEN remove_chr 0x19 remove_chr 0x1a set_function 0x19, GFUNC_IDLE set_function 0x1a, GFUNC_IDLE unset_chr_flag_bank3 0x16, CHRFLAG3_HIDDEN enter_firstperson yield set_function CHR_CARRINGTON, FUNC_CARRINGTON set_function CHR_SKEDAR4, FUNC_SKEDAR4 unset_chr_flag_bank3 CHR_JONATHAN, CHRFLAG3_HIDDEN set_function CHR_SELF, GFUNC_IDLE endfunction func1003_hide_blondes_and_skedar: label 0x04 set_chr_flag_bank3 CHR_BLONDE7, CHRFLAG3_HIDDEN set_chr_flag_bank3 CHR_SKEDAR1, CHRFLAG3_HIDDEN set_chr_flag_bank3 CHR_SKEDAR2, CHRFLAG3_HIDDEN set_chr_flag_bank3 CHR_SKEDAR3, CHRFLAG3_HIDDEN set_chr_flag_bank3 CHR_SKEDAR1, CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_chr_flag_bank3 CHR_SKEDAR2, CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_chr_flag_bank3 CHR_SKEDAR3, CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_chr_flag_bank3 CHR_BLONDE1, CHRFLAG3_HIDDEN set_chr_flag_bank3 CHR_BLONDE2, CHRFLAG3_HIDDEN set_chr_flag_bank3 CHR_BLONDE3, CHRFLAG3_HIDDEN set_chr_flag_bank3 CHR_BLONDE4, CHRFLAG3_HIDDEN set_chr_flag_bank3 CHR_BLONDE5, CHRFLAG3_HIDDEN set_chr_flag_bank3 CHR_BLONDE6, CHRFLAG3_HIDDEN set_chr_flag_bank3 CHR_BLONDE1, CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_chr_flag_bank3 CHR_BLONDE2, CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_chr_flag_bank3 CHR_BLONDE3, CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_chr_flag_bank3 CHR_BLONDE4, CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_chr_flag_bank3 CHR_BLONDE5, CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_chr_flag_bank3 CHR_BLONDE6, CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_function CHR_SELF, GFUNC_IDLE endfunction func100c_check_carrington_dead: beginloop 0x04 if_chr_dying CHR_CARRINGTON, /*goto*/ 0x2e endloop 0x04 label 0x2e message CHR_JOANNA, 0x2213 // "Carrington has been killed." set_stage_flag STAGEFLAG_CARRINGTON_DEAD set_function CHR_SELF, GFUNC_IDLE endfunction func0415_init_hostage_fr1: set_var_a 5 set_chr_health CHR_SELF, 1 set_accuracy 0 set_function CHR_SELF, FUNC_FIRINGRANGE_HOSTAGE endfunction func0416_init_hostage_fr2: set_var_a 7 set_chr_health CHR_SELF, 1 set_accuracy 0 set_function CHR_SELF, FUNC_FIRINGRANGE_HOSTAGE endfunction func0414_firingrange_hostage: set_onshot_function FUNC_FIRINGRANGE_HOSTAGE if_chr_dying CHR_SELF, /*goto*/ 0x2e if_chr_death_animation_finished CHR_SELF, /*goto*/ 0x2e if_chr_unloaded CHR_SELF, /*goto*/ 0x2e goto_next 0x04 label 0x2e set_onshot_function GFUNC_IDLE set_function CHR_SELF, GFUNC_IDLE beginloop 0x04 if_self_flag_bankx_eq CHRFLAG0_00002000, TRUE, BANK_0, /*goto*/ 0x2e endloop 0x04 label 0x2e if_enemy_distance_lt_and_los 2540, /*goto*/ 0x0a goto_next 0x12 label 0x03 jog_to_pad TARGET_PAD beginloop 0x04 dprint "GO TO PAD\n" if_enemy_distance_lt_and_los 2540, /*goto*/ 0x0a goto_next 0x12 endloop 0x04 label 0x08 stop_chr beginloop 0x0b dprint "AT PAD\n" if_enemy_distance_lt_and_los 2540, /*goto*/ 0x0a goto_next 0x12 endloop 0x0b label 0x08 goto_first 0x03 label 0x0a dprint "DETECTED\n" set_return_function CHR_SELF, FUNC_FIRINGRANGE_HOSTAGE set_onshot_function FUNC_FIRINGRANGE_HOSTAGE set_function CHR_SELF, GFUNC_COMBAT_WITH_TARGET_CHR set_function CHR_SELF, GFUNC_IDLE // Enemy not detected label 0x12 set_function CHR_SELF, FUNC_INIT_SAVED_HOSTAGE endfunction func100e_setup_firingrange: set_chr_flag_bank3 CHR_HOSTAGE_FR1, CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_chr_flag_bank3 CHR_HOSTAGE_FR2, CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_chr_flag_bank3 CHR_TAKER_FR1, CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_chr_flag_bank3 CHR_TAKER_FR2, CHRFLAG3_INVINCIBLE_TO_GUNFIRE // Wait until guns complete or failed, or skip this check if Agent beginloop 0x04 consider_coop_for_p1p2_chr CHR_SELF if_difficulty_lt DIFF_SA, /*goto*/ 0x2e if_objective_complete 0, /*goto*/ 0x2e if_stage_flag_eq STAGEFLAG_AUTOGUN_SWITCH_DESTROYED, TRUE, /*goto*/ 0x2e if_stage_flag_eq STAGEFLAG_00000001, TRUE, /*goto*/ 0x2e reloop 0x04 // Wait until player in foyer area label 0x2e if_chr_in_room CHR_P1P2, 0x00, 0x0006, /*goto*/ 0x2e if_chr_in_room CHR_P1P2, 0x00, 0x0005, /*goto*/ 0x2e endloop 0x04 // Configure FR takers and hostages label 0x2e set_function CHR_TAKER_FR1, FUNC_INIT_FIRINGRANGE_TAKER set_function CHR_TAKER_FR2, FUNC_INIT_FIRINGRANGE_TAKER set_chr_flag_bankx CHR_HOSTAGE_FR1, CHRFLAG0_00002000, BANK_0 set_chr_flag_bankx CHR_HOSTAGE_FR2, CHRFLAG0_00002000, BANK_0 restart_timer // Wait until player in firing range entrance or door is opening beginloop 0x0a consider_coop_for_p1p2_chr CHR_SELF if_chr_in_room CHR_P1P2, 0x00, 0x0007, /*goto*/ 0x08 if_door_state 0x23, DOORSTATE_OPEN | DOORSTATE_CLOSING | DOORSTATE_OPENING, /*goto*/ 0x2f endloop 0x0a // Wait for player to enter room, or 10 seconds label 0x2f restart_timer beginloop 0x71 consider_coop_for_p1p2_chr CHR_SELF if_chr_in_room CHR_P1P2, 0x00, 0x0007, /*goto*/ 0x08 if_timer_gt 600, /*goto*/ 0x08 endloop 0x71 // Unset invincible on hostages and takers label 0x08 destroy_object OBJ_FR_GLASS unset_chr_flag_bank3 CHR_HOSTAGE_FR1, CHRFLAG3_INVINCIBLE_TO_GUNFIRE unset_chr_flag_bank3 CHR_HOSTAGE_FR2, CHRFLAG3_INVINCIBLE_TO_GUNFIRE unset_chr_flag_bank3 CHR_TAKER_FR1, CHRFLAG3_INVINCIBLE_TO_GUNFIRE unset_chr_flag_bank3 CHR_TAKER_FR2, CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_function CHR_SELF, GFUNC_IDLE endfunction func0419_init_firingrange_taker: set_return_function CHR_SELF, GFUNC_UNALERTED set_function CHR_SELF, GFUNC_UNALERTED endfunction func041b_init_hostage_holo: set_var_a 3 set_chr_health CHR_SELF, 1 set_function CHR_SELF, FUNC_HOSTAGE_HOLO endfunction func041a_hostage_holo: set_self_flag_bank3 CHRFLAG3_00000002 set_self_flag_bank3 CHRFLAG3_00040000 set_onshot_function FUNC_HOSTAGE_HOLO if_chr_dying CHR_SELF, /*goto*/ 0x2e if_chr_death_animation_finished CHR_SELF, /*goto*/ 0x2e if_chr_unloaded CHR_SELF, /*goto*/ 0x2e goto_next 0x04 // Dying label 0x2e set_onshot_function GFUNC_IDLE set_function CHR_SELF, GFUNC_IDLE // Alive - wait until holo room door opened beginloop 0x04 consider_coop_for_p1p2_chr CHR_SELF if_door_state 0x43, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x2e if_door_state 0x44, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x2e endloop 0x04 label 0x2e if_objective_complete 0, /*goto*/ 0x2e set_stage_flag STAGEFLAG_VISITED_HOSTAGES_BEFORE_AUTOGUNS label 0x2e assign_sound 0x1b0e, CHANNEL_6 play_sound_from_entity CHANNEL_6, CHR_SELF, 0x0bb8, 0x1770, 0x01 restart_timer // Wait until player in sight, or 2 seconds beginloop 0x0a set_target_chr CHR_JOANNA if_chr_sees_player /*goto*/ 0x08 set_target_chr CHR_VELVET if_chr_sees_player /*goto*/ 0x08 if_timer_gt 120, /*goto*/ 0x08 endloop 0x0a label 0x08 assign_sound 0x1b0f, CHANNEL_7 play_sound_from_entity CHANNEL_7, CHR_SELF, 0x0bb8, 0x1770, 0x01 label 0x08 label 0x08 try_spawn_chr BODY_CIFEMTECH, HEAD_SECRETARY, 0x0104, FUNC_INIT_HOLOCLONE1, 0x00002010, /*goto*/ 0x2e label 0x2e yield yield yield yield yield yield yield yield yield yield try_spawn_chr BODY_CIFEMTECH, HEAD_SECRETARY, 0x0105, FUNC_INIT_HOLOCLONE2, 0x00002010, /*goto*/ 0x2e label 0x2e yield yield yield yield yield yield yield yield yield yield yield try_spawn_chr BODY_CIFEMTECH, HEAD_SECRETARY, 0x0106, FUNC_INIT_HOLOCLONE3, 0x00002010, /*goto*/ 0x2e label 0x2e set_function CHR_TAKER_HOLO1, FUNC_TAKER_HOLO1 set_function CHR_TAKER_HOLO2, FUNC_TAKER_HOLO2 set_function CHR_TAKER_HOLO3, FUNC_TAKER_HOLO3 jog_to_pad 0x0107 beginloop 0x0b if_chr_stopped /*goto*/ 0x08 endloop 0x0b label 0x08 label 0x12 animation ANIM_COWER_0229, -1, -1, 0x100a, CHR_SELF, 2 beginloop 0x10 if_stage_flag_eq STAGEFLAG_HOLO_TAKERS_DEAD, TRUE, /*goto*/ 0x08 if_chr_stopped /*goto*/ 0x2e endloop 0x10 label 0x2e goto_first 0x12 label 0x08 set_function CHR_SELF, FUNC_INIT_SAVED_HOSTAGE endfunction func041c_init_holoclone1: set_chr_alliance CHR_SELF, ALLIANCE_ALLY cmd0145_rebuild_groups cmd0146_rebuild_groups play_sound 0x05bc, CHANNEL_9 set_onshot_function FUNC_HOLOCLONE_ONSHOT set_chr_health CHR_SELF, 1 set_chr_id CHR_HOLOCLONE1 jog_to_pad 0x0108 set_function CHR_SELF, FUNC_HOLOCLONE endfunction func041d_init_holoclone2: set_chr_alliance CHR_SELF, ALLIANCE_ALLY cmd0145_rebuild_groups cmd0146_rebuild_groups play_sound 0x05bc, CHANNEL_5 set_onshot_function FUNC_HOLOCLONE_ONSHOT set_chr_health CHR_SELF, 1 set_chr_id CHR_HOLOCLONE2 jog_to_pad 0x0109 set_function CHR_SELF, FUNC_HOLOCLONE endfunction func041e_init_holoclone3: set_chr_alliance CHR_SELF, ALLIANCE_ALLY cmd0145_rebuild_groups cmd0146_rebuild_groups play_sound 0x05bc, CHANNEL_6 set_onshot_function FUNC_HOLOCLONE_ONSHOT set_chr_health CHR_SELF, 1 set_chr_id CHR_HOLOCLONE3 jog_to_pad 0x010a set_function CHR_SELF, FUNC_HOLOCLONE endfunction func041f_holoclone_onshot: play_sound 0x05bb, CHANNEL_6 drop_gun_and_fade_out set_function CHR_SELF, GFUNC_IDLE endfunction func041f_holoclone: beginloop 0x0b if_chr_stopped /*goto*/ 0x08 endloop 0x0b label 0x08 label 0x12 animation ANIM_COWER_0229, -1, -1, 0x100a, CHR_SELF, 2 beginloop 0x10 if_chr_stopped /*goto*/ 0x2e endloop 0x10 label 0x2e goto_first 0x12 endfunction .macro holo_taker_logic holoclone restart_timer animation ANIM_SURPRISED_0202, 0, -1, 0x0010, CHR_SELF, 2 beginloop 0xba set_target_chr CHR_JOANNA if_chr_sees_player /*goto*/ 0xbb set_target_chr CHR_VELVET if_chr_sees_player /*goto*/ 0xbb if_timer_gt 60, /*goto*/ 0xbb endloop 0xba label 0xbb set_self_flag_bank3 CHRFLAG3_00000040 set_accuracy 50 set_target_chr \holoclone label 0x04 yield try_aim_and_shoot_thing1 0x0220, 0x0000, /*goto*/ 0xb9 label 0xb9 say_quip CHR_JOANNA, 0x00, 0x19, 0x02, 0x01, BANK_0, 0x00, 0x00 try_aim_and_shoot_thing2 0x0200, 0x0000, /*goto*/ 0x0a beginloop 0x0a if_chr_stopped /*goto*/ 0x08 endloop 0x0a label 0x08 set_onshot_function GFUNC_UNALERTED set_return_function CHR_SELF, GFUNC_UNALERTED set_function CHR_SELF, GFUNC_COMBAT_WITH_TARGET_CHR .endm func0420_taker_holo1: set_self_flag_bank3 CHRFLAG3_00040000 holo_taker_logic CHR_HOLOCLONE1 endfunction func0421_taker_holo2: set_self_flag_bank3 CHRFLAG3_00040000 assign_sound 0x025b, CHANNEL_6 play_sound_from_entity CHANNEL_6, CHR_SELF, 0x0bb8, 0x1770, 0x01 holo_taker_logic CHR_HOLOCLONE2 endfunction func0422_taker_holo3: set_self_flag_bank3 CHRFLAG3_00040000 holo_taker_logic CHR_HOLOCLONE3 endfunction func0423_init_shock: set_chr_field_0x35e_0x35f 2, 0x00 set_accuracy 20 set_reaction_speed 70 set_chr_health CHR_SELF, 40 set_armor 0 set_recovery_speed 0 set_shield 90 set_function CHR_SELF, GFUNC_IDLE endfunction func0426_init_saved_hostage: set_onshot_function FUNC_HOSTAGE_THANK_AND_RUN if_chr_death_animation_finished CHR_SELF, /*goto*/ 0x2e if_chr_dying CHR_SELF, /*goto*/ 0x2e if_chr_unloaded CHR_SELF, /*goto*/ 0x2e set_chr_alliance CHR_SELF, 0x80 set_armor 80 set_chr_health CHR_SELF, 1 cmd0145_rebuild_groups cmd0146_rebuild_groups set_function CHR_SELF, FUNC_HOSTAGE_THANK_AND_RUN label 0x2e set_onshot_function GFUNC_IDLE set_function CHR_SELF, GFUNC_IDLE endfunction func0425_hostage_thank_and_run: set_onshot_function FUNC_HOSTAGE_THANK_AND_RUN if_chr_dying CHR_SELF, /*goto*/ 0x2e if_chr_death_animation_finished CHR_SELF, /*goto*/ 0x2e if_chr_unloaded CHR_SELF, /*goto*/ 0x2e goto_next 0x03 label 0x2e set_onshot_function GFUNC_IDLE set_function CHR_SELF, GFUNC_IDLE label 0x03 set_target_chr CHR_VELVET if_chr_sees_player /*goto*/ 0x2e set_follow_chr CHR_JOANNA goto_next 0x08 label 0x2e set_follow_chr CHR_VELVET label 0x08 restart_timer label 0x0a try_face_entity 0x0200, 0x0000, /*goto*/ 0x0b beginloop 0x0b if_timer_gt 60, /*goto*/ 0x08 endloop 0x0b label 0x08 if_sound_finished CHANNEL_6, /*goto*/ 0x08 if_timer_gt 200, /*goto*/ 0x2f goto_first 0x0b label 0x08 play_chr_specific_quip BANK_3, CHANNEL_6 animation ANIM_TALKING_0231, 0, -1, 0x1010, CHR_SELF, 2 label 0x2f restart_timer beginloop 0x71 if_timer_gt 120, /*goto*/ 0x2e endloop 0x71 label 0x2e run_to_pad 0x00b7 beginloop 0x11 if_chr_stopped /*goto*/ 0x10 endloop 0x11 // Unreachable set_target_chr FOLLOW_CHR beginloop 0x10 set_target_chr CHR_JOANNA if_chr_sees_player /*goto*/ 0x2e set_target_chr CHR_COUNTEROP if_chr_sees_player /*goto*/ 0x2e set_target_chr CHR_VELVET if_chr_sees_player /*goto*/ 0x2e if_chr_distance_gt 500, /*goto*/ 0x08 label 0x2e endloop 0x10 label 0x08 unset_self_flag_bank3 CHRFLAG3_KILLCOUNTABLE remove_chr CHR_SELF set_function CHR_SELF, GFUNC_IDLE endfunction func0428_init_drop_devastator: unset_self_flag_bank3 CHRFLAG3_KILLCOUNTABLE set_onshot_function FUNC_HOSTAGE_THANK_AND_RUN set_chr_alliance CHR_SELF, 0x80 set_chr_health CHR_SELF, 40 cmd0145_rebuild_groups cmd0146_rebuild_groups set_function CHR_SELF, FUNC_DROP_DEVASTATOR endfunction func0427_drop_devastator: set_onshot_function FUNC_HOSTAGE_THANK_AND_RUN if_stage_flag_eq STAGEFLAG_DROPPED_DEVASTATOR, TRUE, /*goto*/ 0x2e set_stage_flag STAGEFLAG_DROPPED_DEVASTATOR goto_next 0x08 // Other hostage already dropped Devastator label 0x2e set_function CHR_SELF, FUNC_HOSTAGE_THANK_AND_RUN label 0x08 if_chr_dying CHR_SELF, /*goto*/ 0x2e if_chr_death_animation_finished CHR_SELF, /*goto*/ 0x2e if_chr_unloaded CHR_SELF, /*goto*/ 0x2e goto_next 0x03 label 0x2e set_onshot_function GFUNC_IDLE set_function CHR_SELF, GFUNC_IDLE label 0x03 set_target_chr CHR_VELVET if_chr_sees_player /*goto*/ 0x2e set_follow_chr CHR_JOANNA goto_next 0x08 label 0x2e set_follow_chr CHR_VELVET label 0x08 restart_timer label 0x0a try_face_entity 0x0200, 0x0000, /*goto*/ 0x0b beginloop 0x0b if_timer_gt 60, /*goto*/ 0x08 endloop 0x0b label 0x08 give_object_to_chr OBJ_DEVASTATOR, CHR_SELF yield drop_concealed_items CHR_SELF play_chr_specific_quip BANK_3, CHANNEL_6 animation ANIM_TALKING_0231, 0, -1, 0x1010, CHR_SELF, 2 restart_timer beginloop 0x71 if_timer_gt 120, /*goto*/ 0x2e endloop 0x71 label 0x2e run_to_pad 0x00b7 beginloop 0x11 if_chr_stopped /*goto*/ 0x10 endloop 0x11 // Unreachable set_target_chr FOLLOW_CHR beginloop 0x10 if_chr_sees_player /*goto*/ 0x2e if_chr_distance_gt 500, /*goto*/ 0x08 label 0x2e endloop 0x10 label 0x08 remove_chr CHR_SELF set_function CHR_SELF, GFUNC_IDLE endfunction func100f_check_holo_takers_dead: beginloop 0x03 if_chr_dying CHR_TAKER_HOLO1, /*goto*/ 0x2e if_chr_death_animation_finished CHR_TAKER_HOLO1, /*goto*/ 0x2e if_chr_unloaded CHR_TAKER_HOLO1, /*goto*/ 0x2e reloop 0x03 label 0x2e if_chr_dying CHR_TAKER_HOLO2, /*goto*/ 0x2e if_chr_death_animation_finished CHR_TAKER_HOLO2, /*goto*/ 0x2e if_chr_unloaded CHR_TAKER_HOLO2, /*goto*/ 0x2e reloop 0x03 label 0x2e if_chr_dying CHR_TAKER_HOLO3, /*goto*/ 0x2e if_chr_death_animation_finished CHR_TAKER_HOLO3, /*goto*/ 0x2e if_chr_unloaded CHR_TAKER_HOLO3, /*goto*/ 0x2e endloop 0x03 label 0x2e set_stage_flag STAGEFLAG_HOLO_TAKERS_DEAD set_function CHR_SELF, GFUNC_IDLE endfunction func1010_check_device_takers_dead: beginloop 0x03 if_chr_dying CHR_TAKER_DEVICE_M, /*goto*/ 0x2e if_chr_death_animation_finished CHR_TAKER_DEVICE_M, /*goto*/ 0x2e if_chr_unloaded CHR_TAKER_DEVICE_M, /*goto*/ 0x2e reloop 0x03 label 0x2e if_chr_dying CHR_TAKER_DEVICE_F, /*goto*/ 0x2e if_chr_death_animation_finished CHR_TAKER_DEVICE_F, /*goto*/ 0x2e if_chr_unloaded CHR_TAKER_DEVICE_F, /*goto*/ 0x2e endloop 0x03 label 0x2e set_stage_flag STAGEFLAG_DEVICE_TAKERS_DEAD set_function CHR_SELF, GFUNC_IDLE endfunction func1011_check_info_takers_dead: beginloop 0x03 if_chr_dying CHR_TAKER_INFO_F, /*goto*/ 0x2e if_chr_death_animation_finished CHR_TAKER_INFO_F, /*goto*/ 0x2e if_chr_unloaded CHR_TAKER_INFO_F, /*goto*/ 0x2e reloop 0x03 label 0x2e if_chr_dying CHR_TAKER_INFO_M, /*goto*/ 0x2e if_chr_death_animation_finished CHR_TAKER_INFO_M, /*goto*/ 0x2e if_chr_unloaded CHR_TAKER_INFO_M, /*goto*/ 0x2e endloop 0x03 label 0x2e set_stage_flag STAGEFLAG_INFO_TAKERS_DEAD set_function CHR_SELF, GFUNC_IDLE endfunction func042c_init_hostage_device_f: set_var_a 1 set_chr_health CHR_SELF, 1 set_function CHR_SELF, FUNC_DEVICEROOM_HOSTAGE endfunction func042d_init_hostage_device_m: set_var_a 6 set_chr_health CHR_SELF, 1 set_function CHR_SELF, FUNC_DEVICEROOM_HOSTAGE endfunction func042b_deviceroom_hostage: set_onshot_function FUNC_DEVICEROOM_HOSTAGE if_chr_dying CHR_SELF, /*goto*/ 0x2e if_chr_death_animation_finished CHR_SELF, /*goto*/ 0x2e if_chr_unloaded CHR_SELF, /*goto*/ 0x2e goto_next 0x12 label 0x2e set_onshot_function GFUNC_IDLE set_function CHR_SELF, GFUNC_IDLE label 0x12 set_target_chr CHR_JOANNA if_chr_sees_player /*goto*/ 0x2e set_target_chr CHR_VELVET if_chr_sees_player /*goto*/ 0x2e stop_chr goto_next 0x10 label 0x2e animation ANIM_SURRENDER_002E, 0, 193, 0x1010, CHR_SELF, 2 beginloop 0x10 if_stage_flag_eq STAGEFLAG_DEVICE_TAKERS_DEAD, TRUE, /*goto*/ 0x08 if_chr_stopped /*goto*/ 0x2e endloop 0x10 label 0x2e goto_first 0x12 label 0x08 set_function CHR_SELF, FUNC_INIT_SAVED_HOSTAGE endfunction func042f_init_taker_device_m: set_chr_health CHR_SELF, 1 set_function CHR_SELF, FUNC_TAKER_DEVICE_M endfunction func042e_taker_device_m: set_onshot_function FUNC_TAKER_DEVICE_M if_chr_dying CHR_SELF, /*goto*/ 0x2e if_chr_dying CHR_SELF, /*goto*/ 0x2e if_chr_dying CHR_SELF, /*goto*/ 0x2e goto_next 0x08 // Dying label 0x2e set_onshot_function GFUNC_IDLE set_function CHR_SELF, GFUNC_IDLE // Alive label 0x08 set_self_flag_bank3 CHRFLAG3_00020000 beginloop 0x0a consider_coop_for_p1p2_chr CHR_SELF set_target_chr CHR_P1P2 if_target_chr_in_sight /*goto*/ 0x08 if_alertness 99, OPERATOR_GREATER_THAN, /*goto*/ 0x08 endloop 0x0a label 0x08 if_objective_complete 0, /*goto*/ 0x2e set_stage_flag STAGEFLAG_VISITED_HOSTAGES_BEFORE_AUTOGUNS label 0x2e set_group_alertness 100 assign_sound 0x025b, CHANNEL_6 play_sound_from_entity CHANNEL_6, CHR_SELF, 0x0bb8, 0x1770, 0x01 restart_timer animation ANIM_SURPRISED_0202, 0, -1, 0x0010, CHR_SELF, 2 beginloop 0xba if_timer_gt 60, /*goto*/ 0xbb endloop 0xba label 0xbb set_self_flag_bank3 CHRFLAG3_00000040 set_accuracy 50 set_target_chr CHR_HOSTAGE_DEVICE_M set_function CHR_SELF, FUNC_TAKER_ATTACK endfunction func0431_init_taker_device_f: set_chr_health CHR_SELF, 1 set_function CHR_SELF, FUNC_TAKER_DEVICE_F endfunction func0430_taker_device_f: set_onshot_function FUNC_TAKER_DEVICE_F if_chr_dying CHR_SELF, /*goto*/ 0x2e if_chr_dying CHR_SELF, /*goto*/ 0x2e if_chr_dying CHR_SELF, /*goto*/ 0x2e goto_next 0x08 // Dying label 0x2e set_onshot_function GFUNC_IDLE set_function CHR_SELF, GFUNC_IDLE // Alive label 0x08 set_self_flag_bank3 CHRFLAG3_00020000 beginloop 0x0a consider_coop_for_p1p2_chr CHR_SELF set_target_chr CHR_P1P2 if_target_chr_in_sight /*goto*/ 0x08 if_alertness 99, OPERATOR_GREATER_THAN, /*goto*/ 0x08 endloop 0x0a label 0x08 set_group_alertness 100 set_self_flag_bankx CHRFLAG1_00000020, BANK_1 restart_timer animation ANIM_RELOAD_0209, 0, -1, 0x1010, CHR_SELF, 2 beginloop 0xbc if_self_flag_bankx_eq CHRFLAG1_00000020, FALSE, BANK_1, /*goto*/ 0x08 if_timer_lt 120, /*goto*/ 0x08 assign_sound 0x80f6, CHANNEL_7 play_sound_from_entity CHANNEL_7, CHR_SELF, 0x0bb8, 0x1770, 0x01 unset_self_flag_bankx CHRFLAG1_00000020, BANK_1 label 0x08 if_chr_stopped /*goto*/ 0x2e endloop 0xbc label 0x2e set_self_flag_bank3 CHRFLAG3_00000040 set_accuracy 50 set_target_chr CHR_HOSTAGE_DEVICE_F set_function CHR_SELF, FUNC_TAKER_ATTACK endfunction func0432_taker_attack: set_onshot_function FUNC_TAKER_ATTACK if_chr_death_animation_finished CHR_SELF, /*goto*/ 0x2e if_chr_dying CHR_SELF, /*goto*/ 0x2e if_chr_unloaded CHR_SELF, /*goto*/ 0x2e goto_next 0x08 // Dying label 0x2e set_onshot_function GFUNC_IDLE set_function CHR_SELF, GFUNC_IDLE // Alive label 0x08 if_just_injured CHR_SELF, /*goto*/ 0x2e goto_next 0x04 // Injured label 0x2e restart_timer beginloop 0x71 if_chr_stopped /*goto*/ 0x04 if_timer_gt 180, /*goto*/ 0x04 endloop 0x71 // Healthy label 0x04 yield try_aim_and_shoot_thing1 0x0220, 0x0000, /*goto*/ 0xb9 label 0xb9 say_quip CHR_JOANNA, 0x00, 0x19, 0x02, 0x01, BANK_0, 0x00, 0x00 try_aim_and_shoot_thing2 0x0200, 0x0000, /*goto*/ 0x0a beginloop 0x0a if_chr_stopped /*goto*/ 0x08 endloop 0x0a label 0x08 label 0x0f set_onshot_function GFUNC_UNALERTED set_return_function CHR_SELF, GFUNC_UNALERTED set_function CHR_SELF, GFUNC_COMBAT_WITH_TARGET_CHR endfunction func0434_init_hostage_info_m: set_var_a 2 set_armor 10 set_chr_health CHR_SELF, 1 set_function CHR_SELF, FUNC_INFOROOM_HOSTAGE endfunction func0435_init_hostage_info_f: set_var_a 8 set_armor 10 set_chr_health CHR_SELF, 1 set_function CHR_SELF, FUNC_INFOROOM_HOSTAGE endfunction func0433_inforoom_hostage: set_onshot_function FUNC_INFOROOM_HOSTAGE if_chr_dying CHR_SELF, /*goto*/ 0x2e if_chr_death_animation_finished CHR_SELF, /*goto*/ 0x2e if_chr_unloaded CHR_SELF, /*goto*/ 0x2e goto_next 0x04 label 0x2e set_onshot_function GFUNC_IDLE set_function CHR_SELF, GFUNC_IDLE beginloop 0x04 if_self_flag_bankx_eq CHRFLAG0_00002000, TRUE, BANK_0, /*goto*/ 0x08 endloop 0x04 label 0x08 if_objective_complete 0, /*goto*/ 0x2e set_stage_flag STAGEFLAG_VISITED_HOSTAGES_BEFORE_AUTOGUNS // This flag is assigned at random to one of the two hostages label 0x2e if_self_flag_bankx_eq CHRFLAG0_00000004, TRUE, BANK_0, /*goto*/ 0x0e // Flag not set - run and cower run_to_pad 0x010d beginloop 0x0a if_stage_flag_eq STAGEFLAG_INFO_TAKERS_DEAD, TRUE, /*goto*/ 0x0d if_chr_stopped /*goto*/ 0x12 endloop 0x0a label 0x12 animation ANIM_COWER_0229, -1, -1, 0x100a, CHR_SELF, 2 beginloop 0x10 if_stage_flag_eq STAGEFLAG_INFO_TAKERS_DEAD, TRUE, /*goto*/ 0x0d if_chr_stopped /*goto*/ 0x2e endloop 0x10 label 0x2e goto_first 0x12 // Flag was set - fight hostage taker label 0x0e if_enemy_distance_lt_and_los 2540, /*goto*/ 0x2e goto_next 0x0d label 0x2e unset_self_flag_bankx CHRFLAG0_00000004, BANK_0 set_onshot_function FUNC_INFOROOM_HOSTAGE set_return_function CHR_SELF, FUNC_INFOROOM_HOSTAGE set_function CHR_SELF, GFUNC_COMBAT_WITH_TARGET_CHR label 0x0d if_kill_count_gt 1, /*goto*/ 0x2e set_function CHR_SELF, FUNC_INIT_DROP_DEVASTATOR label 0x2e set_function CHR_SELF, FUNC_INIT_SAVED_HOSTAGE endfunction func1012_info_room: beginloop 0x04 if_door_state 0x19, DOORSTATE_OPEN, /*goto*/ 0x2e endloop 0x04 // One hostage is randomly given chrflag0_00000004, which allows that // hostage to fight the taker. label 0x2e call_rng if_rand_gt 128, /*goto*/ 0x0a set_chr_flag_bankx CHR_HOSTAGE_INFO_M, CHRFLAG0_00002000, BANK_0 set_chr_flag_bankx CHR_HOSTAGE_INFO_F, CHRFLAG0_00002000, BANK_0 set_chr_flag_bankx CHR_HOSTAGE_INFO_M, CHRFLAG0_00000004, BANK_0 set_chr_health CHR_TAKER_INFO_M, 10 goto_next 0x2e label 0x0a set_chr_flag_bankx CHR_HOSTAGE_INFO_M, CHRFLAG0_00002000, BANK_0 set_chr_flag_bankx CHR_HOSTAGE_INFO_F, CHRFLAG0_00002000, BANK_0 set_chr_flag_bankx CHR_HOSTAGE_INFO_F, CHRFLAG0_00000004, BANK_0 set_chr_health CHR_TAKER_INFO_F, 10 label 0x2e restart_timer beginloop 0x0b if_timer_gt 60, /*goto*/ 0x08 endloop 0x0b label 0x08 set_chr_flag_bankx CHR_TAKER_INFO_F, CHRFLAG0_00002000, BANK_0 set_chr_flag_bankx CHR_TAKER_INFO_M, CHRFLAG0_00002000, BANK_0 set_function CHR_SELF, GFUNC_IDLE endfunction func0437_init_taker_info_m: set_chr_health CHR_SELF, 1 set_function CHR_SELF, FUNC_TAKER_INFO_M endfunction func0436_taker_info_m: set_onshot_function FUNC_TAKER_INFO_M if_chr_death_animation_finished CHR_SELF, /*goto*/ 0x2e if_chr_dying CHR_SELF, /*goto*/ 0x2e if_chr_unloaded CHR_SELF, /*goto*/ 0x2e goto_next 0x08 // Dying label 0x2e set_onshot_function GFUNC_IDLE set_function CHR_SELF, GFUNC_IDLE // Alive label 0x08 beginloop 0x0a if_self_flag_bankx_eq CHRFLAG0_00002000, TRUE, BANK_0, /*goto*/ 0x08 endloop 0x0a label 0x08 set_self_flag_bank3 CHRFLAG3_00000040 set_accuracy 50 set_target_chr CHR_HOSTAGE_INFO_M set_function CHR_SELF, FUNC_TAKER_ATTACK endfunction func0439_init_taker_info_f: set_chr_health CHR_SELF, 1 set_function CHR_SELF, FUNC_TAKER_INFO_F endfunction func0438_taker_info_f: set_onshot_function FUNC_TAKER_INFO_F if_chr_death_animation_finished CHR_SELF, /*goto*/ 0x2e if_chr_dying CHR_SELF, /*goto*/ 0x2e if_chr_unloaded CHR_SELF, /*goto*/ 0x2e goto_next 0x08 // Dying label 0x2e set_onshot_function GFUNC_IDLE set_function CHR_SELF, GFUNC_IDLE // Alive label 0x08 beginloop 0x0a if_self_flag_bankx_eq CHRFLAG0_00002000, TRUE, BANK_0, /*goto*/ 0x08 endloop 0x0a label 0x08 set_self_flag_bank3 CHRFLAG3_00000040 set_accuracy 20 set_target_chr CHR_HOSTAGE_INFO_F set_function CHR_SELF, FUNC_TAKER_ATTACK endfunction func1013_check_hostages_saved: yield yield beginloop 0x0a if_chr_dying CHR_HOSTAGE_FR1, /*goto*/ 0x2f if_chr_death_animation_finished CHR_HOSTAGE_FR1, /*goto*/ 0x2f if_chr_unloaded CHR_HOSTAGE_FR1, /*goto*/ 0x2f goto_next 0x2e // FR1 hostage dead label 0x2f if_chr_dying CHR_HOSTAGE_FR2, /*goto*/ 0x2f if_chr_death_animation_finished CHR_HOSTAGE_FR2, /*goto*/ 0x2f if_chr_unloaded CHR_HOSTAGE_FR2, /*goto*/ 0x2f // FR1 hostage alive label 0x2e if_chr_dying CHR_TAKER_FR1, /*goto*/ 0x2e if_chr_death_animation_finished CHR_TAKER_FR1, /*goto*/ 0x2e if_chr_unloaded CHR_TAKER_FR1, /*goto*/ 0x2e endloop 0x0a // FR1 hostage alive and FR1 taker dead label 0x2e if_chr_dying CHR_TAKER_FR2, /*goto*/ 0x2e if_chr_death_animation_finished CHR_TAKER_FR2, /*goto*/ 0x2e if_chr_unloaded CHR_TAKER_FR2, /*goto*/ 0x2e goto_first 0x0a // Both FR hostages dead label 0x2f // Both FR takers dead label 0x2e if_stage_flag_eq STAGEFLAG_DEVICE_TAKERS_DEAD, TRUE, /*goto*/ 0x2e if_chr_dying CHR_HOSTAGE_DEVICE_F, /*goto*/ 0x2f if_chr_death_animation_finished CHR_HOSTAGE_DEVICE_F, /*goto*/ 0x2f if_chr_unloaded CHR_HOSTAGE_DEVICE_F, /*goto*/ 0x2f goto_first 0x0a label 0x2f if_chr_dying CHR_HOSTAGE_DEVICE_M, /*goto*/ 0x2e if_chr_death_animation_finished CHR_HOSTAGE_DEVICE_M, /*goto*/ 0x2e if_chr_unloaded CHR_HOSTAGE_DEVICE_M, /*goto*/ 0x2e goto_first 0x0a // FR and device room done label 0x2e if_stage_flag_eq STAGEFLAG_INFO_TAKERS_DEAD, TRUE, /*goto*/ 0x2e if_chr_dying CHR_HOSTAGE_INFO_M, /*goto*/ 0x2f if_chr_death_animation_finished CHR_HOSTAGE_INFO_M, /*goto*/ 0x2f if_chr_unloaded CHR_HOSTAGE_INFO_M, /*goto*/ 0x2f goto_first 0x0a label 0x2f if_chr_dying CHR_HOSTAGE_INFO_F, /*goto*/ 0x2e if_chr_death_animation_finished CHR_HOSTAGE_INFO_F, /*goto*/ 0x2e if_chr_unloaded CHR_HOSTAGE_INFO_F, /*goto*/ 0x2e goto_first 0x0a // FR, device and info rooms done label 0x2e if_stage_flag_eq STAGEFLAG_HOLO_TAKERS_DEAD, TRUE, /*goto*/ 0x2e if_chr_dying CHR_HOSTAGE_HOLO, /*goto*/ 0x2e if_chr_death_animation_finished CHR_HOSTAGE_HOLO, /*goto*/ 0x2e if_chr_unloaded CHR_HOSTAGE_HOLO, /*goto*/ 0x2e goto_first 0x0a // All rooms done label 0x2e if_stage_flag_eq STAGEFLAG_TOO_MANY_HOSTAGES_KILLED, TRUE, /*goto*/ 0x2e message CHR_JOANNA, 0x2211 // "Hostages have been saved." set_stage_flag STAGEFLAG_ENOUGH_HOSTAGES_SAVED label 0x2e set_function CHR_SELF, GFUNC_IDLE endfunction func1014_carrington_messages: restart_timer beginloop 0x03 if_chr_dying CHR_CARRINGTON, /*goto*/ 0xd9 if_stage_flag_eq STAGEFLAG_INTRO_FINISHED, TRUE, /*goto*/ 0x2e endloop 0x03 .macro carrington_sanity_checks if_chr_dying CHR_CARRINGTON, /*goto*/ 0xd9 if_chr_dying CHR_JOANNA, /*goto*/ 0x05 goto_next 0x06 label 0x05 if_chr_death_animation_finished CHR_VELVET, /*goto*/ 0xd9 label 0x06 .endm label 0x2e yield label 0x08 restart_timer beginloop 0x0a carrington_sanity_checks if_difficulty_lt DIFF_SA, /*goto*/ 0x08 if_timer_gt 180, /*goto*/ 0x08 endloop 0x0a label 0x08 restart_timer if_difficulty_lt DIFF_SA, /*goto*/ 0x0d speak CHR_JOANNA, 0x2214, 0x8193, CHANNEL_6, COLOR_06_WHITE // "Joanna - we're under attack." beginloop 0x0b carrington_sanity_checks if_timer_gt 180, /*goto*/ 0x08 endloop 0x0b label 0x08 speak CHR_JOANNA, 0x2215, 0x8194, CHANNEL_6, COLOR_06_WHITE // "Get the guns back on line - hurry." beginloop 0x0c carrington_sanity_checks if_timer_gt 180, /*goto*/ 0x0d endloop 0x0c beginloop 0x0d set_stage_flag STAGEFLAG_TRIGGER_AUTODEFENSES_MSG carrington_sanity_checks if_difficulty_lt DIFF_SA, /*goto*/ 0x08 if_objective_complete 0, /*goto*/ 0x08 endloop 0x0d label 0x08 set_chr_flag_bank3 CHR_CARRINGTON, CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_chr_flag_bank3 CHR_CARRINGTON, CHRFLAG3_HIDDEN unlock_door 0x23, 0x04 unlock_door 0x24, 0x04 restart_timer beginloop 0xbd carrington_sanity_checks if_timer_gt 180, /*goto*/ 0xda endloop 0xbd label 0xda restart_timer speak CHR_JOANNA, 0x2216, 0x8195, CHANNEL_6, COLOR_06_WHITE // "The Skedar have taken hostages." beginloop 0x0e carrington_sanity_checks if_timer_gt 180, /*goto*/ 0x08 endloop 0x0e label 0x08 restart_timer speak CHR_JOANNA, 0x2217, 0x8196, CHANNEL_6, COLOR_06_WHITE // "Get up to the offices and save them." beginloop 0x0f carrington_sanity_checks if_timer_gt 180, /*goto*/ 0x10 endloop 0x0f label 0x10 set_stage_flag STAGEFLAG_TRIGGER_COUNTINGONME_MSG yield carrington_sanity_checks if_objective_complete 1, /*goto*/ 0x08 goto_first 0x10 label 0x08 restart_timer beginloop 0xbe carrington_sanity_checks if_timer_gt 300, /*goto*/ 0x08 reloop 0xbe label 0x08 if_sound_finished CHANNEL_6, /*goto*/ 0x08 endloop 0xbe label 0x08 restart_timer speak CHR_JOANNA, 0x2218, 0x8197, CHANNEL_6, COLOR_06_WHITE // "They're using a new form of shield technology." beginloop 0x11 carrington_sanity_checks if_timer_gt 180, /*goto*/ 0x08 endloop 0x11 label 0x08 restart_timer speak CHR_JOANNA, 0x2219, 0x8198, CHANNEL_6, COLOR_06_WHITE // "Foster was working on a new weapon which may be us..." beginloop 0x12 carrington_sanity_checks if_timer_gt 180, /*goto*/ 0xbf endloop 0x12 beginloop 0xbf carrington_sanity_checks if_objective_complete 2, /*goto*/ 0x08 endloop 0xbf label 0x08 if_difficulty_lt DIFF_PA, /*goto*/ 0xdb restart_timer beginloop 0xc0 carrington_sanity_checks if_timer_gt 180, /*goto*/ 0x08 endloop 0xc0 label 0x08 restart_timer speak CHR_JOANNA, 0x221a, 0x8199, CHANNEL_6, COLOR_06_WHITE // "Damn it. My office... If they get access..." beginloop 0xc1 carrington_sanity_checks if_timer_gt 240, /*goto*/ 0x08 endloop 0xc1 label 0x08 restart_timer speak CHR_JOANNA, 0x221b, 0x819a, CHANNEL_6, COLOR_06_WHITE // "Get there first, Jo, and destroy the files." beginloop 0xc2 carrington_sanity_checks if_timer_gt 180, /*goto*/ 0xc3 endloop 0xc2 beginloop 0xc3 carrington_sanity_checks if_objective_complete 3, /*goto*/ 0x08 endloop 0xc3 label 0x08 label 0xdb // Wait until no one in skedar shuttle area beginloop 0x71 if_chr_in_room CHR_JOANNA, 0x00, 0x0045, /*goto*/ 0x2e if_chr_in_room CHR_JOANNA, 0x00, 0x0047, /*goto*/ 0x2e if_chr_in_room CHR_JOANNA, 0x00, 0x004d, /*goto*/ 0x2e if_chr_in_room CHR_JOANNA, 0x00, 0x0055, /*goto*/ 0x2e if_chr_in_room CHR_JOANNA, 0x00, 0x0046, /*goto*/ 0x2e if_chr_death_animation_finished CHR_VELVET, /*goto*/ 0xe5 if_chr_in_room CHR_VELVET, 0x00, 0x0045, /*goto*/ 0x2e if_chr_in_room CHR_VELVET, 0x00, 0x0047, /*goto*/ 0x2e if_chr_in_room CHR_VELVET, 0x00, 0x004d, /*goto*/ 0x2e if_chr_in_room CHR_VELVET, 0x00, 0x0055, /*goto*/ 0x2e if_chr_in_room CHR_VELVET, 0x00, 0x0046, /*goto*/ 0x2e label 0xe5 if_chr_death_animation_finished CHR_COUNTEROP, /*goto*/ 0xe5 if_chr_in_room CHR_COUNTEROP, 0x00, 0x0045, /*goto*/ 0x2e if_chr_in_room CHR_COUNTEROP, 0x00, 0x0047, /*goto*/ 0x2e if_chr_in_room CHR_COUNTEROP, 0x00, 0x004d, /*goto*/ 0x2e if_chr_in_room CHR_COUNTEROP, 0x00, 0x0055, /*goto*/ 0x2e if_chr_in_room CHR_COUNTEROP, 0x00, 0x0046, /*goto*/ 0x2e label 0xe5 goto_next 0x08 label 0x2e endloop 0x71 label 0x08 restart_timer beginloop 0xc4 carrington_sanity_checks if_timer_gt 180, /*goto*/ 0x08 endloop 0xc4 label 0x08 restart_timer speak CHR_JOANNA, 0x221c, 0x819b, CHANNEL_6, COLOR_06_WHITE // "Things are desperate. They've planted a bomb." beginloop 0xc5 carrington_sanity_checks if_timer_gt 180, /*goto*/ 0x08 endloop 0xc5 label 0x08 restart_timer speak CHR_JOANNA, 0x221d, 0x819c, CHANNEL_6, COLOR_06_WHITE // "Find it and get it out of the building." beginloop 0xc6 carrington_sanity_checks if_timer_gt 180, /*goto*/ 0x08 endloop 0xc6 label 0x08 play_x_music CHANNEL_10, 120 set_countdown_timer 120 show_countdown_timer start_countdown_timer beginloop 0xc7 if_stage_flag_eq STAGEFLAG_TRIGGER_SHUTTLE_TAKEOFF, TRUE, /*goto*/ 0x2e if_countdown_timer_lt 1, /*goto*/ 0x08 endloop 0xc7 label 0x08 set_stage_flag STAGEFLAG_BOMB_EXPLODING_ON_GROUND hide_countdown_timer label 0x2e restart_timer beginloop 0xc8 if_timer_gt 300, /*goto*/ 0x2e endloop 0xc8 label 0x2e carrington_sanity_checks restart_timer speak CHR_JOANNA, 0x2220, 0x819d, CHANNEL_6, COLOR_06_WHITE // "Well done, Joanna. We're nearly clear..." beginloop 0xc9 if_timer_gt 180, /*goto*/ 0x08 endloop 0xc9 label 0x08 carrington_sanity_checks speak CHR_JOANNA, 0x2221, 0x819e, CHANNEL_6, COLOR_06_WHITE // "The last dropship is waiting for you. Hurry." beginloop 0xca if_timer_gt 180, /*goto*/ 0xcb endloop 0xca beginloop 0xcb consider_coop_for_p1p2_chr CHR_SELF if_all_objectives_complete /*goto*/ 0x2e reloop 0xcb label 0x2e if_chr_in_room CHR_P1P2, 0x00, 0x0054, /*goto*/ 0x2e if_chr_in_room CHR_P1P2, 0x00, 0x0053, /*goto*/ 0x2e endloop 0xcb label 0x2e if_chr_death_animation_finished CHR_JOANNA, /*goto*/ 0x2e if_chr_dying CHR_JOANNA, /*goto*/ 0x2e if_chr_unloaded CHR_JOANNA, /*goto*/ 0x2e goto_next 0x08 label 0x2e if_chr_death_animation_finished CHR_VELVET, /*goto*/ 0x2e if_chr_dying CHR_VELVET, /*goto*/ 0x2e if_chr_unloaded CHR_VELVET, /*goto*/ 0x2e goto_next 0x08 label 0x2e end_level set_function CHR_SELF, GFUNC_IDLE label 0x08 set_invincible CHR_JOANNA set_function CHR_SELF, 0x0418 label 0xd9 set_function CHR_SELF, GFUNC_IDLE endfunction func1015_firingrange_pc: beginloop 0x0a consider_coop_for_p1p2_chr CHR_SELF if_chr_activated_object CHR_P1P2, OBJ_FR_PC, /*goto*/ 0x08 if_object_in_good_condition OBJ_FR_PC, /*goto*/ 0x2e goto_next 0x2f label 0x2e reloop 0x0a label 0x2f message CHR_JOANNA, 0x2222 // "Critical mission object has been destroyed." set_stage_flag STAGEFLAG_FR_PC_DESTROYED set_function CHR_SELF, GFUNC_IDLE label 0x08 play_sound 0x8116, -1 if_objective_complete 1, /*goto*/ 0x08 message CHR_P1P2, 0x221e // "Access denied - authorization failure." restart_timer beginloop 0x0b if_timer_gt 120, /*goto*/ 0x2e endloop 0x0b label 0x2e endloop 0x0a label 0x08 message CHR_P1P2, 0x221f // "Emergency overrides have been engaged." unset_object_flag_bank0 OBJ_RCP120, OBJECTFLAG0_00100000 unset_object_flag_bank0 OBJ_RCP120_GLASS, OBJECTFLAG0_INVINCIBLE destroy_object OBJ_RCP120_GLASS set_function CHR_SELF, GFUNC_IDLE endfunction .macro topspawner_logic initfunc clonefunc set_self_flag_bank3 CHRFLAG3_00000002 set_self_flag_bank3 CHRFLAG3_HIDDEN set_self_flag_bank3 CHRFLAG3_00040000 beginloop 0x04 if_objective_complete 1, /*goto*/ 0x2e reloop 0x04 label 0x2e dprint "OBJECTIVE DONE\n" if_never_been_onscreen /*goto*/ 0x4f if_chr_sees_player /*goto*/ 0x0a reloop 0x04 label 0x0a set_function CHR_SELF, \clonefunc label 0x4f unset_self_flag_bank3 CHRFLAG3_HIDDEN if_chr_death_animation_finished CHR_CLONE, /*goto*/ 0x4f goto_first 0x04 label 0x4f try_spawn_clone2 CHR_SELF, \initfunc, 0x00000000, /*goto*/ 0x2e set_function CHR_SELF, \clonefunc label 0x2e yield endloop 0x04 .endm .macro inittopclone_logic templatechr clonefunc set_chr_field_0x35e_0x35f 2, 0x00 set_accuracy 20 set_reaction_speed 70 set_chr_health CHR_SELF, 40 set_armor 0 set_recovery_speed 0 set_shield 90 set_self_flag_bankx CHRFLAG1_00080000, BANK_1 label 0x04 try_inherit_properties \templatechr, /*goto*/ 0x08 label 0x08 set_chr_alliance CHR_SELF, ALLIANCE_ENEMY cmd0145_rebuild_groups cmd0146_rebuild_groups set_function CHR_SELF, \clonefunc .endm // Spawner at top of ramp at start func040a_spawner4: topspawner_logic FUNC_INIT_CLONE4, FUNC_CLONE4 endfunction func040c_init_clone4: inittopclone_logic 0x11, FUNC_CLONE4 endfunction func040b_clone4: set_target_chr CHR_JOANNA try_run_to_target_chr /*goto*/ 0x2e label 0x2e set_function CHR_SELF, GFUNC_ALERTED endfunction // Spawner at helipad func040d_spawner5: topspawner_logic FUNC_INIT_CLONE5, FUNC_CLONE5 endfunction func040f_init_clone5: inittopclone_logic 0x12, FUNC_CLONE5 endfunction func040e_clone5: call_rng if_rand_gt 128, /*goto*/ 0x08 run_to_pad 0x005b goto_next 0x2e label 0x08 run_to_pad 0x0069 label 0x2e set_return_function CHR_SELF, FUNC_CLONE5 set_function CHR_SELF, GFUNC_UNALERTED endfunction /** * When the autoguns are completed, the game removes a single shock guard from * the tunnels area. * * Looks like the intention is to remove the bottom spawners once the autogun * objective is done, then remove the top spawners once the hostages are done, * but due to changed chr IDs and a probable incorrect goto, this function * fails pretty bad at achieving this. */ func1016_remove_spawners: beginloop 0x0a if_difficulty_lt DIFF_SA, /*goto*/ 0x2e if_objective_complete 0, /*goto*/ 0x2e endloop 0x0a // Unreachable label 0x08 remove_chr 0x0c remove_chr 0x0e remove_chr 0x10 beginloop 0x0b if_objective_complete 1, /*goto*/ 0x2e endloop 0x0b // Agent, or autoguns complete label 0x2e remove_chr 0x0b // invalid chr ID remove_chr 0x0d // black guard remove_chr 0x0f // invalid chr ID beginloop 0x0c if_objective_complete 2, /*goto*/ 0x2e endloop 0x0c label 0x2e label 0x0d set_function CHR_SELF, GFUNC_IDLE endfunction // Spawner outside Jo's office func0410_spawner6: set_self_flag_bank3 CHRFLAG3_00000002 set_self_flag_bank3 CHRFLAG3_HIDDEN set_self_flag_bank3 CHRFLAG3_00040000 beginloop 0x04 consider_coop_for_p1p2_chr CHR_SELF if_objective_complete 2, /*goto*/ 0x2e reloop 0x04 label 0x2e if_chr_in_room CHR_P1P2, 0x00, 0x000c, /*goto*/ 0x2e reloop 0x04 label 0x2e dprint "OBJECTIVE DONE\n" if_never_been_onscreen /*goto*/ 0x4f if_chr_sees_player /*goto*/ 0x0a reloop 0x04 label 0x0a set_function CHR_SELF, FUNC_CLONE6 label 0x4f if_chr_death_animation_finished CHR_CLONE, /*goto*/ 0x4f reloop 0x04 label 0x4f try_spawn_clone2 CHR_SELF, FUNC_INIT_CLONE6, 0x00000000, /*goto*/ 0x2e set_function CHR_SELF, FUNC_CLONE6 label 0x2e yield endloop 0x04 endfunction func0412_init_clone6: inittopclone_logic 0x13, FUNC_CLONE6 endfunction func0411_clone6: set_target_chr CHR_JOANNA try_run_to_target_chr /*goto*/ 0x2e label 0x2e set_function CHR_SELF, GFUNC_ALERTED endfunction func1022_skedar_shuttle: beginloop 0x12 if_difficulty_lt DIFF_PA, /*goto*/ 0x2e if_objective_complete 3, /*goto*/ 0x08 reloop 0x12 label 0x2e if_objective_complete 2, /*goto*/ 0x08 endloop 0x12 label 0x08 beginloop 0x71 if_chr_in_room CHR_JOANNA, 0x00, 0x0045, /*goto*/ 0x2e if_chr_in_room CHR_JOANNA, 0x00, 0x0047, /*goto*/ 0x2e if_chr_in_room CHR_JOANNA, 0x00, 0x004d, /*goto*/ 0x2e if_chr_in_room CHR_JOANNA, 0x00, 0x0055, /*goto*/ 0x2e if_chr_in_room CHR_JOANNA, 0x00, 0x0046, /*goto*/ 0x2e if_chr_death_animation_finished CHR_VELVET, /*goto*/ 0xe5 if_chr_in_room CHR_VELVET, 0x00, 0x0045, /*goto*/ 0x2e if_chr_in_room CHR_VELVET, 0x00, 0x0047, /*goto*/ 0x2e if_chr_in_room CHR_VELVET, 0x00, 0x004d, /*goto*/ 0x2e if_chr_in_room CHR_VELVET, 0x00, 0x0055, /*goto*/ 0x2e if_chr_in_room CHR_VELVET, 0x00, 0x0046, /*goto*/ 0x2e label 0xe5 if_chr_death_animation_finished CHR_COUNTEROP, /*goto*/ 0xe5 if_chr_in_room CHR_COUNTEROP, 0x00, 0x0045, /*goto*/ 0x2e if_chr_in_room CHR_COUNTEROP, 0x00, 0x0047, /*goto*/ 0x2e if_chr_in_room CHR_COUNTEROP, 0x00, 0x004d, /*goto*/ 0x2e if_chr_in_room CHR_COUNTEROP, 0x00, 0x0055, /*goto*/ 0x2e if_chr_in_room CHR_COUNTEROP, 0x00, 0x0046, /*goto*/ 0x2e label 0xe5 goto_next 0x08 label 0x2e endloop 0x71 label 0x08 show_object OBJ_SKEDAR_SHUTTLE set_object_flag_bank1 OBJ_SKEDAR_SHUTTLE, OBJECTFLAG1_04000000 set_object_flag_bank2 OBJ_SKEDAR_SHUTTLE, OBJECTFLAG2_00000010 object_do_animation 0x045a, OBJ_SKEDAR_SHUTTLE, 0x04ff, 0xff set_object_part_visible OBJ_SKEDAR_SHUTTLE, FALSE set_object_flag_bank0 OBJ_SKEDAR_SHUTTLE, OBJECTFLAG0_00000100 unset_chr_flag_bank3 CHR_BLONDE1, CHRFLAG3_HIDDEN unset_chr_flag_bank3 CHR_BLONDE2, CHRFLAG3_HIDDEN unset_chr_flag_bank3 CHR_BLONDE3, CHRFLAG3_HIDDEN unset_chr_flag_bank3 CHR_BLONDE4, CHRFLAG3_HIDDEN unset_chr_flag_bank3 CHR_BLONDE5, CHRFLAG3_HIDDEN unset_chr_flag_bank3 CHR_BLONDE6, CHRFLAG3_HIDDEN unset_chr_flag_bank3 CHR_BLONDE1, CHRFLAG3_INVINCIBLE_TO_GUNFIRE unset_chr_flag_bank3 CHR_BLONDE2, CHRFLAG3_INVINCIBLE_TO_GUNFIRE unset_chr_flag_bank3 CHR_BLONDE3, CHRFLAG3_INVINCIBLE_TO_GUNFIRE unset_chr_flag_bank3 CHR_BLONDE4, CHRFLAG3_INVINCIBLE_TO_GUNFIRE unset_chr_flag_bank3 CHR_BLONDE5, CHRFLAG3_INVINCIBLE_TO_GUNFIRE unset_chr_flag_bank3 CHR_BLONDE6, CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_function CHR_BLONDE1, FUNC_INIT_BLONDE set_function CHR_BLONDE2, FUNC_INIT_BLONDE set_function CHR_BLONDE3, FUNC_INIT_BLONDE set_function CHR_BLONDE4, FUNC_INIT_BLONDE set_function CHR_BLONDE5, FUNC_INIT_BLONDE set_function CHR_BLONDE6, FUNC_INIT_BLONDE beginloop 0x04 if_stage_flag_eq STAGEFLAG_BOMB_EXPLODING_ON_GROUND, TRUE, /*goto*/ 0x2e if_stage_flag_eq STAGEFLAG_TRIGGER_SHUTTLE_TAKEOFF, TRUE, /*goto*/ 0x0a object_do_animation 0x045a, OBJ_SKEDAR_SHUTTLE, 0x04ff, 0xff endloop 0x04 // Bomb exploding while on ground label 0x2e hide_countdown_timer stop_countdown_timer destroy_object OBJ_SKEDAR_SHUTTLE explosions_around_chr CHR_JOANNA restart_timer beginloop 0x72 if_timer_gt 60, /*goto*/ 0x2e endloop 0x72 label 0x2e if_chr_death_animation_finished CHR_VELVET, /*goto*/ 0x2f explosions_around_chr CHR_VELVET goto_next 0x41 label 0x2f if_chr_death_animation_finished CHR_COUNTEROP, /*goto*/ 0x41 explosions_around_chr CHR_COUNTEROP label 0x41 restart_timer beginloop 0x73 if_timer_gt 90, /*goto*/ 0x2e endloop 0x73 label 0x2e end_level set_function CHR_SELF, GFUNC_IDLE // Bomb deactivated label 0x0a hide_countdown_timer stop_countdown_timer object_do_animation 0x045b, OBJ_SKEDAR_SHUTTLE, 0x08ff, 0xff assign_sound 0x810a, CHANNEL_3 play_sound_from_object CHANNEL_3, OBJ_SKEDAR_SHUTTLE, 0x0708, 0x0bb8 restart_timer beginloop 0x0b dprint "OBJ\n" if_timer_gt 60, /*goto*/ 0x2e endloop 0x0b label 0x2e assign_sound 0x810b, CHANNEL_4 play_sound_from_object CHANNEL_4, OBJ_SKEDAR_SHUTTLE, 0x0708, 0x0bb8 beginloop 0x0d dprint "OBJ\n" if_timer_gt 200, /*goto*/ 0x08 endloop 0x0d label 0x08 dprint "OBJECTIVE DONE\n" set_stage_flag STAGEFLAG_BOMB_AIRBORNE restart_timer beginloop 0x0c if_timer_gt 240, /*goto*/ 0x2e endloop 0x0c label 0x2e set_object_health OBJ_SKEDAR_SHUTTLE, 0 mute_channel CHANNEL_3 mute_channel CHANNEL_4 destroy_object OBJ_SKEDAR_SHUTTLE set_function CHR_SELF, GFUNC_IDLE endfunction func043a_unused: set_chr_health CHR_SELF, 1 beginloop 0x12 if_objective_complete 3, /*goto*/ 0x08 endloop 0x12 label 0x08 beginloop 0x04 endloop 0x04 endfunction unregistered_function1: // All of these objects have been removed :\ // Wait for all 4 objects destroyed beginloop 0x04 if_object_in_good_condition 0x1f, /*goto*/ 0x08 goto_next 0x2e label 0x08 reloop 0x04 label 0x2e if_object_in_good_condition 0x20, /*goto*/ 0x08 goto_next 0x2e label 0x08 reloop 0x04 label 0x2e if_object_in_good_condition 0x21, /*goto*/ 0x08 goto_next 0x2e label 0x08 reloop 0x04 label 0x2e if_object_in_good_condition 0x22, /*goto*/ 0x08 goto_next 0x2e label 0x08 endloop 0x04 label 0x2e restart_timer beginloop 0x71 if_timer_gt 60, /*goto*/ 0x2e endloop 0x71 label 0x2e set_stage_flag STAGEFLAG_TRIGGER_SHUTTLE_TAKEOFF set_function CHR_SELF, GFUNC_IDLE endfunction func043b_init_blonde: set_chr_field_0x35e_0x35f 2, 0x00 set_accuracy 20 set_reaction_speed 70 set_chr_health CHR_SELF, 40 set_armor 0 set_recovery_speed 0 set_shield 90 set_return_function CHR_SELF, GFUNC_UNALERTED set_function CHR_SELF, GFUNC_UNALERTED endfunction func043c_init_cisolder: set_chr_field_0x35e_0x35f 2, 0x00 set_accuracy 20 set_reaction_speed 70 set_chr_health CHR_SELF, 40 set_armor 90 set_recovery_speed 0 set_shield 0 set_function CHR_SELF, FUNC_DEFEND_PAD endfunction func043d_unused: set_chr_field_0x35e_0x35f 2, 0x00 set_accuracy 30 set_reaction_speed 70 set_chr_health CHR_SELF, 40 set_armor 90 set_recovery_speed 0 set_shield 0 set_function CHR_SELF, GFUNC_UNALERTED endfunction func043e_carrington: set_onshot_function FUNC_CARRINGTON jog_to_pad 0x0142 beginloop 0x04 if_chr_stopped /*goto*/ 0x2e endloop 0x04 label 0x2e stop_chr beginloop 0x0a endloop 0x0a endfunction func0429_skedar4: stop_chr set_accuracy 40 set_reaction_speed 70 set_chr_health CHR_SELF, 40 set_armor 160 set_recovery_speed 0 set_shield 0 jog_to_pad 0x000c set_function CHR_SELF, GFUNC_RELATED_TO_SPAWNING endfunction func1018_hurt_carrington: beginloop 0x04 if_stage_flag_eq STAGEFLAG_VISITED_HOSTAGES_BEFORE_AUTOGUNS, TRUE, /*goto*/ 0x2e endloop 0x04 label 0x2e restart_timer beginloop 0x0a if_timer_gt 600, /*goto*/ 0x08 endloop 0x0a label 0x08 damage_chr CHR_CARRINGTON, 18 set_function CHR_SELF, GFUNC_IDLE endfunction func1019_setup_safeinfo: label 0x08 unset_object_flag_bank0 OBJ_SAFEDOOR, OBJECTFLAG0_INVINCIBLE unset_object_flag_bank0 OBJ_SAFEINFO, OBJECTFLAG0_INVINCIBLE set_function CHR_SELF, GFUNC_IDLE endfunction func101b_msg_autodefenses: if_difficulty_lt DIFF_SA, /*goto*/ 0x0a beginloop 0x04 if_sound_finished CHANNEL_6, /*goto*/ 0x2f reloop 0x04 label 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_AUTODEFENSES_MSG, TRUE, /*goto*/ 0x2e endloop 0x04 label 0x2e yield yield speak CHR_JOANNA, 0x2223, 0x73d8, CHANNEL_6, COLOR_09_BLUE // "The autodefenses will really help me out." label 0x0a set_function CHR_SELF, GFUNC_IDLE endfunction func101c_msg_fosterworkingon: beginloop 0x04 if_objective_complete 1, /*goto*/ 0x2e endloop 0x04 label 0x2e restart_timer beginloop 0x0a if_sound_finished CHANNEL_6, /*goto*/ 0x2f reloop 0x04 label 0x2f consider_coop_for_p1p2_chr CHR_SELF if_chr_in_room CHR_P1P2, 0x00, 0x0009, /*goto*/ 0x2e endloop 0x0a label 0x2e speak CHR_P1P2, 0x2224, 0x73d9, CHANNEL_6, COLOR_09_BLUE // "So this is what Foster was working on." set_function CHR_SELF, GFUNC_IDLE endfunction func101d_msg_countingonme: beginloop 0x04 if_stage_flag_eq STAGEFLAG_TRIGGER_COUNTINGONME_MSG, TRUE, /*goto*/ 0x2e endloop 0x04 label 0x2e restart_timer beginloop 0x0a if_sound_finished CHANNEL_6, /*goto*/ 0x2f goto_first 0x04 label 0x2f if_timer_gt 180, /*goto*/ 0x2e endloop 0x0a label 0x2e speak CHR_JOANNA, 0x2225, 0x73da, CHANNEL_6, COLOR_09_BLUE // "I'll have to go carefully... The hostages are coun..." set_function CHR_SELF, GFUNC_IDLE endfunction /** * This message is not played because no condition breaks out of the loop. */ func101e_msg_wontknow: beginloop 0x04 endloop 0x04 label 0x2e speak CHR_JOANNA, 0x2226, 0x73db, CHANNEL_6, COLOR_09_BLUE // "Well, at least I won't know if I'm doing anything ..." set_function CHR_SELF, GFUNC_IDLE endfunction func101f_configure_cisoldiers: beginloop 0x04 if_stage_flag_eq STAGEFLAG_INTRO_FINISHED, TRUE, /*goto*/ 0x2e endloop 0x04 label 0x2e set_function CHR_JONATHAN, FUNC_INIT_JONATHAN set_function 0x15, FUNC_INIT_CISOLDIER set_function 0x16, FUNC_INIT_CISOLDIER set_function 0x17, FUNC_INIT_CISOLDIER set_function 0x18, FUNC_INIT_CISOLDIER set_function 0x19, FUNC_INIT_CISOLDIER set_function 0x1a, FUNC_INIT_CISOLDIER set_function 0x1b, FUNC_INIT_CISOLDIER set_function 0x1c, FUNC_INIT_CISOLDIER set_function 0x1d, FUNC_INIT_CISOLDIER set_function 0x1e, FUNC_INIT_CISOLDIER set_function CHR_HANGARGUY, FUNC_INIT_CISOLDIER set_function CHR_SELF, GFUNC_IDLE endfunction func1020_trigger_spawning: beginloop 0x04 if_stage_flag_eq STAGEFLAG_INTRO_FINISHED, TRUE, /*goto*/ 0x2e endloop 0x04 // Wait 15 seconds label 0x2e restart_timer beginloop 0x0a if_timer_gt 900, /*goto*/ 0x2e endloop 0x0a label 0x2e set_stage_flag STAGEFLAG_TRIGGER_SPAWNING set_function CHR_SELF, GFUNC_IDLE endfunction func042a_init_jonathan: set_accuracy 100 set_reaction_speed 100 set_chr_health CHR_SELF, 40 set_armor 1200 set_recovery_speed 100 set_function CHR_SELF, FUNC_DEFEND_PAD endfunction func1021_setup_jonathan: yield if_eeprom_flag_is_set EEPROMFLAG_DEFENSE_JON, /*goto*/ 0x08 remove_chr CHR_JONATHAN label 0x08 set_function CHR_SELF, GFUNC_IDLE endfunction func1023_check_skeder_shuttle_destroyed: beginloop 0x12 if_difficulty_lt DIFF_PA, /*goto*/ 0x2e if_objective_complete 3, /*goto*/ 0x08 reloop 0x12 label 0x2e if_objective_complete 2, /*goto*/ 0x08 endloop 0x12 beginloop 0x04 if_object_in_good_condition OBJ_SKEDAR_SHUTTLE, /*goto*/ 0x08 goto_next 0x2e label 0x08 goto_first 0x04 // Shuttle destroyed label 0x2e restart_timer beginloop 0x0a if_timer_gt 30, /*goto*/ 0x2e endloop 0x0a label 0x2e if_stage_flag_eq STAGEFLAG_BOMB_AIRBORNE, TRUE, /*goto*/ 0x0f message CHR_JOANNA, 0x2227 // "The bomb has been detonated..." set_stage_flag STAGEFLAG_BOMB_EXPLODING_ON_GROUND explosions_around_chr CHR_JOANNA restart_timer beginloop 0x72 if_timer_gt 60, /*goto*/ 0x2e endloop 0x72 label 0x2e if_chr_death_animation_finished CHR_VELVET, /*goto*/ 0x2f explosions_around_chr CHR_VELVET goto_next 0x41 label 0x2f if_chr_death_animation_finished CHR_COUNTEROP, /*goto*/ 0x41 explosions_around_chr CHR_COUNTEROP label 0x41 restart_timer beginloop 0x73 if_timer_gt 90, /*goto*/ 0x2e endloop 0x73 label 0x2e end_level set_function CHR_SELF, GFUNC_IDLE label 0x0f set_function CHR_SELF, GFUNC_IDLE endfunction func1024_setup_lifts: activate_lift 1, 0x41 activate_lift 2, 0x42 set_function CHR_SELF, GFUNC_IDLE endfunction func1025_lift_door_sounds: beginloop 0xe4 consider_coop_for_p1p2_chr CHR_SELF if_chr_activated_object CHR_P1P2, 0x46, /*goto*/ 0x2e if_chr_activated_object CHR_P1P2, 0x47, /*goto*/ 0x2e if_chr_activated_object CHR_P1P2, 0x48, /*goto*/ 0x2e if_chr_activated_object CHR_P1P2, 0x49, /*goto*/ 0x2e if_chr_activated_object CHR_P1P2, 0x4a, /*goto*/ 0x2e if_chr_activated_object CHR_P1P2, 0x4b, /*goto*/ 0x2e if_chr_activated_object CHR_P1P2, 0x4c, /*goto*/ 0x2e if_chr_activated_object CHR_P1P2, 0x4d, /*goto*/ 0x2e reloop 0xe4 label 0x2e play_sound 0x81b0, -1 restart_timer beginloop 0x0a if_timer_gt 120, /*goto*/ 0x08 endloop 0x0a label 0x08 endloop 0xe4 endfunction func100e_setup_firingrange_doors: // Wait until firing range doors opened beginloop 0xe4 if_door_state 0x23, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x2e if_door_state 0x23, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x2e endloop 0xe4 // Unset some flags on them label 0x2e unset_object_flag_bank1 0x23, OBJECTFLAG1_20000000 unset_object_flag_bank1 0x24, OBJECTFLAG1_20000000 set_function CHR_SELF, GFUNC_IDLE endfunction func1027_uplink: beginloop 0x04 if_object_in_good_condition OBJ_SKEDAR_SHUTTLE, /*goto*/ 0x2f goto_next 0x0f label 0x2f consider_coop_for_p1p2_chr CHR_SELF set_target_chr CHR_P1P2 if_chr_activated_object TARGET_CHR, OBJ_SKEDAR_SHUTTLE, /*goto*/ 0x2e reloop 0x04 // Activated label 0x08 if_chr_weapon_equipped TARGET_CHR, WEAPON_DATAUPLINK, /*goto*/ 0x2e play_sound 0x8116, -1 message TARGET_CHR, 0x2233 // "You need the Data Uplink." reloop 0x04 // Activated with uplink label 0x2e message TARGET_CHR, 0x2234 // "Connection has been made." restart_timer beginloop 0x0a if_object_in_good_condition OBJ_SKEDAR_SHUTTLE, /*goto*/ 0x2f goto_next 0x0f label 0x2f if_timer_gt 60, /*goto*/ 0x08 if_chr_in_room TARGET_CHR, 0x00, 0x0045, /*goto*/ 0x2e goto_next 0x0b label 0x2e if_chr_weapon_equipped TARGET_CHR, WEAPON_DATAUPLINK, /*goto*/ 0x2e goto_next 0x0b label 0x2e endloop 0x0a // 1 second since uplink label 0x08 message TARGET_CHR, 0x2235 // "Bypassing security systems." restart_timer assign_sound 0x01bf, CHANNEL_5 control_sound_from_object CHANNEL_5, OBJ_SKEDAR_SHUTTLE, TRUE beginloop 0x13 if_object_in_good_condition OBJ_SKEDAR_SHUTTLE, /*goto*/ 0x2f goto_next 0x0f label 0x2f if_timer_gt 400, /*goto*/ 0x08 if_chr_in_room TARGET_CHR, 0x00, 0x0045, /*goto*/ 0x2e goto_next 0x0b label 0x2e if_chr_weapon_equipped TARGET_CHR, WEAPON_DATAUPLINK, /*goto*/ 0x2e goto_next 0x0b label 0x2e endloop 0x13 // 7.66 seconds since uplink label 0x08 mute_channel CHANNEL_5 assign_sound 0x01c1, CHANNEL_6 control_sound_from_object CHANNEL_6, OBJ_SKEDAR_SHUTTLE, TRUE message TARGET_CHR, 0x2236 // "Virus has been downloaded successfully." yield message TARGET_CHR, 0x2237 // "Ship's engines have been activated." set_stage_flag STAGEFLAG_TRIGGER_SHUTTLE_TAKEOFF beginloop 0x14 if_timer_gt 90, /*goto*/ 0x08 endloop 0x14 label 0x08 set_function CHR_SELF, GFUNC_IDLE reloop 0x04 // Connection broken label 0x0b message TARGET_CHR, 0x2238 // "Connection to ship has been broken." mute_channel CHANNEL_5 assign_sound 0x01c0, CHANNEL_6 control_sound_from_object CHANNEL_6, OBJ_SKEDAR_SHUTTLE, TRUE restart_timer beginloop 0x15 if_timer_gt 120, /*goto*/ 0x08 endloop 0x15 label 0x08 mute_channel CHANNEL_6 endloop 0x04 label 0x0f set_function CHR_SELF, GFUNC_IDLE endfunction func1028_shuttle_immunity: beginloop 0xe4 if_stage_flag_eq STAGEFLAG_TRIGGER_SHUTTLE_TAKEOFF, TRUE, /*goto*/ 0x08 consider_coop_for_p1p2_chr CHR_SELF if_chr_in_room CHR_P1P2, 0x00, 0x0045, /*goto*/ 0x2e if_chr_in_room CHR_P1P2, 0x00, 0x0046, /*goto*/ 0x2e if_chr_in_room CHR_P1P2, 0x00, 0x0047, /*goto*/ 0x2e if_chr_in_room CHR_P1P2, 0x00, 0x004d, /*goto*/ 0x2e if_chr_in_room CHR_P1P2, 0x00, 0x004e, /*goto*/ 0x2e if_chr_in_room CHR_P1P2, 0x00, 0x0055, /*goto*/ 0x2e reloop 0xe4 label 0x2e unset_object_flag_bank0 OBJ_SKEDAR_SHUTTLE, OBJECTFLAG0_INVINCIBLE endloop 0xe4 label 0x08 set_function CHR_SELF, GFUNC_IDLE endfunction func1029_setup_rtracker: yield set_object_flag_bank2 OBJ_DEVASTATOR, OBJECTFLAG2_RTRACKED_BLUE set_function CHR_SELF, GFUNC_IDLE endfunction func102a_setup_lighting: yield set_lighting 0x0045, 0x06, 0x01 set_lighting 0x0046, 0x06, 0x01 set_lighting 0x0047, 0x06, 0x01 set_lighting 0x0048, 0x06, 0x01 set_lighting 0x0055, 0x06, 0x01 set_lighting 0x0056, 0x06, 0x01 set_function CHR_SELF, GFUNC_IDLE endfunction func102b_safedoor_immunity: if_difficulty_lt DIFF_PA, /*goto*/ 0x10 set_object_flag_bank0 OBJ_SAFEDOOR, OBJECTFLAG0_INVINCIBLE beginloop 0x04 if_objective_complete 2, /*goto*/ 0x2e reloop 0x04 label 0x2e if_object_in_good_condition OBJ_SAFEDOOR, /*goto*/ 0x2e set_function CHR_SELF, GFUNC_IDLE label 0x2e if_chr_in_room CHR_JOANNA, 0x00, 0x000c, /*goto*/ 0x2e goto_next 0x0b label 0x2e if_chr_weapon_equipped CHR_JOANNA, WEAPON_LASER, /*goto*/ 0x0f // Jo not in office room or laser not equipped label 0x0b if_chr_in_room CHR_VELVET, 0x00, 0x000c, /*goto*/ 0x2e goto_next 0x0e label 0x2e if_chr_weapon_equipped CHR_VELVET, WEAPON_LASER, /*goto*/ 0x0f // No one in office room with laser equipped label 0x0e set_object_flag_bank0 OBJ_SAFEDOOR, OBJECTFLAG0_INVINCIBLE reloop 0x04 label 0x0f unset_object_flag_bank0 OBJ_SAFEDOOR, OBJECTFLAG0_INVINCIBLE endloop 0x04 // A and SA label 0x10 set_object_flag_bank0 OBJ_SAFEDOOR, OBJECTFLAG0_INVINCIBLE set_function CHR_SELF, GFUNC_IDLE endfunction func102c_door_flags: yield if_chr_death_animation_finished CHR_COUNTEROP, /*goto*/ 0x0f lock_door 0x23, 0x40 lock_door 0x24, 0x40 set_object_flag_bank1 0x23, OBJECTFLAG1_00000004 set_object_flag_bank1 0x24, OBJECTFLAG1_00000004 lock_door 0x43, 0x40 lock_door 0x44, 0x40 set_object_flag_bank1 0x43, OBJECTFLAG1_00000004 set_object_flag_bank1 0x44, OBJECTFLAG1_00000004 lock_door 0x54, 0x40 set_object_flag_bank1 0x54, OBJECTFLAG1_00000004 lock_door 0x19, 0x40 set_object_flag_bank1 0x19, OBJECTFLAG1_00000004 beginloop 0xe4 if_chr_activated_object CHR_JOANNA, 0x23, /*goto*/ 0x0a if_chr_activated_object CHR_JOANNA, 0x23, /*goto*/ 0x0a if_chr_activated_object CHR_JOANNA, 0x43, /*goto*/ 0x0b if_chr_activated_object CHR_JOANNA, 0x44, /*goto*/ 0x0b if_chr_activated_object CHR_JOANNA, 0x54, /*goto*/ 0x0c if_chr_activated_object CHR_JOANNA, 0x19, /*goto*/ 0x0d reloop 0xe4 label 0x0a unlock_door 0x23, 0x40 unlock_door 0x24, 0x40 open_door 0x23 reloop 0xe4 label 0x0b unlock_door 0x43, 0x40 unlock_door 0x44, 0x40 open_door 0x43 reloop 0xe4 label 0x0c unlock_door 0x54, 0x40 open_door 0x54 reloop 0xe4 label 0x0d unlock_door 0x19, 0x40 open_door 0x19 endloop 0xe4 label 0x0f set_function CHR_SELF, GFUNC_IDLE endfunction unregistered_function2: beginloop 0x03 restart_timer // Wait 10 seconds beginloop 0x0a if_timer_gt 600, /*goto*/ 0x2e endloop 0x0a label 0x2e animation 0x02c3, -1, -1, 0x0600, 0x34, 4 endloop 0x03 endfunction unregistered_function3: beginloop 0x03 if_chr_unloaded CHR_TAKER_INFO_F, /*goto*/ 0x11 if_chr_unloaded CHR_TAKER_INFO_M, /*goto*/ 0x12 reloop 0x03 label 0x11 damage_chr CHR_TAKER_INFO_F, 18 reloop 0x03 label 0x12 damage_chr CHR_TAKER_INFO_M, 18 endloop 0x03 endfunction func102d_firingrange_taker_invincibility: beginloop 0x03 if_chr_death_animation_finished CHR_TAKER_FR1, /*goto*/ 0x2e if_chr_dying CHR_TAKER_FR1, /*goto*/ 0x2e if_chr_unloaded CHR_TAKER_FR1, /*goto*/ 0x2e if_chr_in_room CHR_TAKER_FR1, 0x00, 0x0007, /*goto*/ 0x2e if_chr_in_room CHR_TAKER_FR1, 0x00, 0x0008, /*goto*/ 0x2e if_chr_in_room CHR_TAKER_FR1, 0x00, 0x0009, /*goto*/ 0x2e if_chr_in_room CHR_TAKER_FR1, 0x00, 0x000a, /*goto*/ 0x2e unset_chr_flag_bank3 CHR_TAKER_FR1, CHRFLAG3_INVINCIBLE_TO_GUNFIRE label 0x2e if_chr_death_animation_finished CHR_TAKER_FR2, /*goto*/ 0x2e if_chr_dying CHR_TAKER_FR2, /*goto*/ 0x2e if_chr_unloaded CHR_TAKER_FR2, /*goto*/ 0x2e if_chr_in_room CHR_TAKER_FR2, 0x00, 0x0007, /*goto*/ 0x2e if_chr_in_room CHR_TAKER_FR2, 0x00, 0x0008, /*goto*/ 0x2e if_chr_in_room CHR_TAKER_FR2, 0x00, 0x0009, /*goto*/ 0x2e if_chr_in_room CHR_TAKER_FR2, 0x00, 0x000a, /*goto*/ 0x2e unset_chr_flag_bank3 CHR_TAKER_FR2, CHRFLAG3_INVINCIBLE_TO_GUNFIRE label 0x2e endloop 0x03 endfunction functions: register_function func1400_setup_counterop 0x1400 register_function func1001_objectives_failed_msg 0x1001 register_function func1002_intro 0x1002 register_function func1003_hide_blondes_and_skedar 0x1003 register_function func1004_check_hostages_killed 0x1004 register_function func1005_check_safeinfo_destroyed 0x1005 register_function func1007_autogun_switch1 0x1007 register_function func1008_autogun_switch2 0x1008 register_function func1009_autogun_switch3 0x1009 register_function func100b_setup_autoguns 0x100b register_function func100c_check_carrington_dead 0x100c register_function func100e_setup_firingrange 0x100e register_function func100f_check_holo_takers_dead 0x100f register_function func1010_check_device_takers_dead 0x1010 register_function func1011_check_info_takers_dead 0x1011 register_function func1012_info_room 0x1012 register_function func1013_check_hostages_saved 0x1013 register_function func1014_carrington_messages 0x1014 register_function func1015_firingrange_pc 0x1015 register_function func1016_remove_spawners 0x1016 register_function func1018_hurt_carrington 0x1018 register_function func1019_setup_safeinfo 0x1019 register_function func101b_msg_autodefenses 0x101b register_function func101c_msg_fosterworkingon 0x101c register_function func101d_msg_countingonme 0x101d register_function func101e_msg_wontknow 0x101e register_function func101f_configure_cisoldiers 0x101f register_function func1020_trigger_spawning 0x1020 register_function func1021_setup_jonathan 0x1021 register_function func1022_skedar_shuttle 0x1022 register_function func1023_check_skeder_shuttle_destroyed 0x1023 register_function func1024_setup_lifts 0x1024 register_function func1025_lift_door_sounds 0x1025 register_function func100e_setup_firingrange_doors 0x1026 register_function func1027_uplink 0x1027 register_function func1028_shuttle_immunity 0x1028 register_function func1029_setup_rtracker 0x1029 register_function func102a_setup_lighting 0x102a register_function func102b_safedoor_immunity 0x102b register_function func102c_door_flags 0x102c register_function func102d_firingrange_taker_invincibility 0x102d register_function func1002_intro 0x0c00 register_function func0c01_outro 0x0c01 register_function func1002_intro 0x0417 register_function func0c01_outro 0x0418 register_function func0414_firingrange_hostage 0x0414 register_function func0415_init_hostage_fr1 0x0415 register_function func0416_init_hostage_fr2 0x0416 register_function func0401_spawner1 0x0401 register_function func0404_spawner2 0x0404 register_function func0407_spawner3 0x0407 register_function func040a_spawner4 0x040a register_function func040d_spawner5 0x040d register_function func0410_spawner6 0x0410 register_function func0402_clone1 0x0402 register_function func0403_init_clone1 0x0403 register_function func0405_clone2 0x0405 register_function func0406_init_clone2 0x0406 register_function func0408_clone3 0x0408 register_function func0409_init_clone3 0x0409 register_function func040b_clone4 0x040b register_function func040c_init_clone4 0x040c register_function func040e_clone5 0x040e register_function func040f_init_clone5 0x040f register_function func0411_clone6 0x0411 register_function func0412_init_clone6 0x0412 register_function func0413_defend_pad 0x0413 register_function func0419_init_firingrange_taker 0x0419 register_function func041a_hostage_holo 0x041a register_function func041b_init_hostage_holo 0x041b register_function func041c_init_holoclone1 0x041c register_function func041d_init_holoclone2 0x041d register_function func041e_init_holoclone3 0x041e register_function func041f_holoclone 0x041f register_function func0420_taker_holo1 0x0420 register_function func0421_taker_holo2 0x0421 register_function func0422_taker_holo3 0x0422 register_function func0423_init_shock 0x0423 register_function func0425_hostage_thank_and_run 0x0425 register_function func0426_init_saved_hostage 0x0426 register_function func0427_drop_devastator 0x0427 register_function func0428_init_drop_devastator 0x0428 register_function func0429_skedar4 0x0429 register_function func042a_init_jonathan 0x042a register_function func041f_holoclone_onshot 0x0424 register_function func042b_deviceroom_hostage 0x042b register_function func042c_init_hostage_device_f 0x042c register_function func042d_init_hostage_device_m 0x042d register_function func042e_taker_device_m 0x042e register_function func042f_init_taker_device_m 0x042f register_function func0430_taker_device_f 0x0430 register_function func0431_init_taker_device_f 0x0431 register_function func0432_taker_attack 0x0432 register_function func0433_inforoom_hostage 0x0433 register_function func0434_init_hostage_info_m 0x0434 register_function func0435_init_hostage_info_f 0x0435 register_function func0436_taker_info_m 0x0436 register_function func0437_init_taker_info_m 0x0437 register_function func0438_taker_info_f 0x0438 register_function func0439_init_taker_info_f 0x0439 register_function func043a_unused 0x043a register_function func043b_init_blonde 0x043b register_function func043c_init_cisolder 0x043c register_function func043d_unused 0x043d register_function func043e_carrington 0x043e endfunctions paths: register_path path00, 0, 2 endpaths .align 4