# # CI Training # .set HEADERLEN, 0x20 .include "asm/include/setup.inc" // Characters .set CHR_CARRINGTON, 0x00 // Objects .set OBJ_CAMSPY, 0x26 .set OBJ_LIGHTSWITCH, 0x34 .set OBJ_HOVERCRATE, 0x93 // Stage flags .set STAGEFLAG_IN_TRAINING, 0x00000001 .set STAGEFLAG_HOLO_FAILED, 0x00000002 .set STAGEFLAG_DEVICE_ABORTING, 0x00000004 .set STAGEFLAG_TRIGGER_DEVICE_SUCCESS, 0x00000008 .set STAGEFLAG_TRIGGER_DEVICE_FAILURE, 0x00000010 .set STAGEFLAG_HOLO_ABORTING, 0x00000020 .set STAGEFLAG_TRIGGER_HOLO_SUCCESS, 0x00000040 .set STAGEFLAG_TRIGGER_HOLO_FAILURE, 0x00000080 .set STAGEFLAG_TRIGGER_UPLINK, 0x00000100 .set STAGEFLAG_TRIGGER_ECMMINE, 0x00000200 .set STAGEFLAG_TRIGGER_CAMSPY, 0x00000400 .set STAGEFLAG_TRIGGER_NIGHTVISION, 0x00000800 .set STAGEFLAG_TRIGGER_DOORDECODER, 0x00001000 .set STAGEFLAG_TRIGGER_RTRACKER, 0x00002000 .set STAGEFLAG_TRIGGER_IR, 0x00004000 .set STAGEFLAG_TRIGGER_XRAY, 0x00008000 .set STAGEFLAG_TRIGGER_DISGUISE, 0x00010000 .set STAGEFLAG_TRIGGER_CLOAK, 0x00020000 .set STAGEFLAG_IN_HOLO1, 0x00040000 .set STAGEFLAG_IN_HOLO2, 0x00080000 .set STAGEFLAG_IN_HOLO3, 0x00100000 .set STAGEFLAG_IN_HOLO4, 0x00200000 .set STAGEFLAG_IN_HOLO5, 0x00400000 .set STAGEFLAG_IN_HOLO6, 0x00800000 .set STAGEFLAG_IN_HOLO7, 0x01000000 .set STAGEFLAG_GENERAL_PURPOSE, 0x02000000 .set STAGEFLAG_TRIGGER_CANNOTEXIT_MSG, 0x04000000 .set STAGEFLAG_CONSIDER_WARP, 0x08000000 .set STAGEFLAG_CLOAK_COMPLETE, 0x10000000 .set STAGEFLAG_CLOAK_FAILED, 0x20000000 .set STAGEFLAG_DISGUISE_FAILED, 0x40000000 .set STAGEFLAG_DISGUISE_COMPLETE, 0x80000000 // Functions .set FUNC_MOVE_TO_DEVICEROOM, 0x0401 .set FUNC_MOVE_TO_HOLOROOM, 0x0402 .set FUNC_HOLO4_GUARD1, 0x0403 .set FUNC_HOLO4_GUARD2, 0x0404 .set FUNC_HOLO4_GUARD3, 0x0405 .set FUNC_HOLO5_INIT_GUARD1, 0x0406 .set FUNC_HOLO5_GUARD1, 0x0407 .set FUNC_HOLO5_INIT_GUARD2, 0x0408 .set FUNC_HOLO5_GUARD2, 0x0409 .set FUNC_HOLO5_INIT_GUARD3, 0x040a .set FUNC_HOLO5_GUARD3, 0x040b .set FUNC_HOLO6_INIT_GUARD1, 0x040c .set FUNC_HOLO6_INIT_GUARD2, 0x040d .set FUNC_HOLO6_INIT_GUARD3, 0x040e .set FUNC_HOLO6_INIT_GUARD4, 0x040f .set FUNC_HOLO7_INIT_GUARD4, 0x0410 .set FUNC_HOLO7_INIT_GUARD5, 0x0411 .set FUNC_HOLO7_INIT_GUARD1, 0x0412 .set FUNC_HOLO7_INIT_GUARD2, 0x0413 .set FUNC_HOLO7_INIT_GUARD3, 0x0414 .set FUNC_HOLO_GUARD_UNARMED_UNALERT, 0x0415 .set FUNC_HOLO_GUARD_UNARMED_ALERT, 0x0416 .set FUNC_HOLO_GUARD_UNARMED_ALERT2, 0x0417 .set FUNC_HOLO_GUARD_ARMED_UNALERT, 0x0418 .set FUNC_HOLO_GUARD_ARMED_ALERT, 0x0419 .set FUNC_HOLO3_CHECK_DONE, 0x041c .set FUNC_INIT_COLLEAGUE_WHEN_SIGHTED, 0x041d .set FUNC_COLLEAGUE, 0x041e .set FUNC_GRIMSHAW_DISGUISE, 0x0429 .set FUNC_CARRINGTON_CLOAK, 0x042a .set FUNC_INIT_CARRINGTON, 0x042b .set FUNC_CARRINGTON_TOUR, 0x042c .set FUNC_DEVICEGIRL_REPLY_TO_CARRINGTON, 0x042e .set FUNC_HOLO1_CHECK_DONE, 0x0430 .set FUNC_HOLO3_OBJECT1, 0x0435 .set FUNC_HOLO3_OBJECT2, 0x0436 .set FUNC_HOLO1_SWITCH1, 0x0437 .set FUNC_HOLO1_SWITCH2, 0x0438 .set FUNC_HOLO1_SWITCH3, 0x0439 .set FUNC_HOLO1_MONITOR_SWITCHES, 0x043a // Pads .set PAD_OUTSIDE_JO_OFFICE, 0x0053 .set PAD_CARRINGTON_OFFICE, 0x00f6 .set PAD_DEVICEROOM, 0x0121 .set PAD_HOLOROOM, 0x0273 props: door 0x0100, MODEL_INSTFRONTDOOR, 0x018d, 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, 0x018e, 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_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_CIDOOR1_REF, 0x0156, 0x10000400, 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, 0x0157, 0x10000400, 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 tag 0x75, 2 tag 0x76, 2 door 0x0100, MODEL_CIDOOR1_REF, 0x0158, 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, 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, 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, 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 tag 0x8a, 1 door 0x0100, MODEL_CIDOOR1_REF, 0x015b, 0x10000400, 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, 0x10000400, 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 0x31, 1 door 0x0100, MODEL_CIDOOR1_REF, 0x015a, 0x10000400, 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 0x89, 1 door 0x0100, MODEL_CIDOOR1_REF, 0x015d, 0x10000400, 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 0x91, 2 tag 0x92, 1 door 0x0100, MODEL_DD_LIFTDOOR, 0x018c, 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, 0x00000000, 0x00000000, 0x00000384, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000300, 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 object 0x0100, MODEL_AIRBASE_SAFEDOOR, 0x025b, 0x000205e8, 0x00200002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000fa0, 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, 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_DD_WINDOW, 0x01b7, 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_DD_WINDOW, 0x01b8, 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_DD_WINDOW, 0x01b9, 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_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 glass 0x0100, MODEL_WINDOW, 0x01c4, 0x04020362, 0x00104000, 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, 0x04020362, 0x00104000, 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, 0x04020362, 0x00104000, 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, 0x04020362, 0x00104000, 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 0x80, 6 tag 0x81, 6 tag 0x82, 6 tag 0x83, 6 tag 0x43, 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 0x84, 6 tag 0x85, 6 tag 0x86, 6 tag 0x87, 6 tag 0x44, 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, 0x000205e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_DD_DESK, 0x021a, 0x000205e1, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x1b, 1 singlemonitor 0x0100, MODEL_GOODPC, 0x021c, 0x000204e1, 0x00000000, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffff03 tag 0x01, 1 object 0x0100, MODEL_DD_CHAIR, 0x021f, 0x000005e1, 0x00000000, 0x00000000, 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, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x10, 1 singlemonitor 0x0100, MODEL_GOODPC, 0x021e, 0x000004e1, 0x00000000, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffff03 tag 0x02, 1 object 0x00b3, MODEL_DD_CHAIR, 0x0220, 0x000005e1, 0x00000000, 0x00000000, 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, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x0f, 1 singlemonitor 0x0100, MODEL_GOODPC, 0x0221, 0x000004e1, 0x00000000, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffff03 tag 0x33, -1 tag 0x0d, 1 object 0x0100, MODEL_DD_CHAIR, 0x0223, 0x000005e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_DD_DESK, 0x0225, 0x000005e1, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x0e, 1 singlemonitor 0x0100, MODEL_GOODPC, 0x0224, 0x000004e1, 0x00020000, 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, 0xffffff03 tag 0x7f, 1 singlemonitor 0x0100, MODEL_GOODPC, 0x022d, 0x000204e1, 0x00000000, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffff03 require_object_holographed 0x0000000e, 0x00000000, 0x00000000 tag 0x05, 18 tag 0x06, 18 tag 0x07, 18 tag 0x08, 18 tag 0x09, 18 tag 0x0a, 18 tag 0x0b, 18 tag 0x0c, 18 tag 0x11, 18 tag 0x12, 18 tag 0x13, 18 tag 0x14, 18 tag 0x15, 18 tag 0x16, 18 tag 0x17, 18 tag 0x18, 18 tag 0x19, 18 tag 0x1a, 18 object 0x0019, MODEL_TARGET, 0x00d6, 0x000005e1, 0x00084000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0019, MODEL_TARGET, 0x00d6, 0x000005e1, 0x00084000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0019, MODEL_TARGET, 0x00d6, 0x000005e1, 0x00084000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0019, MODEL_TARGET, 0x00d6, 0x000005e1, 0x00084000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0019, MODEL_TARGET, 0x00d6, 0x000005e1, 0x00084000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0019, MODEL_TARGET, 0x00d6, 0x000005e1, 0x00084000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0019, MODEL_TARGET, 0x00d6, 0x000005e1, 0x00084000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0019, MODEL_TARGET, 0x00d6, 0x000005e1, 0x00084000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0019, MODEL_TARGET, 0x00d6, 0x000005e1, 0x00084000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0019, MODEL_TARGET, 0x00d6, 0x000005e1, 0x00084000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0019, MODEL_TARGET, 0x00d6, 0x000005e1, 0x00084000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0019, MODEL_TARGET, 0x00d6, 0x000005e1, 0x00084000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0019, MODEL_TARGET, 0x00d6, 0x000005e1, 0x00084000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0019, MODEL_TARGET, 0x00d6, 0x000005e1, 0x00084000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0019, MODEL_TARGET, 0x00d6, 0x000005e1, 0x00084000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0019, MODEL_TARGET, 0x00d6, 0x000005e1, 0x00084000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0019, MODEL_TARGET, 0x00d6, 0x000005e1, 0x00084000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0019, MODEL_TARGET, 0x00d6, 0x000005e1, 0x00084000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 chr 0x00002000, 0x00, PAD_CARRINGTON_OFFICE, BODY_CARRINGTON, HEAD_CARRINGTON, FUNC_INIT_CARRINGTON, -1, -1, 1000, 4, 0x00000000, 0x00000000, 0x20, 0x05, -1, 0, 0x02000000 chr 0x00002000, 0x01, 0x00f8, BODY_CIFEMTECH, HEAD_SECRETARY, 0x0420, -1, -1, 1000, 4, 0x00000000, 0x00000000, 0x20, 0x05, -1, 0, 0x02000000 chr 0x00002000, 0x02, 0x00fa, BODY_CILABTECH, HEAD_CHRIST, 0x0424, -1, -1, 1000, 4, 0x00000000, 0x00000000, 0x20, 0x05, -1, 0, 0x02000000 chr 0x00002000, 0x03, 0x00f7, BODY_CILABTECH, HEAD_MARK2, 0x0421, -1, -1, 1000, 6, 0x00000000, 0x00000000, 0x20, 0x05, -1, 0, 0x02000000 chr 0x00002000, 0x04, 0x00f9, BODY_CIFEMTECH, HEAD_SECRETARY, 0x0422, -1, -1, 1000, 6, 0x00000000, 0x00000000, 0x20, 0x05, -1, 0, 0x02000000 chr 0x00002000, 0x05, 0x00fb, BODY_CILABTECH, HEAD_BRIAN, 0x0423, -1, -1, 1000, 6, 0x00000000, 0x00000000, 0x20, 0x05, -1, 0, 0x02000000 chr 0x00006000, 0x06, 0x00fd, BODY_CILABTECH, HEAD_RUSS, 0x0425, -1, -1, 0, 0, 0xc8000000, 0x00000100, 0x02, 0x0d, 0x01, 0, 0x00020000 chr 0x00006000, 0x07, 0x00fc, BODY_CILABTECH, HEAD_BEAU1, 0x0426, -1, -1, 0, 0, 0xc8000000, 0x00000100, 0x02, 0x0d, 0x00, 0, 0x00020000 chr 0x00006000, 0x08, 0x00fe, BODY_CIFEMTECH, HEAD_SECRETARY, 0x0427, -1, -1, 0, 0, 0xc8000000, 0x00000100, 0x02, 0x0d, 0x02, 0, 0x00020000 tag 0x1e, 8 tag 0x1f, 8 tag 0x20, 8 tag 0x21, 8 tag 0x22, 8 tag 0x23, 8 tag 0x24, 8 tag 0x25, 8 weapon 0x0100, MODEL_CHRWPPK, 0x0115, 0x00100008, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_LAPTOPGUN, 0x00ffffff, 0x00000000 weapon 0x0100, MODEL_CHRTT33, 0x0116, 0x00100008, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_LAPTOPGUN, 0x00ffffff, 0x00000000 weapon 0x0100, MODEL_CHRSKORPION, 0x0117, 0x00100008, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_LAPTOPGUN, 0x00ffffff, 0x00000000 weapon 0x0100, MODEL_CHRKALASH, 0x0118, 0x00100008, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_LAPTOPGUN, 0x00ffffff, 0x00000000 weapon 0x0100, MODEL_CHRUZI, 0x0119, 0x00100008, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_LAPTOPGUN, 0x00ffffff, 0x00000000 weapon 0x0100, MODEL_CHRMP5K, 0x011a, 0x00100008, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_LAPTOPGUN, 0x00ffffff, 0x00000000 weapon 0x0100, MODEL_CHRM16, 0x011b, 0x00100008, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_LAPTOPGUN, 0x00ffffff, 0x00000000 weapon 0x0100, MODEL_CHRFNP90, 0x011c, 0x00100008, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_LAPTOPGUN, 0x00ffffff, 0x00000000 tag 0x7a, 1 glass 0x0100, MODEL_DD_WINDOW, 0x01c8, 0x04020b62, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 tag 0x79, 1 glass 0x0100, MODEL_DD_WINDOW, 0x01c9, 0x04020b62, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 tag 0x78, 1 glass 0x0100, MODEL_DD_WINDOW, 0x01ca, 0x04020b62, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 tag 0x7e, 1 glass 0x0100, MODEL_DD_WINDOW, 0x01cb, 0x04020962, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 tag 0x7b, 1 glass 0x0100, MODEL_DD_WINDOW, 0x01cc, 0x04020b62, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 tag 0x7c, 1 glass 0x0100, MODEL_DD_WINDOW, 0x01cd, 0x04020b62, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 tag 0x7d, 1 glass 0x0100, MODEL_DD_WINDOW, 0x01ce, 0x04020b62, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 tag 0x77, 1 glass 0x0100, MODEL_DD_WINDOW, 0x01cf, 0x04020b62, 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, 0x01d0, 0x04020b62, 0x00304000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000 object 0x0100, MODEL_DD_DESK, 0x0229, 0x000005e1, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x2f, 1 weapon 0x0100, MODEL_CHRDATATHIEF, 0xffff, 0x00100008, 0x00080000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DATAUPLINK, 0x00ffffff, 0x00000000 object 0x0100, MODEL_DD_DESK, 0x0228, 0x000005e1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_DD_CHAIR, 0x0226, 0x000005e1, 0x00004000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x30, 1 singlemonitor 0x0180, MODEL_GOODPC, 0x0227, 0x000004e1, 0x00000000, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffff03 tag 0x2e, 1 weapon 0x0180, MODEL_CHRECMMINE, 0xffff, 0x00100001, 0x00080000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_ECMMINE, 0x00ffffff, 0x00000000 tag 0x32, 1 multimonitor 0x0140, MODEL_CIHUB, 0x0239, 0x00000002, 0x00000000, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x03000000 tag 0x26, 1 weapon 0x0100, MODEL_CHREYESPY, 0xffff, 0x00100001, 0x00080000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_CAMSPY, 0x00ffffff, 0x00000000 tag 0x27, 1 weapon 0x0180, MODEL_CHRNIGHTSIGHT, 0xffff, 0x00100001, 0x00080000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_NIGHTVISION, 0x00ffffff, 0x00000000 tag 0x34, 1 object 0x0100, MODEL_LIGHTSWITCH, 0x023a, 0x10000002, 0x00080000, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x28, 1 weapon 0x0200, MODEL_CHRDOORDECODER, 0xffff, 0x00100001, 0x00080000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DOORDECODER, 0x00ffffff, 0x00000000 tag 0x35, 1 multimonitor 0x0100, MODEL_CIHUB, 0x023b, 0x00000002, 0x00000000, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x03000000 tag 0x88, 1 object 0x0200, MODEL_CHRDOORDECODER, 0x0130, 0x00020408, 0x00080001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x2c, 1 weapon 0x0180, MODEL_RUSSDAR, 0xffff, 0x00100001, 0x00080000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_RTRACKER, 0x00ffffff, 0x00000000 tag 0x36, 1 weapon 0x0180, MODEL_MISC_IRSPECS, 0xffff, 0x00100001, 0x00080000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_IRSCANNER, 0x00ffffff, 0x00000000 tag 0x29, 1 weapon 0x0180, MODEL_XRAYSPECS, 0xffff, 0x00100001, 0x00080000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_XRAYSCANNER, 0x00ffffff, 0x00000000 tag 0x38, 1 multimonitor 0x0099, MODEL_CIHUB, 0x023c, 0x00000002, 0x00000000, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x03000000 tag 0x39, 1 multimonitor 0x0099, MODEL_CIHUB, 0x023d, 0x00000002, 0x00000000, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x03000000 tag 0x2a, 1 weapon 0x0180, MODEL_CHRBRIEFCASE, 0xffff, 0x00100001, 0x00080000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_DISGUISE41, 0x00ffffff, 0x00000000 tag 0x2b, 1 weapon 0x0180, MODEL_MISC_IRSPECS, 0xffff, 0x00100001, 0x00080000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_IRSCANNER, 0x00ffffff, 0x00000000 tag 0x2d, 1 weapon 0x0180, MODEL_CHRCLOAKER, 0xffff, 0x00100001, 0x00080000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_CLOAKINGDEVICE, 0x00ffffff, 0x00000000 tag 0x3c, 1 weapon 0x0180, MODEL_CHRCLOAKER, 0x0003, 0x00104001, 0x00080000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, WEAPON_CLOAKINGDEVICE, 0x00ffffff, 0x00000000 tag 0x3d, 1 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 tag 0x3e, 1 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 tag 0x3f, 1 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 tag 0x40, 1 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 0x3a, 1 door 0x0100, MODEL_LASDOOR, 0x0189, 0x06000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0400000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 tag 0x3b, 1 door 0x0100, MODEL_LASDOOR, 0x018a, 0x06000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0400000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 camera 0x00c0, MODEL_CCTV_PD, 0x027b, 0x30020102, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000190, 0x00000000, 0x00000000, 0x0fff0000, 0x011f0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 tag 0x41, 1 door 0x0100, MODEL_DD_GRATE, 0x018b, 0x04000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000f333, 0x0000e666, 0x00007fff, 0x00014000, 0x00000666, 0x000c0004, 0x00000040, 0x000001e0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000a00, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 tag 0x37, 1 door 0x0100, MODEL_SECRETINDOOR, 0x0192, 0x10000000, 0x00000000, 0x40000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x005a0000, 0x03e80000, 0x012c0000, 0x012c0000, 0x00030000, 0x00000005, 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 0x93, 1 hover_prop 0x00eb, MODEL_HOVERCRATE1, 0x0141, 0x35100101, 0x80102300, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x02010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 hoverbike 0x0100, MODEL_HOVBIKE, 0x01f9, 0x05120101, 0x00304300, 0x02000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x01010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 tag 0x42, 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 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, 0x0000fd70, 0x0000e666, 0x00007fff, 0x00014000, 0x00000222, 0x00000004, 0x00000020, 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, 0x0167, 0x10000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x0000fd70, 0x0000e666, 0x00007fff, 0x00014000, 0x00000222, 0x00000004, 0x00000020, 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, 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 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 0x46, 1 singlemonitor 0x0100, MODEL_GOODPC, 0x022a, 0x000004e1, 0x00000000, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffff03 tag 0x45, 1 multimonitor 0x0100, MODEL_CIHUB, 0x023e, 0x00000002, 0x00020000, 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 0x47, 1 singlemonitor 0x0100, MODEL_GOODPC, 0x022b, 0x000004e8, 0x00000000, 0x00010000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffff03 tag 0x48, 1 multimonitor 0x00cc, MODEL_CIHUB, 0x0240, 0x00000002, 0x00020000, 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, 0x14000000 tag 0x49, 1 multimonitor 0x00cc, MODEL_CIHUB, 0x0241, 0x00000002, 0x00020000, 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, 0x14000000 tag 0x4a, 1 multimonitor 0x00cc, MODEL_CIHUB, 0x0242, 0x00000002, 0x00020000, 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, 0x14000000 tag 0x4b, 1 multimonitor 0x00cc, MODEL_CIHUB, 0x0243, 0x00000002, 0x00020000, 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, 0x14000000 tag 0x4c, 1 multimonitor 0x0100, MODEL_CIHUB, 0x0247, 0x00000002, 0x00020000, 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, 0x14000000 tag 0x4d, 1 multimonitor 0x0100, MODEL_CIHUB, 0x0246, 0x00000002, 0x00020000, 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, 0x14000000 tag 0x4e, 1 multimonitor 0x0100, MODEL_CIHUB, 0x0245, 0x00000002, 0x00020000, 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, 0x14000000 tag 0x4f, 1 multimonitor 0x0100, MODEL_CIHUB, 0x0244, 0x00000002, 0x00020000, 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, 0x14000000 tag 0x54, 1 multimonitor 0x0100, MODEL_CIHUB, 0x024c, 0x00000002, 0x00020000, 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, 0x14000000 tag 0x55, 1 multimonitor 0x0100, MODEL_CIHUB, 0x024d, 0x00000002, 0x00020000, 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, 0x14000000 tag 0x56, 1 multimonitor 0x0100, MODEL_CIHUB, 0x024e, 0x00000002, 0x00020000, 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, 0x14000000 tag 0x57, 1 multimonitor 0x0100, MODEL_CIHUB, 0x024f, 0x00000002, 0x00020000, 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, 0x14000000 tag 0x58, 15 tag 0x59, 15 tag 0x5a, 15 tag 0x5b, 15 tag 0x5c, 15 tag 0x5d, 15 tag 0x5e, 15 tag 0x5f, 15 tag 0x60, 15 tag 0x61, 15 tag 0x62, 15 tag 0x63, 15 tag 0x64, 15 tag 0x73, 15 tag 0x74, 15 object 0x0100, MODEL_A51_CRATE1, 0x0205, 0x000205e1, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x0206, 0x000205e1, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x0207, 0x000205e1, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x0208, 0x000205e1, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x0209, 0x000205e1, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x020a, 0x000205e1, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x020b, 0x000205e1, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x020c, 0x000205e1, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x020d, 0x000205e1, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x020e, 0x000205e1, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01d2, 0x000205e1, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x01d3, 0x000205e1, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x020f, 0x000205e1, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x0210, 0x000205e1, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 object 0x0100, MODEL_A51_CRATE1, 0x0211, 0x000205e1, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000 tag 0x67, 12 tag 0x68, 12 tag 0x69, 12 tag 0x6a, 12 tag 0x6b, 12 tag 0x6c, 12 tag 0x6d, 12 tag 0x6e, 12 tag 0x6f, 12 tag 0x70, 12 tag 0x71, 12 tag 0x72, 12 door 0x0100, MODEL_LASDOOR, 0x027c, 0x06000500, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0400000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_LASDOOR, 0x027d, 0x06000500, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0400000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_LASDOOR, 0x027e, 0x06000500, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0400000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_LASDOOR, 0x027f, 0x06000500, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0400000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_LASDOOR, 0x0280, 0x06000500, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0400000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_LASDOOR, 0x0281, 0x06000500, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0400000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_LASDOOR, 0x0282, 0x06000500, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0400000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_LASDOOR, 0x0283, 0x06000500, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0400000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_LASDOOR, 0x0284, 0x06000500, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0400000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_LASDOOR, 0x0285, 0x06000500, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0400000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_LASDOOR, 0x0286, 0x06000500, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0400000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 door 0x0100, MODEL_LASDOOR, 0x0287, 0x06000500, 0x00020000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x00011999, 0x00011999, 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x0400000b, 0x00000000, 0x00004650, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000, 0x00000000 tag 0x65, 1 multimonitor 0x00cc, MODEL_CIHUB, 0x0250, 0x00000002, 0x00020000, 0x00210000, 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, 0x14000000 tag 0x66, 1 multimonitor 0x00cc, MODEL_CIHUB, 0x0251, 0x00000002, 0x00020000, 0x00210000, 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, 0x14000000 tag 0x8b, 1 autogun 0x00a6, MODEL_CI_ROOFGUN, 0x0235, 0x00000004, 0x00000000, 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 0x8c, 1 autogun 0x00a6, MODEL_CI_ROOFGUN, 0x0234, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000003e8, 0x00000000, 0x00000000, 0x0fff0000, 0x007f0000, 0x00000000, 0x00005555, 0xffffaaab, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000aaa, 0x00320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 tag 0x8d, 1 autogun 0x00a6, MODEL_CI_ROOFGUN, 0x0233, 0x00000004, 0x00000000, 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 0x8e, 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, 0x03030300 tag 0x8f, 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, 0x03030300 tag 0x90, 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, 0x03030300 endprops /** * Wait until seeing player (without cloak) then assign colleague. */ func041d_init_collegue_when_sighted: restart_timer beginloop 0x04 if_chr_sees_player /*goto*/ 0x2f endloop 0x04 label 0x2f yield yield yield yield yield yield yield yield yield yield yield yield yield yield yield yield yield yield if_stage_flag_eq STAGEFLAG_TRIGGER_CLOAK, TRUE, /*goto*/ 0x2f set_function CHR_SELF, FUNC_COLLEAGUE label 0x2f goto_first 0x04 endfunction func041e_colleague: set_return_function CHR_SELF, FUNC_COLLEAGUE if_alertness 1, OPERATOR_LESS_THAN, /*goto*/ 0x04 if_alertness 2, OPERATOR_LESS_THAN, /*goto*/ 0x7c if_alertness 3, OPERATOR_LESS_THAN, /*goto*/ 0x7d beginloop 0x04 // Wait until player in sight and not doing idle animations already if_target_chr_in_sight /*goto*/ 0x2f if_chr_idle /*goto*/ 0x06 if_self_flag_bankx_eq CHRFLAG1_DOINGIDLEANIMATION, FALSE, BANK_1, /*goto*/ 0x7f animation 0x0227, 0, -1, 0x1400, CHR_SELF, 2 reloop 0x04 // Player not in sight - 2 in 255 chance of doing a bored animation label 0x7f call_rng if_rand_gt 1, /*goto*/ 0x06 set_function CHR_SELF, GFUNC_DO_BORED_ANIMATION label 0x06 reloop 0x04 // Player is in sight - prepare to talk label 0x2f restart_timer label 0x08 if_self_flag_bankx_eq CHRFLAG1_DOINGIDLEANIMATION, TRUE, BANK_1, /*goto*/ 0x06 try_face_entity 0x0200, 0x0000, /*goto*/ 0x09 beginloop 0x09 if_angle_to_target_chr_lt 10, /*goto*/ 0x06 if_timer_gt 60, /*goto*/ 0x06 endloop 0x09 label 0x06 if_self_flag_bankx_eq CHRFLAG1_DOINGIDLEANIMATION, TRUE, BANK_1, /*goto*/ 0x7f do_special_animation 3 goto_next 0x2f label 0x7f animation ANIM_SITTING_0265, 0, -1, 0x1400, CHR_SELF, 2 label 0x2f play_chr_specific_quip BANK_0, CHANNEL_6 restart_timer beginloop 0x57 if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x57 label 0x06 if_var_a_lt 6, /*goto*/ 0x06 goto_next 0x7e label 0x06 restart_timer stop_chr try_face_entity 0x0200, 0x0000, /*goto*/ 0x59 beginloop 0x59 if_target_chr_in_sight /*goto*/ 0x06 endloop 0x59 label 0x06 if_timer_gt 120, /*goto*/ 0x06 goto_first 0x59 label 0x06 if_player_looking_at_something_maybe 0x14, 0x01, 0x00, /*goto*/ 0x06 goto_first 0x59 label 0x06 do_special_animation -1 label 0x06 play_chr_specific_quip BANK_1, CHANNEL_6 restart_timer beginloop 0x5b if_sound_finished CHANNEL_6, /*goto*/ 0x7e endloop 0x5b label 0x7e if_self_flag_bankx_eq CHRFLAG1_DOINGIDLEANIMATION, TRUE, BANK_1, /*goto*/ 0x7f stop_chr label 0x7f set_alertness 1 label 0x7c restart_timer beginloop 0x0a if_timer_lt 600, /*goto*/ 0x2f if_target_chr_in_sight /*goto*/ 0x06 goto_next 0x2f label 0x06 if_player_looking_at_something_maybe 0x14, 0x01, 0x00, /*goto*/ 0x30 label 0x2f if_chr_idle /*goto*/ 0x06 if_self_flag_bankx_eq CHRFLAG1_DOINGIDLEANIMATION, FALSE, BANK_1, /*goto*/ 0x7f set_function CHR_SELF, GFUNC_DO_SITTING_ANIMATION reloop 0x04 label 0x7f call_rng if_rand_gt 1, /*goto*/ 0x06 set_function CHR_SELF, GFUNC_DO_BORED_ANIMATION label 0x06 endloop 0x0a label 0x30 if_self_flag_bankx_eq CHRFLAG1_DOINGIDLEANIMATION, TRUE, BANK_1, /*goto*/ 0x7f do_special_animation -1 goto_next 0x06 label 0x7f animation ANIM_SITTING_0265, 0, -1, 0x1400, CHR_SELF, 2 label 0x06 play_chr_specific_quip BANK_2, CHANNEL_6 restart_timer beginloop 0x5c if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x5c label 0x06 if_self_flag_bankx_eq CHRFLAG1_DOINGIDLEANIMATION, TRUE, BANK_1, /*goto*/ 0x7f stop_chr label 0x7f set_alertness 2 label 0x7d yield if_chr_idle /*goto*/ 0x06 if_self_flag_bankx_eq CHRFLAG1_DOINGIDLEANIMATION, FALSE, BANK_1, /*goto*/ 0x7f set_function CHR_SELF, GFUNC_DO_SITTING_ANIMATION endloop 0x04 label 0x7f call_rng if_rand_gt 1, /*goto*/ 0x06 set_function CHR_SELF, GFUNC_DO_BORED_ANIMATION label 0x06 goto_first 0x7d endfunction func041f_colleague1: set_self_flag_bank3 CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_self_flag_bank3 CHRFLAG3_UNEXPLODABLE set_var_a 0 set_function CHR_SELF, FUNC_COLLEAGUE endfunction func0420_colleague2: set_self_flag_bank3 CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_self_flag_bank3 CHRFLAG3_UNEXPLODABLE set_var_a 1 set_function CHR_SELF, FUNC_COLLEAGUE endfunction func0421_colleague3: set_self_flag_bank3 CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_self_flag_bank3 CHRFLAG3_UNEXPLODABLE set_var_a 2 set_function CHR_SELF, FUNC_COLLEAGUE endfunction func0422_colleague4: set_self_flag_bank3 CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_self_flag_bank3 CHRFLAG3_UNEXPLODABLE set_var_a 3 set_function CHR_SELF, FUNC_COLLEAGUE endfunction func0423_colleague5: set_self_flag_bank3 CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_self_flag_bank3 CHRFLAG3_UNEXPLODABLE set_var_a 4 set_function CHR_SELF, FUNC_COLLEAGUE endfunction func0424_colleague6: set_self_flag_bank3 CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_self_flag_bank3 CHRFLAG3_UNEXPLODABLE set_var_a 5 set_function CHR_SELF, FUNC_COLLEAGUE endfunction func0425_colleague7: set_self_flag_bank3 CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_self_flag_bank3 CHRFLAG3_UNEXPLODABLE set_var_a 6 set_function CHR_SELF, FUNC_COLLEAGUE endfunction func0426_colleague8: set_self_flag_bank3 CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_self_flag_bank3 CHRFLAG3_UNEXPLODABLE set_var_a 7 set_function CHR_SELF, FUNC_COLLEAGUE endfunction func0427_colleague9: set_self_flag_bank3 CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_self_flag_bank3 CHRFLAG3_UNEXPLODABLE set_var_a 8 set_function CHR_SELF, FUNC_COLLEAGUE endfunction func0428_colleague10: set_self_flag_bank3 CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_self_flag_bank3 CHRFLAG3_UNEXPLODABLE set_var_a 9 set_function CHR_SELF, FUNC_COLLEAGUE endfunction func1001_set_jo_alliance: yield set_chr_alliance CHR_JOANNA, 0x32 set_function CHR_SELF, GFUNC_IDLE endfunction func1002_devicetraining_camspy: label 0x80 beginloop 0x0f if_stage_flag_eq STAGEFLAG_TRIGGER_CAMSPY, TRUE, /*goto*/ 0x81 endloop 0x0f label 0x81 hide_object 0x0e lock_door 0x31, 0x40 lock_door 0x8a, 0x40 lock_door 0x89, 0x40 show_object OBJ_CAMSPY move_object_to_pad OBJ_CAMSPY, 0x011d unset_object_flag_bank0 OBJ_CAMSPY, OBJECTFLAG0_00100000 unset_object_flag_bank1 OBJ_CAMSPY, OBJECTFLAG1_INVISIBLE unset_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG close_door 0x31 close_door 0x8a close_door 0x89 yield show_object 0x0e label 0x8c remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c14 // "Collect CamSpy from table to begin." restart_timer beginloop 0x86 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_chr_has_object CHR_JOANNA, OBJ_CAMSPY, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x86 label 0x06 goto_first 0x8c label 0x2f label 0x8d remove_displayed_text if_chr_weapon_equipped CHR_JOANNA, WEAPON_CAMSPY, /*goto*/ 0x2f display_text 0x01, COLOR_04_ORANGE, 0x1c39 // "Select the CamSpy. - Hold A Button. - Use Control Stick to change selection. - Highlight CamSpy and release A Button." restart_timer beginloop 0x8e if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_has_weapon_equipped CHR_JOANNA, WEAPON_CAMSPY, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x8e label 0x06 goto_first 0x8d label 0x2f remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c15 // "Locate Info Room PC and holograph it." beginloop 0x82 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_door_state 0x31, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x85 if_door_state 0x8a, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x85 if_door_state 0x89, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x85 if_training_pc_holographed /*goto*/ 0x09 endloop 0x82 label 0x09 remove_displayed_text message CHR_JOANNA, 0x1c16 // "Info Room PC successfully holographed." restart_timer beginloop 0x0c if_timer_gt 240, /*goto*/ 0x83 endloop 0x0c label 0x85 dprint "fail" set_stage_flag STAGEFLAG_TRIGGER_DEVICE_FAILURE goto_next 0x84 label 0x83 dprint "done" yield set_stage_flag STAGEFLAG_TRIGGER_DEVICE_SUCCESS set_eeprom_flag EEPROMFLAG_CI_CAMSPY_DONE label 0x84 if_chr_in_room CHR_JOANNA, 0x00, 0x001e, /*goto*/ 0x90 label 0x90 set_stage_flag STAGEFLAG_CONSIDER_WARP unlock_door 0x31, 0x40 unlock_door 0x8a, 0x40 unlock_door 0x89, 0x40 remove_displayed_text hide_object OBJ_CAMSPY goto_first 0x0f set_function CHR_SELF, GFUNC_IDLE endfunction func1003_devicetraining_nightvision: label 0x80 beginloop 0x08 if_stage_flag_eq STAGEFLAG_TRIGGER_NIGHTVISION, TRUE, /*goto*/ 0x81 endloop 0x08 label 0x81 set_lights_state 0x0030, 0x01, 0x00, 0x00, 0x00 set_lights_state 0x002e, 0x01, 0x00, 0x00, 0x00 set_lights_state 0x002f, 0x01, 0x00, 0x00, 0x00 set_lights_state 0x0020, 0x01, 0x00, 0x00, 0x00 set_lights_state 0x0024, 0x01, 0x00, 0x00, 0x00 set_lights_state 0x0025, 0x01, 0x00, 0x00, 0x00 set_lights_state 0x0026, 0x01, 0x00, 0x00, 0x00 set_lights_state 0x0022, 0x01, 0x00, 0x00, 0x00 set_stage_flag STAGEFLAG_IN_TRAINING lock_door 0x31, 0x40 lock_door 0x8a, 0x40 lock_door 0x89, 0x40 show_object 0x27 move_object_to_pad 0x27, 0x011d unset_object_flag_bank0 0x27, OBJECTFLAG0_00100000 unset_object_flag_bank1 0x27, OBJECTFLAG1_INVISIBLE unset_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG close_door 0x31 close_door 0x8a close_door 0x89 label 0x8c remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c08 // "Collect Night Vision from table to begin." restart_timer beginloop 0x86 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_chr_has_object CHR_JOANNA, 0x27, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x86 label 0x06 goto_first 0x8c label 0x2f label 0x8d remove_displayed_text if_chr_weapon_equipped CHR_JOANNA, WEAPON_NIGHTVISION, /*goto*/ 0x2f display_text 0x01, COLOR_04_ORANGE, 0x1c3a // "Select the Night Vision. - Hold A Button. - Use Control Stick to change selection. - Highlight Night Vision and release A Button." restart_timer beginloop 0x8e if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_has_weapon_equipped CHR_JOANNA, WEAPON_NIGHTVISION, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x8e label 0x06 goto_first 0x8d label 0x2f remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c09 // "Activate the Night Vision. Locate the light switch. Turn the lights back on." beginloop 0x82 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_chr_activated_object CHR_F3, OBJ_LIGHTSWITCH, /*goto*/ 0x2f endloop 0x82 label 0x2f play_sound 0x00ba, -1 set_lights_state 0x0030, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x002e, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x002f, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x0020, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x0024, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x0025, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x0026, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x0022, 0x01, 0xff, 0x00, 0x00 remove_displayed_text message CHR_JOANNA, 0x1c17 // "Lights have been reactivated." restart_timer beginloop 0x0d if_timer_gt 240, /*goto*/ 0x83 endloop 0x0d label 0x85 dprint "fail" set_stage_flag STAGEFLAG_TRIGGER_DEVICE_FAILURE goto_next 0x84 label 0x83 set_eeprom_flag EEPROMFLAG_CI_NIGHTVISION_DONE dprint "done" set_stage_flag STAGEFLAG_TRIGGER_DEVICE_SUCCESS set_lights_state 0x0030, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x002e, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x002f, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x0020, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x0024, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x0025, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x0026, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x0022, 0x01, 0xff, 0x00, 0x00 yield label 0x84 if_chr_in_room CHR_JOANNA, 0x00, 0x001e, /*goto*/ 0x90 label 0x90 unlock_door 0x31, 0x40 unlock_door 0x8a, 0x40 unlock_door 0x89, 0x40 set_stage_flag STAGEFLAG_CONSIDER_WARP remove_displayed_text hide_object 0x27 beginloop 0x59 if_stage_flag_eq STAGEFLAG_TRIGGER_NIGHTVISION, FALSE, /*goto*/ 0x2f endloop 0x59 label 0x2f goto_first 0x08 set_function CHR_SELF, GFUNC_IDLE endfunction func1004_devicetraining_doordecoder: label 0x80 beginloop 0x0f if_stage_flag_eq STAGEFLAG_TRIGGER_DOORDECODER, TRUE, /*goto*/ 0x81 endloop 0x0f label 0x81 set_object_flag_bank1 0x88, OBJECTFLAG1_INVISIBLE set_stage_flag STAGEFLAG_IN_TRAINING lock_door 0x31, 0x40 lock_door 0x8a, 0x40 lock_door 0x89, 0x40 show_object 0x28 move_object_to_pad 0x28, 0x011d unset_object_flag_bank0 0x28, OBJECTFLAG0_00100000 unset_object_flag_bank1 0x28, OBJECTFLAG1_INVISIBLE unset_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG close_door 0x31 close_door 0x8a close_door 0x89 label 0x8c remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c18 // "Collect Door Decoder from table to begin." restart_timer beginloop 0x86 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_chr_has_object CHR_JOANNA, 0x28, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x86 label 0x06 goto_first 0x8c label 0x2f label 0x8d remove_displayed_text if_chr_weapon_equipped CHR_JOANNA, WEAPON_DOORDECODER, /*goto*/ 0x2f display_text 0x01, COLOR_04_ORANGE, 0x1c3b // "Select the Door Decoder. - Hold A Button. - Use Control Stick to change selection. - Highlight Door Decoder and release A Button." restart_timer beginloop 0x8e if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_weapon_equipped CHR_JOANNA, WEAPON_DOORDECODER, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x8e label 0x06 goto_first 0x8d label 0x2f if_chr_activated_object CHR_JOANNA, 0x35, /*goto*/ 0x2f label 0x2f remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c19 // "Use Decoder on door pad to unlock it." beginloop 0x82 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_door_state 0x31, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x85 if_door_state 0x8a, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x85 if_door_state 0x89, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x85 if_chr_activated_object CHR_JOANNA, 0x35, /*goto*/ 0x09 endloop 0x82 label 0x09 if_chr_weapon_equipped CHR_JOANNA, WEAPON_DOORDECODER, /*goto*/ 0x06 remove_displayed_text message CHR_JOANNA, 0x1c1a // "You need to be holding the Door Decoder." restart_timer beginloop 0x0e if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 60, /*goto*/ 0x2f endloop 0x0e label 0x2f goto_first 0x82 label 0x06 remove_displayed_text message CHR_JOANNA, 0x1c1b // "Decoder attached. Initiating cracking routines..." unset_object_flag_bank1 0x88, OBJECTFLAG1_INVISIBLE assign_sound 0x8144, CHANNEL_1 play_sound_from_object CHANNEL_1, 0x35, 0x012c, 0x0190 restart_timer beginloop 0x0c if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 240, /*goto*/ 0x2f endloop 0x0c label 0x2f mute_channel CHANNEL_1 assign_sound 0x8145, CHANNEL_1 control_sound_from_object CHANNEL_1, 0x35, TRUE remove_displayed_text message CHR_JOANNA, 0x1c1c // "Decoding complete. Door has been unlocked." unlock_door 0x41, 0x40 restart_timer beginloop 0x0d if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 240, /*goto*/ 0x83 endloop 0x0d label 0x85 dprint "fail" set_stage_flag STAGEFLAG_TRIGGER_DEVICE_FAILURE goto_next 0x84 label 0x83 set_eeprom_flag EEPROMFLAG_CI_DOORDECODER_DONE dprint "done" yield set_stage_flag STAGEFLAG_TRIGGER_DEVICE_SUCCESS unset_object_flag_bank1 0x88, OBJECTFLAG1_INVISIBLE label 0x84 if_chr_in_room CHR_JOANNA, 0x00, 0x001e, /*goto*/ 0x90 label 0x90 mute_channel CHANNEL_1 unlock_door 0x31, 0x40 unlock_door 0x8a, 0x40 unlock_door 0x89, 0x40 set_stage_flag STAGEFLAG_CONSIDER_WARP remove_displayed_text hide_object 0x28 goto_first 0x0f set_function CHR_SELF, GFUNC_IDLE endfunction func1005_devicetraining_xray: label 0x80 beginloop 0x08 if_stage_flag_eq STAGEFLAG_TRIGGER_XRAY, TRUE, /*goto*/ 0x81 endloop 0x08 label 0x81 lock_door 0x31, 0x40 lock_door 0x8a, 0x40 lock_door 0x89, 0x40 dprint "training" show_object 0x29 move_object_to_pad 0x29, 0x011d unset_object_flag_bank0 0x29, OBJECTFLAG0_00100000 unset_object_flag_bank1 0x29, OBJECTFLAG1_INVISIBLE unset_object_flag_bank1 0x38, OBJECTFLAG1_00000001 unset_object_flag_bank1 0x39, OBJECTFLAG1_00000001 unset_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG close_door 0x31 close_door 0x8a close_door 0x89 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 label 0x8c remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c23 // "Collect X-Ray Scanner from table to begin." restart_timer beginloop 0x86 if_chr_has_weapon_equipped CHR_JOANNA, WEAPON_XRAYSCANNER, /*goto*/ 0x2f set_object_flag_bank0 0x38, OBJECTFLAG0_02000000 set_object_flag_bank0 0x39, OBJECTFLAG0_02000000 goto_next 0x30 label 0x2f unset_object_flag_bank0 0x38, OBJECTFLAG0_02000000 unset_object_flag_bank0 0x39, OBJECTFLAG0_02000000 label 0x30 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_chr_has_object CHR_JOANNA, 0x29, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x86 label 0x06 goto_first 0x8c label 0x8d remove_displayed_text if_chr_weapon_equipped CHR_JOANNA, WEAPON_XRAYSCANNER, /*goto*/ 0x2f display_text 0x01, COLOR_04_ORANGE, 0x1c3c // "Select the X-Ray Scanner. - Hold A Button. - Use Control Stick to change selection. - Highlight X-Ray Scanner and release A Button." restart_timer beginloop 0x8e if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_has_weapon_equipped CHR_JOANNA, WEAPON_XRAYSCANNER, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x8e label 0x06 goto_first 0x8d label 0x2f remove_displayed_text message CHR_JOANNA, 0x1c24 // "Find hidden switches to shut down laser grid." beginloop 0x82 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_chr_has_weapon_equipped CHR_JOANNA, WEAPON_XRAYSCANNER, /*goto*/ 0x2f set_object_flag_bank0 0x38, OBJECTFLAG0_02000000 set_object_flag_bank0 0x39, OBJECTFLAG0_02000000 goto_next 0x30 label 0x2f unset_object_flag_bank0 0x38, OBJECTFLAG0_02000000 unset_object_flag_bank0 0x39, OBJECTFLAG0_02000000 label 0x30 if_chr_activated_object CHR_JOANNA, 0x38, /*goto*/ 0x5b if_chr_activated_object CHR_JOANNA, 0x39, /*goto*/ 0x5c endloop 0x82 label 0x5b if_object_flag_bank1 0x38, OBJECTFLAG1_00000001, /*goto*/ 0x87 remove_displayed_text message CHR_JOANNA, 0x1c29 // "Laser Grid 1 has been deactivated." set_object_image 0x38, 0x00, 0x12 set_object_flag_bank1 0x38, OBJECTFLAG1_00000001 open_door 0x3a label 0x87 restart_timer beginloop 0x89 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x85 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x85 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x85 if_timer_gt 60, /*goto*/ 0x06 endloop 0x89 label 0x5c if_object_flag_bank1 0x39, OBJECTFLAG1_00000001, /*goto*/ 0x88 set_object_image 0x39, 0x00, 0x12 remove_displayed_text message CHR_JOANNA, 0x1c2a // "Laser Grid 2 has been deactivated." set_object_flag_bank1 0x39, OBJECTFLAG1_00000001 open_door 0x3b label 0x88 restart_timer beginloop 0x8a if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 60, /*goto*/ 0x06 endloop 0x8a label 0x8b hide_object 0x3a goto_next 0x06 label 0x07 hide_object 0x3b goto_next 0x06 label 0x06 if_object_flag_bank1 0x38, OBJECTFLAG1_00000001, /*goto*/ 0x2f goto_first 0x82 label 0x2f if_object_flag_bank1 0x39, OBJECTFLAG1_00000001, /*goto*/ 0x2f goto_first 0x82 label 0x09 restart_timer beginloop 0x5b if_timer_gt 120, /*goto*/ 0x2f endloop 0x5b label 0x2f remove_displayed_text message CHR_JOANNA, 0x1c25 // "All laser grids have been deactivated." restart_timer beginloop 0x0e if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 240, /*goto*/ 0x83 endloop 0x0e label 0x85 dprint "fail" set_stage_flag STAGEFLAG_TRIGGER_DEVICE_FAILURE goto_next 0x84 label 0x83 set_eeprom_flag EEPROMFLAG_CI_XRAY_DONE dprint "done" yield set_stage_flag STAGEFLAG_TRIGGER_DEVICE_SUCCESS label 0x84 if_chr_in_room CHR_JOANNA, 0x00, 0x001e, /*goto*/ 0x90 label 0x90 unlock_door 0x31, 0x40 unlock_door 0x8a, 0x40 unlock_door 0x89, 0x40 set_stage_flag STAGEFLAG_CONSIDER_WARP remove_displayed_text hide_object 0x29 goto_first 0x08 set_function CHR_SELF, GFUNC_IDLE endfunction func1006_devicetraining_disguise: label 0x80 beginloop 0x08 if_stage_flag_eq STAGEFLAG_TRIGGER_DISGUISE, TRUE, /*goto*/ 0x81 endloop 0x08 label 0x81 unset_chr_flag_bank2 CHR_JOANNA, CHRFLAG2_DISGUISED unset_stage_flag STAGEFLAG_DISGUISE_FAILED unset_stage_flag STAGEFLAG_DISGUISE_COMPLETE lock_door 0x31, 0x40 lock_door 0x8a, 0x40 lock_door 0x89, 0x40 dprint "training" show_object 0x2a move_object_to_pad 0x2a, 0x011d unset_object_flag_bank0 0x2a, OBJECTFLAG0_00100000 unset_object_flag_bank1 0x2a, OBJECTFLAG1_INVISIBLE set_function 0x03, FUNC_GRIMSHAW_DISGUISE unset_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG close_door 0x31 close_door 0x8a close_door 0x89 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 label 0x8c remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c26 // "Collect Disguise from table to begin." restart_timer beginloop 0x86 if_stage_flag_eq STAGEFLAG_DISGUISE_FAILED, TRUE, /*goto*/ 0x0a if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_chr_has_object CHR_JOANNA, 0x2a, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x86 label 0x06 goto_first 0x8c label 0x2f label 0x8d remove_displayed_text if_chr_flag_bank2 CHR_JOANNA, CHRFLAG2_DISGUISED, /*goto*/ 0x2f display_text 0x01, COLOR_04_ORANGE, 0x1c3d // "Select the Disguise. - Hold A Button. - Use Control Stick to change selection. - Highlight Disguise and release A Button." restart_timer beginloop 0x8e if_stage_flag_eq STAGEFLAG_DISGUISE_FAILED, TRUE, /*goto*/ 0x0a if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_flag_bank2 CHR_JOANNA, CHRFLAG2_DISGUISED, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x8e label 0x06 goto_first 0x8d label 0x2f remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c27 // "Fool someone into giving you Cloaking Device." beginloop 0x82 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_door_state 0x31, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x85 if_door_state 0x8a, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x85 if_door_state 0x89, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x85 if_stage_flag_eq STAGEFLAG_DISGUISE_COMPLETE, TRUE, /*goto*/ 0x09 if_stage_flag_eq STAGEFLAG_DISGUISE_FAILED, TRUE, /*goto*/ 0x0a endloop 0x82 label 0x09 remove_displayed_text message CHR_JOANNA, 0x1c28 // "Cloaking Device successfully retrieved." restart_timer beginloop 0x0e if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 240, /*goto*/ 0x83 endloop 0x0e label 0x0a remove_displayed_text message CHR_JOANNA, 0x1c2f // "You're meant to use the Disguise, remember?" restart_timer beginloop 0x0f if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 label 0x59 if_timer_gt 240, /*goto*/ 0x85 endloop 0x0f label 0x85 dprint "fail" set_stage_flag STAGEFLAG_TRIGGER_DEVICE_FAILURE goto_next 0x84 label 0x83 set_eeprom_flag EEPROMFLAG_CI_DISGUISE_DONE dprint "done" yield set_stage_flag STAGEFLAG_TRIGGER_DEVICE_SUCCESS label 0x84 if_chr_in_room CHR_JOANNA, 0x00, 0x001e, /*goto*/ 0x90 label 0x90 unlock_door 0x31, 0x40 unlock_door 0x8a, 0x40 unlock_door 0x89, 0x40 set_stage_flag STAGEFLAG_CONSIDER_WARP remove_displayed_text hide_object 0x2a beginloop 0x6d if_stage_flag_eq STAGEFLAG_TRIGGER_DISGUISE, FALSE, /*goto*/ 0x2f endloop 0x6d label 0x2f set_function 0x03, FUNC_INIT_COLLEAGUE_WHEN_SIGHTED goto_first 0x08 set_function CHR_SELF, GFUNC_IDLE endfunction func1007_devicetrainign_ir: label 0x80 beginloop 0x08 if_stage_flag_eq STAGEFLAG_TRIGGER_IR, TRUE, /*goto*/ 0x81 endloop 0x08 label 0x81 if_chr_activated_object CHR_JOANNA, 0x37, /*goto*/ 0x2f label 0x2f lock_door 0x31, 0x40 lock_door 0x8a, 0x40 lock_door 0x89, 0x40 dprint "training" show_object 0x2b move_object_to_pad 0x2b, 0x011d unset_object_flag_bank0 0x2b, OBJECTFLAG0_00100000 unset_object_flag_bank1 0x2b, OBJECTFLAG1_INVISIBLE unset_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG close_door 0x31 close_door 0x8a close_door 0x89 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 label 0x8c remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c20 // "Collect IR Scanner from table to begin." restart_timer beginloop 0x86 if_chr_has_weapon_equipped CHR_JOANNA, WEAPON_IRSCANNER, /*goto*/ 0x2f set_object_flag_bank0 0x37, OBJECTFLAG0_02000000 goto_next 0x30 label 0x2f unset_object_flag_bank0 0x37, OBJECTFLAG0_02000000 label 0x30 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_chr_has_object CHR_JOANNA, 0x2b, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x86 label 0x06 goto_first 0x8c label 0x2f label 0x8d remove_displayed_text if_chr_has_weapon_equipped CHR_JOANNA, WEAPON_IRSCANNER, /*goto*/ 0x2f display_text 0x01, COLOR_04_ORANGE, 0x1c3e // "Select the IR Scanner. - Hold A Button. - Use Control Stick to change selection. - Highlight IR Scanner and release A Button." restart_timer beginloop 0x8e if_chr_has_weapon_equipped CHR_JOANNA, WEAPON_IRSCANNER, /*goto*/ 0x2f set_object_flag_bank0 0x37, OBJECTFLAG0_02000000 goto_next 0x30 label 0x2f unset_object_flag_bank0 0x37, OBJECTFLAG0_02000000 label 0x30 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_has_weapon_equipped CHR_JOANNA, WEAPON_IRSCANNER, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x8e label 0x06 goto_first 0x8d label 0x2f remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c21 // "Locate secret door using IR Scanner." beginloop 0x82 if_chr_has_weapon_equipped CHR_JOANNA, WEAPON_IRSCANNER, /*goto*/ 0x2f set_object_flag_bank0 0x37, OBJECTFLAG0_02000000 goto_next 0x30 label 0x2f unset_object_flag_bank0 0x37, OBJECTFLAG0_02000000 label 0x30 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_door_state 0x31, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x85 if_door_state 0x8a, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x85 if_door_state 0x89, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x85 if_chr_activated_object CHR_JOANNA, 0x37, /*goto*/ 0x09 endloop 0x82 label 0x09 remove_displayed_text message CHR_JOANNA, 0x1c22 // "Secret door has been successfully located." restart_timer beginloop 0x0e if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 240, /*goto*/ 0x83 endloop 0x0e label 0x85 dprint "fail" set_stage_flag STAGEFLAG_TRIGGER_DEVICE_FAILURE goto_next 0x84 label 0x83 set_eeprom_flag EEPROMFLAG_CI_IR_DONE dprint "done" yield set_stage_flag STAGEFLAG_TRIGGER_DEVICE_SUCCESS label 0x84 if_chr_in_room CHR_JOANNA, 0x00, 0x001e, /*goto*/ 0x90 label 0x90 unlock_door 0x31, 0x40 unlock_door 0x8a, 0x40 unlock_door 0x89, 0x40 set_stage_flag STAGEFLAG_CONSIDER_WARP remove_displayed_text hide_object 0x2b goto_first 0x08 set_function CHR_SELF, GFUNC_IDLE endfunction func1008_devicetraining_rtracker: label 0x80 beginloop 0x08 if_stage_flag_eq STAGEFLAG_TRIGGER_RTRACKER, TRUE, /*goto*/ 0x81 endloop 0x08 label 0x81 lock_door 0x31, 0x40 lock_door 0x8a, 0x40 lock_door 0x89, 0x40 dprint "training" show_object 0x2c move_object_to_pad 0x2c, 0x011d unset_object_flag_bank0 0x2c, OBJECTFLAG0_00100000 unset_object_flag_bank1 0x2c, OBJECTFLAG1_INVISIBLE unset_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG close_door 0x31 close_door 0x8a close_door 0x89 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 label 0x8c remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c1d // "Collect Tracker from table to begin." restart_timer beginloop 0x86 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_chr_has_object CHR_JOANNA, 0x2c, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x86 label 0x06 goto_first 0x8c label 0x2f label 0x8d remove_displayed_text if_chr_has_weapon_equipped CHR_JOANNA, WEAPON_RTRACKER, /*goto*/ 0x2f display_text 0x01, COLOR_04_ORANGE, 0x1c3f // "Select the Tracker. - Hold A Button. - Use Control Stick to change selection. - Highlight Tracker and release A Button." restart_timer beginloop 0x8e if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_has_weapon_equipped CHR_JOANNA, WEAPON_RTRACKER, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x8e label 0x06 goto_first 0x8d label 0x2f unset_object_flag_bank0 0x36, OBJECTFLAG0_00100000 unset_object_flag_bank1 0x36, OBJECTFLAG1_INVISIBLE show_object 0x36 move_object_to_pad 0x36, 0x011e set_object_flag_bank2 0x36, OBJECTFLAG2_RTRACKED_YELLOW remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c1e // "Locate IR Scanner using Tracker." beginloop 0x82 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_door_state 0x31, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x85 if_door_state 0x8a, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x85 if_door_state 0x89, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x85 if_chr_has_object CHR_JOANNA, 0x36, /*goto*/ 0x09 endloop 0x82 label 0x09 remove_displayed_text message CHR_JOANNA, 0x1c1f // "IR Scanner has been successfully located." restart_timer beginloop 0x0e if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 240, /*goto*/ 0x83 endloop 0x0e label 0x85 dprint "fail" set_stage_flag STAGEFLAG_TRIGGER_DEVICE_FAILURE goto_next 0x84 label 0x83 set_eeprom_flag EEPROMFLAG_CI_RTRACKER_DONE dprint "done" yield set_stage_flag STAGEFLAG_TRIGGER_DEVICE_SUCCESS label 0x84 if_chr_in_room CHR_JOANNA, 0x00, 0x001e, /*goto*/ 0x90 label 0x90 unlock_door 0x31, 0x40 unlock_door 0x8a, 0x40 unlock_door 0x89, 0x40 set_stage_flag STAGEFLAG_CONSIDER_WARP remove_displayed_text hide_object 0x2c hide_object 0x36 goto_first 0x08 set_function CHR_SELF, GFUNC_IDLE endfunction func1009_devicetraining_cloak: label 0x80 beginloop 0x08 if_stage_flag_eq STAGEFLAG_TRIGGER_CLOAK, TRUE, /*goto*/ 0x81 endloop 0x08 label 0x81 deactivate_alarm unset_stage_flag STAGEFLAG_GENERAL_PURPOSE lock_door 0x31, 0x40 lock_door 0x8a, 0x40 lock_door 0x89, 0x40 dprint "training" restart_timer show_object 0x2d move_object_to_pad 0x2d, 0x011d unset_stage_flag STAGEFLAG_CLOAK_FAILED unset_stage_flag STAGEFLAG_CLOAK_COMPLETE unset_object_flag_bank0 0x2d, OBJECTFLAG0_00100000 unset_object_flag_bank1 0x2d, OBJECTFLAG1_INVISIBLE unset_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG close_door 0x31 close_door 0x8a close_door 0x89 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 label 0x8c remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c33 // "Collect Cloaking Device from table to begin." restart_timer beginloop 0x86 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_stage_flag_eq STAGEFLAG_CLOAK_COMPLETE, TRUE, /*goto*/ 0x09 if_stage_flag_eq STAGEFLAG_CLOAK_FAILED, TRUE, /*goto*/ 0x0a if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_chr_has_object CHR_JOANNA, 0x2d, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x86 label 0x06 goto_first 0x8c label 0x2f set_function CHR_CARRINGTON, FUNC_CARRINGTON_CLOAK label 0x8d remove_displayed_text if_chr_has_weapon_equipped CHR_JOANNA, WEAPON_CLOAKINGDEVICE, /*goto*/ 0x2f display_text 0x01, COLOR_04_ORANGE, 0x1c40 // "Select the Cloaking Device. - Hold A Button. - Use Control Stick to change selection. - Highlight Device and release A Button." restart_timer beginloop 0x8e if_stage_flag_eq STAGEFLAG_CLOAK_COMPLETE, TRUE, /*goto*/ 0x09 if_stage_flag_eq STAGEFLAG_CLOAK_FAILED, TRUE, /*goto*/ 0x0a if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_has_weapon_equipped CHR_JOANNA, WEAPON_CLOAKINGDEVICE, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x8e label 0x06 goto_first 0x8d label 0x2f remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c34 // "Use Cloaking Device and locate Carrington." beginloop 0x82 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_door_state 0x31, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x85 if_door_state 0x8a, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x85 if_door_state 0x89, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x85 if_stage_flag_eq STAGEFLAG_CLOAK_COMPLETE, TRUE, /*goto*/ 0x09 if_stage_flag_eq STAGEFLAG_CLOAK_FAILED, TRUE, /*goto*/ 0x0a endloop 0x82 label 0x09 remove_displayed_text message CHR_JOANNA, 0x1c36 // "Mission complete - Device Training passed!" restart_timer beginloop 0x0e if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 240, /*goto*/ 0x83 endloop 0x0e label 0x0a remove_displayed_text message CHR_JOANNA, 0x1c37 // "Mission failed - you have been detected." restart_timer beginloop 0x0f if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 240, /*goto*/ 0x85 endloop 0x0f label 0x85 dprint "fail" set_stage_flag STAGEFLAG_TRIGGER_DEVICE_FAILURE goto_next 0x84 label 0x83 set_eeprom_flag EEPROMFLAG_CI_CLOAK_DONE dprint "done" yield set_stage_flag STAGEFLAG_TRIGGER_DEVICE_SUCCESS label 0x84 if_chr_in_room CHR_JOANNA, 0x00, 0x001e, /*goto*/ 0x90 label 0x90 unlock_door 0x31, 0x40 unlock_door 0x8a, 0x40 unlock_door 0x89, 0x40 set_stage_flag STAGEFLAG_CONSIDER_WARP remove_displayed_text hide_object 0x2d beginloop 0x5c if_stage_flag_eq STAGEFLAG_TRIGGER_CLOAK, FALSE, /*goto*/ 0x2f endloop 0x5c label 0x2f set_function CHR_CARRINGTON, FUNC_INIT_COLLEAGUE_WHEN_SIGHTED goto_first 0x08 set_function CHR_SELF, GFUNC_IDLE endfunction func100a_devicetraining_ecmmine: label 0x80 beginloop 0x0f if_stage_flag_eq STAGEFLAG_TRIGGER_ECMMINE, TRUE, /*goto*/ 0x81 endloop 0x0f label 0x81 lock_door 0x31, 0x40 lock_door 0x8a, 0x40 lock_door 0x89, 0x40 show_object 0x2e move_object_to_pad 0x2e, 0x011d unset_object_flag_bank0 0x2e, OBJECTFLAG0_00100000 unset_object_flag_bank1 0x2e, OBJECTFLAG1_INVISIBLE unset_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG close_door 0x31 close_door 0x8a close_door 0x89 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 label 0x8c remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c10 // "Collect ECM Mine from table to begin." restart_timer beginloop 0x86 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_chr_has_object CHR_JOANNA, 0x2e, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x86 label 0x06 goto_first 0x8c label 0x2f label 0x8d remove_displayed_text if_chr_weapon_equipped CHR_JOANNA, WEAPON_ECMMINE, /*goto*/ 0x2f display_text 0x01, COLOR_04_ORANGE, 0x1c41 // "Select the ECM Mine. - Hold A Button. - Use Control Stick to change selection. - Highlight ECM Mine and release A Button." restart_timer beginloop 0x8e if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_weapon_equipped CHR_JOANNA, WEAPON_ECMMINE, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x8e label 0x06 goto_first 0x8d label 0x2f remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c11 // "Locate Hub and throw ECM Mine onto Hub." beginloop 0x82 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_ammo_quantity_lt CHR_JOANNA, AMMOTYPE_ECM_MINE, 1, /*goto*/ 0x2f endloop 0x82 label 0x2f yield yield yield yield yield if_weapon_thrown WEAPON_ECMMINE, /*goto*/ 0x06 goto_first 0x82 label 0x06 restart_timer beginloop 0x08 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_weapon_thrown_on_object WEAPON_ECMMINE, 0x32, /*goto*/ 0x09 if_timer_gt 120, /*goto*/ 0x0a endloop 0x08 label 0x09 remove_displayed_text message CHR_JOANNA, 0x1c13 // "ECM Mine has been placed correctly." restart_timer beginloop 0x0c if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_timer_gt 240, /*goto*/ 0x83 endloop 0x0c label 0x0a remove_displayed_text message CHR_JOANNA, 0x1c12 // "ECM Mine has been placed incorrectly." restart_timer beginloop 0x0d if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_timer_gt 240, /*goto*/ 0x85 endloop 0x0d label 0x85 dprint "fail" set_stage_flag STAGEFLAG_TRIGGER_DEVICE_FAILURE goto_next 0x84 label 0x83 set_eeprom_flag EEPROMFLAG_CI_ECMMINE_DONE dprint "done" yield set_stage_flag STAGEFLAG_TRIGGER_DEVICE_SUCCESS label 0x84 if_chr_in_room CHR_JOANNA, 0x00, 0x001e, /*goto*/ 0x90 label 0x90 unlock_door 0x31, 0x40 unlock_door 0x8a, 0x40 unlock_door 0x89, 0x40 set_stage_flag STAGEFLAG_CONSIDER_WARP remove_displayed_text hide_object 0x2e goto_first 0x0f set_function CHR_SELF, GFUNC_IDLE endfunction func100b_devicetraining_uplink: label 0x80 beginloop 0x08 if_stage_flag_eq STAGEFLAG_TRIGGER_UPLINK, TRUE, /*goto*/ 0x81 endloop 0x08 label 0x81 lock_door 0x31, 0x40 lock_door 0x8a, 0x40 lock_door 0x89, 0x40 unset_stage_flag STAGEFLAG_DEVICE_ABORTING unset_stage_flag STAGEFLAG_TRIGGER_DEVICE_SUCCESS unset_stage_flag STAGEFLAG_TRIGGER_DEVICE_FAILURE show_object 0x2f move_object_to_pad 0x2f, 0x0131 unset_object_flag_bank0 0x2f, OBJECTFLAG0_00100000 unset_object_flag_bank1 0x2f, OBJECTFLAG1_INVISIBLE dprint "training" close_door 0x31 close_door 0x8a close_door 0x89 unset_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x8c if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x8c if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x8c label 0x8c remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c0a // "Collect Data Uplink from table to begin." restart_timer beginloop 0x86 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_chr_has_object CHR_JOANNA, 0x2f, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x86 label 0x06 goto_first 0x8c label 0x2f label 0x8d remove_displayed_text if_chr_weapon_equipped CHR_JOANNA, WEAPON_DATAUPLINK, /*goto*/ 0x2f display_text 0x01, COLOR_04_ORANGE, 0x1c38 // "Select the Uplink. - Hold A Button. - Use Control Stick to change selection. - Highlight Data Uplink and release A Button." restart_timer beginloop 0x8e if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_weapon_equipped CHR_JOANNA, WEAPON_DATAUPLINK, /*goto*/ 0x2f if_timer_gt 1200, /*goto*/ 0x06 endloop 0x8e label 0x06 goto_first 0x8d label 0x2f if_chr_activated_object CHR_JOANNA, 0x30, /*goto*/ 0x2f label 0x2f remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c0b // "Stand next to the terminal and use the Uplink." beginloop 0x82 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x30, /*goto*/ 0x2f if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 endloop 0x82 label 0x2f if_chr_weapon_equipped CHR_JOANNA, WEAPON_DATAUPLINK, /*goto*/ 0x2f play_sound 0x8116, -1 remove_displayed_text message CHR_JOANNA, 0x1c0c // "You need to be holding the Data Uplink." goto_first 0x82 label 0x2f remove_displayed_text message CHR_JOANNA, 0x1c0d // "Connection established..." restart_timer label 0x08 yield if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 assign_sound 0x01bf, CHANNEL_5 control_sound_from_object CHANNEL_5, 0x30, TRUE label 0x14 yield if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 400, /*goto*/ 0x06 if_chr_distance_to_pad_gt CHR_JOANNA, 400, 0x0227, /*goto*/ 0x09 if_chr_weapon_equipped CHR_JOANNA, WEAPON_DATAUPLINK, /*goto*/ 0x2f goto_first 0x09 label 0x2f goto_first 0x14 label 0x06 restart_timer mute_channel CHANNEL_5 assign_sound 0x01c1, CHANNEL_7 control_sound_from_object CHANNEL_7, 0x30, TRUE remove_displayed_text message TARGET_CHR, 0x1c0e // "Terminal has been successfully hacked." beginloop 0x15 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 240, /*goto*/ 0x06 endloop 0x15 label 0x06 goto_next 0x83 label 0x09 remove_displayed_text message CHR_JOANNA, 0x1c0f // "Connection broken - too far from PC." mute_channel CHANNEL_5 assign_sound 0x01c0, CHANNEL_6 control_sound_from_object CHANNEL_6, 0x30, TRUE restart_timer beginloop 0x16 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x90 if_chr_activated_object CHR_JOANNA, 0x31, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x8a, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x89, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 120, /*goto*/ 0x06 endloop 0x16 label 0x06 mute_channel CHANNEL_6 goto_first 0x82 label 0x85 dprint "fail" set_stage_flag STAGEFLAG_TRIGGER_DEVICE_FAILURE goto_next 0x84 label 0x83 set_eeprom_flag EEPROMFLAG_CI_UPLINK_DONE dprint "done" set_stage_flag STAGEFLAG_TRIGGER_DEVICE_SUCCESS yield goto_next 0x84 label 0x84 if_chr_in_room CHR_JOANNA, 0x00, 0x001e, /*goto*/ 0x90 label 0x90 unlock_door 0x31, 0x40 unlock_door 0x8a, 0x40 unlock_door 0x89, 0x40 set_stage_flag STAGEFLAG_CONSIDER_WARP remove_displayed_text mute_channel CHANNEL_5 mute_channel CHANNEL_6 mute_channel CHANNEL_7 dprint "aborted" hide_object 0x2f goto_first 0x08 set_function CHR_SELF, GFUNC_IDLE endfunction func101a_move_jo_to_training_room: // Wait for flag to be set while not in training beginloop 0x04 if_stage_flag_eq STAGEFLAG_CONSIDER_WARP, TRUE, /*goto*/ 0x2f reloop 0x04 label 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_UPLINK, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_ECMMINE, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_CAMSPY, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_NIGHTVISION, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_DOORDECODER, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_RTRACKER, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_IR, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_XRAY, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_DISGUISE, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_CLOAK, TRUE, /*goto*/ 0x2f goto_next 0x06 label 0x2f endloop 0x04 label 0x06 unset_stage_flag STAGEFLAG_CONSIDER_WARP if_chr_in_room CHR_JOANNA, 0x00, 0x001e, /*goto*/ 0x2f goto_next 0x30 // In room label 0x2f reloop 0x04 // Not in room label 0x30 revoke_control CHR_JOANNA, 0 fade_to_color 0x000000ff, 0 fade_to_color 0x00000000, 5000 restart_timer beginloop 0x08 if_timer_gt 30, /*goto*/ 0x2f endloop 0x08 label 0x2f if_chr_in_room CHR_JOANNA, 0x00, 0x0016, /*goto*/ 0x2f if_chr_in_room CHR_JOANNA, 0x00, 0x0017, /*goto*/ 0x2f if_chr_in_room CHR_JOANNA, 0x00, 0x0018, /*goto*/ 0x2f if_chr_in_room CHR_JOANNA, 0x00, 0x0019, /*goto*/ 0x2f if_chr_in_room CHR_JOANNA, 0x00, 0x0014, /*goto*/ 0x2f enter_camera_and_move_to_pad 0x0151 set_function CHR_P1P2, FUNC_MOVE_TO_DEVICEROOM goto_next 0x06 label 0x2f enter_camera_and_move_to_pad 0x020a set_function CHR_P1P2, FUNC_MOVE_TO_HOLOROOM label 0x06 yield yield yield yield enter_firstperson fade_to_color 0x000000ff, 0 fade_to_color 0x00000000, 90 restart_timer beginloop 0x09 if_timer_gt 90, /*goto*/ 0x06 endloop 0x09 label 0x06 grant_control CHR_JOANNA enter_firstperson unset_stage_flag STAGEFLAG_CONSIDER_WARP goto_first 0x04 endfunction func0401_move_to_deviceroom: chr_move_to_pad CHR_SELF, PAD_DEVICEROOM, 0x01, /*goto*/ 0x06 label 0x06 stop_chr yield set_function CHR_SELF, GFUNC_IDLE endfunction func0402_move_to_holoroom: chr_move_to_pad CHR_SELF, PAD_HOLOROOM, 0x01, /*goto*/ 0x06 label 0x06 stop_chr yield set_function CHR_SELF, GFUNC_IDLE endfunction func0429_grimshaw_disguise: set_return_function CHR_SELF, FUNC_GRIMSHAW_DISGUISE dprint "Initialisea" restart_timer beginloop 0x0f if_timer_gt 60, /*goto*/ 0x8f endloop 0x0f beginloop 0x8f if_stage_flag_eq STAGEFLAG_CONSIDER_WARP, FALSE, /*goto*/ 0x04 endloop 0x8f // Wait until Jo in sight beginloop 0x04 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x0d if_target_chr_in_sight /*goto*/ 0x2f if_chr_idle /*goto*/ 0x06 label 0x7f call_rng if_rand_gt 1, /*goto*/ 0x06 set_function CHR_SELF, GFUNC_DO_BORED_ANIMATION label 0x06 endloop 0x04 label 0x2f dprint "Initialiseb" restart_timer label 0x08 if_self_flag_bankx_eq CHRFLAG1_DOINGIDLEANIMATION, TRUE, BANK_1, /*goto*/ 0x06 try_face_entity 0x0200, 0x0000, /*goto*/ 0x09 beginloop 0x09 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x0d if_angle_to_target_chr_lt 10, /*goto*/ 0x06 if_timer_gt 60, /*goto*/ 0x06 endloop 0x09 label 0x06 dprint "Initialisec" do_special_animation 3 play_chr_specific_quip BANK_0, CHANNEL_6 restart_timer beginloop 0x57 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x0d if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x57 label 0x06 dprint "Initialised" restart_timer beginloop 0x58 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x0d if_timer_gt 60, /*goto*/ 0x06 endloop 0x58 label 0x06 speak CHR_JOANNA, 0x1c2b, 0x1517, CHANNEL_6, COLOR_09_BLUE // "I'm here to pick up the equipment." beginloop 0x59 if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x0d if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x59 label 0x06 restart_timer beginloop 0x5b if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x0d if_timer_gt 60, /*goto*/ 0x06 endloop 0x5b label 0x06 if_chr_flag_bank2 CHR_JOANNA, CHRFLAG2_DISGUISED, /*goto*/ 0x2f do_special_animation -1 speak TARGET_CHR, 0x1c2c, 0x1518, CHANNEL_6, COLOR_05_GREEN // "Go away, Joanna. You're not fooling anybody!" beginloop 0x5c if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x0d if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x5c label 0x06 set_stage_flag STAGEFLAG_DISGUISE_FAILED goto_next 0x0d label 0x2f do_special_animation -1 speak TARGET_CHR, 0x1c2d, 0x1519, CHANNEL_6, COLOR_05_GREEN // "Here you go. Don't drop it now." beginloop 0x5d if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x0d if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x5d label 0x06 give_object_to_chr 0x3c, CHR_JOANNA set_stage_flag STAGEFLAG_DISGUISE_COMPLETE label 0x0d set_function CHR_SELF, GFUNC_IDLE endfunction func100c_cloak_detection: beginloop 0x04 deactivate_alarm dprint "INITY" if_stage_flag_eq STAGEFLAG_TRIGGER_CLOAK, TRUE, /*goto*/ 0x8f reloop 0x04 beginloop 0x8f dprint "LOOPY" if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x5d if_chr_distance_to_pad_lt CHR_JOANNA, 200, 0x027b, /*goto*/ 0x06 endloop 0x8f beginloop 0x5d dprint "WAITY" if_stage_flag_eq STAGEFLAG_TRIGGER_CLOAK, FALSE, /*goto*/ 0x30 endloop 0x5d label 0x30 yield yield yield yield yield yield yield yield yield yield endloop 0x04 label 0x06 dprint "GOTTHRU" if_chr_flag_bank2 CHR_JOANNA, CHRFLAG2_CLOAKED, /*goto*/ 0x30 activate_alarm yield restart_timer beginloop 0x09 if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x59 if_timer_gt 60, /*goto*/ 0x06 endloop 0x09 label 0x06 set_stage_flag STAGEFLAG_GENERAL_PURPOSE speak TARGET_CHR, 0x1c30, 0x151a, CHANNEL_6, COLOR_05_GREEN // "You'll have to do better than that, Joanna." message CHR_JOANNA, 0x1c32 // "You have been detected by the camera." restart_timer beginloop 0x0a if_stage_flag_eq STAGEFLAG_TRIGGER_CLOAK, FALSE, /*goto*/ 0x30 if_timer_gt 60, /*goto*/ 0x06 endloop 0x0a label 0x06 set_stage_flag STAGEFLAG_CLOAK_FAILED restart_timer beginloop 0x08 if_stage_flag_eq STAGEFLAG_TRIGGER_CLOAK, FALSE, /*goto*/ 0x30 if_timer_gt 120, /*goto*/ 0x59 endloop 0x08 label 0x59 deactivate_alarm beginloop 0x5a if_stage_flag_eq STAGEFLAG_TRIGGER_CLOAK, FALSE, /*goto*/ 0x30 endloop 0x5a label 0x30 deactivate_alarm restart_timer beginloop 0x5c yield dprint "WAITFIN" if_timer_gt 60, /*goto*/ 0x2f endloop 0x5c label 0x2f goto_first 0x04 label 0x06 goto_first 0x8f endfunction func042a_carrington_cloak: set_return_function CHR_SELF, FUNC_CARRINGTON_CLOAK beginloop 0x8f chr_move_to_pad CHR_SELF, PAD_CARRINGTON_OFFICE, 0x01, /*goto*/ 0x06 endloop 0x8f label 0x06 dprint "Initialisea" beginloop 0x04 if_target_chr_in_sight /*goto*/ 0x2f if_chr_idle /*goto*/ 0x06 label 0x7f call_rng if_rand_gt 1, /*goto*/ 0x06 set_function CHR_SELF, GFUNC_DO_BORED_ANIMATION label 0x06 endloop 0x04 label 0x2f set_stage_flag STAGEFLAG_GENERAL_PURPOSE close_door 0x40 dprint "Initialiseb" restart_timer label 0x08 if_self_flag_bankx_eq CHRFLAG1_DOINGIDLEANIMATION, TRUE, BANK_1, /*goto*/ 0x06 try_face_entity 0x0200, 0x0000, /*goto*/ 0x09 beginloop 0x09 if_angle_to_target_chr_lt 10, /*goto*/ 0x06 if_timer_gt 60, /*goto*/ 0x06 endloop 0x09 label 0x06 dprint "Initialisec" restart_timer animation ANIM_WALK_BACKWARDS, -1, -1, 0x1010, CHR_SELF, 2 restart_timer beginloop 0x57 if_timer_gt 30, /*goto*/ 0x06 endloop 0x57 label 0x06 do_special_animation -1 speak CHR_JOANNA, 0x1c31, 0x151b, CHANNEL_6, COLOR_06_WHITE // "Joanna, where did you spring from?" beginloop 0x59 if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x59 label 0x06 restart_timer beginloop 0x5b if_timer_gt 60, /*goto*/ 0x06 endloop 0x5b label 0x06 do_special_animation -1 speak TARGET_CHR, 0x1c35, 0x151c, CHANNEL_6, COLOR_06_WHITE // "I think we can safely say your training is now complete!" beginloop 0x5c if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x5c label 0x06 stop_chr set_stage_flag STAGEFLAG_CLOAK_COMPLETE set_function CHR_SELF, GFUNC_IDLE endfunction func100e_training_unlockables: beginloop 0x04 if_eeprom_flag_is_set EEPROMFLAG_CI_UPLINK_DONE, /*goto*/ 0x2f endloop 0x04 label 0x2f unlock_door 0x3e, 0x40 beginloop 0x08 if_eeprom_flag_is_set EEPROMFLAG_CI_ECMMINE_DONE, /*goto*/ 0x2f endloop 0x08 label 0x2f unlock_door 0x3d, 0x40 unlock_door 0x3f, 0x40 goto_next 0x2f beginloop 0x09 if_eeprom_flag_is_set EEPROMFLAG_CI_CAMSPY_DONE, /*goto*/ 0x2f endloop 0x09 label 0x2f unset_object_flag_bank1 OBJ_LIGHTSWITCH, OBJECTFLAG1_INVISIBLE beginloop 0x0a if_eeprom_flag_is_set EEPROMFLAG_CI_NIGHTVISION_DONE, /*goto*/ 0x2f endloop 0x0a label 0x2f set_lights_state 0x0030, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x002e, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x002f, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x0020, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x0024, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x0025, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x0026, 0x01, 0xff, 0x00, 0x00 set_lights_state 0x0022, 0x01, 0xff, 0x00, 0x00 beginloop 0x0b if_eeprom_flag_is_set EEPROMFLAG_CI_DOORDECODER_DONE, /*goto*/ 0x2f endloop 0x0b label 0x2f unlock_door 0x41, 0x40 beginloop 0x0e if_eeprom_flag_is_set EEPROMFLAG_CI_IR_DONE, /*goto*/ 0x2f endloop 0x0e label 0x2f unlock_door 0x37, 0x40 beginloop 0x0f if_eeprom_flag_is_set EEPROMFLAG_CI_XRAY_DONE, /*goto*/ 0x2f endloop 0x0f label 0x2f hide_object 0x3a hide_object 0x3b set_function CHR_SELF, GFUNC_IDLE endfunction .macro do_door_proxy eepromflag pad door // If training flag is done, open/close a door automatically as Jo nears it beginloop 0x04 if_eeprom_flag_is_set \eepromflag, /*goto*/ 0x2f reloop 0x04 label 0x2f if_chr_distance_to_pad_lt CHR_JOANNA, 350, \pad, /*goto*/ 0x06 close_door \door reloop 0x04 label 0x06 if_door_state \door, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x2f open_door \door set_object_flag_bank0 \door, OBJECTFLAG0_40000000 restart_timer beginloop 0x08 if_timer_gt 120, /*goto*/ 0x2f endloop 0x08 label 0x2f endloop 0x04 .endm func100f_doorproxy_unused1: set_function CHR_SELF, GFUNC_IDLE // Unreachable do_door_proxy EEPROMFLAG_CI_ECMMINE_DONE, 0x0185, 0x3d endfunction func1010_doorproxy: do_door_proxy EEPROMFLAG_CI_UPLINK_DONE, 0x0186, 0x3e endfunction func1010_doorproxy_unused2: set_function CHR_SELF, GFUNC_IDLE // Unreachable do_door_proxy EEPROMFLAG_CI_ECMMINE_DONE, 0x0187, 0x3f endfunction func1012_cloak_doorproxy: beginloop 0x04 if_stage_flag_eq STAGEFLAG_TRIGGER_CLOAK, TRUE, /*goto*/ 0x2f reloop 0x04 label 0x2f if_stage_flag_eq STAGEFLAG_CLOAK_FAILED, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_DEVICE_ABORTING, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_DEVICE_SUCCESS, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_DEVICE_FAILURE, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x2f if_chr_distance_to_pad_lt CHR_JOANNA, 350, 0x0188, /*goto*/ 0x06 close_door 0x40 label 0x2f endloop 0x04 label 0x06 if_door_state 0x40, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x2f open_door 0x40 set_object_flag_bank0 0x40, OBJECTFLAG0_40000000 restart_timer beginloop 0x08 if_timer_gt 120, /*goto*/ 0x2f endloop 0x08 label 0x2f goto_first 0x04 endfunction func101b_ir_door: beginloop 0x04 if_stage_flag_eq STAGEFLAG_TRIGGER_IR, TRUE, /*goto*/ 0x06 if_eeprom_flag_is_set EEPROMFLAG_CI_IR_DONE, /*goto*/ 0x2f label 0x06 reloop 0x04 label 0x2f if_chr_distance_to_pad_lt CHR_JOANNA, 350, 0x0192, /*goto*/ 0x06 close_door 0x37 endloop 0x04 label 0x06 if_door_state 0x37, DOORSTATE_OPEN | DOORSTATE_OPENING, /*goto*/ 0x2f open_door 0x37 set_object_flag_bank0 0x37, OBJECTFLAG0_40000000 restart_timer beginloop 0x08 if_timer_gt 120, /*goto*/ 0x2f endloop 0x08 label 0x2f goto_first 0x04 endfunction func042b_init_carrington: set_self_flag_bank3 CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_self_flag_bank3 CHRFLAG3_UNEXPLODABLE yield set_var_a 0 if_eeprom_flag_is_unset EEPROMFLAG_CI_TOUR_STARTED, /*goto*/ 0x06 set_eeprom_flag EEPROMFLAG_CI_TOUR_DONE dprint "EEPROM SET" beginloop 0x08 chr_move_to_pad CHR_SELF, PAD_CARRINGTON_OFFICE, 0x01, /*goto*/ 0x2f endloop 0x08 label 0x2f set_function CHR_SELF, 0x041e label 0x06 dprint "EEPROM NOTSET" if_eeprom_flag_is_unset EEPROMFLAG_CI_TOUR_DONE, /*goto*/ 0x8f goto_first 0x08 beginloop 0x8f chr_move_to_pad CHR_SELF, PAD_OUTSIDE_JO_OFFICE, 0x01, /*goto*/ 0x2f endloop 0x8f label 0x2f stop_chr set_function CHR_SELF, FUNC_CARRINGTON_TOUR endfunction func1019_setup_carrington: beginloop 0x04 if_chr_flag_bank2 CHR_CARRINGTON, CHRFLAG2_10000000, /*goto*/ 0x06 if_eeprom_flag_is_set EEPROMFLAG_CI_TOUR_STARTED, /*goto*/ 0x2f endloop 0x04 label 0x06 set_function CHR_SELF, GFUNC_IDLE label 0x2f set_function CHR_CARRINGTON, FUNC_INIT_CARRINGTON set_function CHR_SELF, GFUNC_IDLE endfunction func042c_carrington_tour: set_return_function CHR_SELF, FUNC_CARRINGTON_TOUR set_self_flag_bank3 CHRFLAG3_00040000 restart_timer try_face_entity ENTITYTYPE_PAD, 0x0054, /*goto*/ 0x04 beginloop 0x04 dprint "FACE PAD" if_timer_gt 1200, /*goto*/ 0x2f if_chr_sees_player /*goto*/ 0x2f if_chr_idle /*goto*/ 0x06 label 0x7f call_rng if_rand_gt 1, /*goto*/ 0x06 set_function CHR_SELF, GFUNC_DO_BORED_ANIMATION label 0x06 endloop 0x04 label 0x2f if_chr_sees_player /*goto*/ 0x06 try_run_to_target_chr_with_hand_up /*goto*/ 0x08 beginloop 0x08 if_chr_sees_player /*goto*/ 0x06 endloop 0x08 label 0x06 set_chr_flag_bank2 CHR_SELF, CHRFLAG2_10000000 set_eeprom_flag EEPROMFLAG_CI_TOUR_STARTED do_special_animation -1 remove_displayed_text speak TARGET_CHR, 0x1c42, 0x8029, CHANNEL_6, COLOR_06_WHITE // "Joanna, it's good to see you." restart_timer beginloop 0x57 if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x57 label 0x06 do_special_animation -1 speak TARGET_CHR, 0x1c43, 0x151d, CHANNEL_6, COLOR_06_WHITE // "Come with me. I'll walk you round the training rooms." restart_timer beginloop 0x59 if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x59 label 0x06 walk_to_pad 0x0064 beginloop 0x5b if_chr_stopped /*goto*/ 0x06 endloop 0x5b label 0x06 stop_chr restart_timer try_face_entity ENTITYTYPE_PAD, 0x0068, /*goto*/ 0x5c beginloop 0x5c if_timer_lt 60, /*goto*/ 0x06 if_chr_sees_player /*goto*/ 0x2f label 0x06 endloop 0x5c label 0x2f if_chr_distance_lt 500, /*goto*/ 0x2f goto_first 0x5c label 0x2f do_special_animation -1 remove_displayed_text speak TARGET_CHR, 0x1c44, 0x1520, CHANNEL_6, COLOR_06_WHITE // "The information center is through this door." restart_timer beginloop 0x5d if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x5d label 0x06 walk_to_pad 0x0065 beginloop 0x62 if_chr_stopped /*goto*/ 0x06 endloop 0x62 label 0x06 stop_chr beginloop 0x63 if_chr_sees_player /*goto*/ 0x2f endloop 0x63 label 0x2f if_chr_distance_lt 500, /*goto*/ 0x2f goto_first 0x63 label 0x2f set_function 0x01, GFUNC_IDLE do_special_animation -1 speak TARGET_CHR, 0x1c45, 0x151f, CHANNEL_6, COLOR_06_WHITE // "In here we have the device lab." restart_timer beginloop 0x64 if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x64 label 0x06 restart_timer try_face_entity ENTITYTYPE_CHR, 0x01, /*goto*/ 0x65 beginloop 0x65 if_timer_gt 40, /*goto*/ 0x06 endloop 0x65 label 0x06 do_special_animation -1 play_sound 0x8028, CHANNEL_6 set_function 0x01, FUNC_DEVICEGIRL_REPLY_TO_CARRINGTON restart_timer beginloop 0x66 if_timer_gt 20, /*goto*/ 0x06 if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x66 label 0x06 mute_channel CHANNEL_6 stop_chr yield yield beginloop 0x68 if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x68 label 0x06 walk_to_pad 0x0020 beginloop 0x69 if_chr_stopped /*goto*/ 0x06 endloop 0x69 label 0x06 stop_chr beginloop 0x6a if_chr_sees_player /*goto*/ 0x2f endloop 0x6a label 0x2f if_chr_distance_lt 500, /*goto*/ 0x2f goto_first 0x6a label 0x2f do_special_animation -1 speak TARGET_CHR, 0x1c46, 0x1521, CHANNEL_6, COLOR_06_WHITE // "This leads to the simulant training room." restart_timer beginloop 0x6b if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x6b label 0x06 stop_chr yield yield beginloop 0x6c if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x6c label 0x06 walk_to_pad 0x0010 beginloop 0x6d if_chr_stopped /*goto*/ 0x06 endloop 0x6d label 0x06 stop_chr beginloop 0x6e if_chr_sees_player /*goto*/ 0x2f endloop 0x6e label 0x2f if_chr_distance_lt 500, /*goto*/ 0x2f goto_first 0x6e label 0x2f do_special_animation -1 speak TARGET_CHR, 0x1c47, 0x151e, CHANNEL_6, COLOR_06_WHITE // "This is the firing range, Jo." restart_timer beginloop 0x6f if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x6f label 0x06 restart_timer try_face_entity ENTITYTYPE_CHR, 0x01, /*goto*/ 0x70 beginloop 0x70 if_timer_gt 40, /*goto*/ 0x06 endloop 0x70 label 0x06 restart_timer beginloop 0x71 if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x71 label 0x06 stop_chr yield yield beginloop 0x72 if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x72 label 0x06 label 0x06 walk_to_pad 0x0009 beginloop 0x73 if_chr_stopped /*goto*/ 0x06 endloop 0x73 label 0x06 stop_chr beginloop 0x74 if_chr_sees_player /*goto*/ 0x2f endloop 0x74 label 0x2f if_chr_distance_lt 500, /*goto*/ 0x2f goto_first 0x74 label 0x2f do_special_animation -1 speak TARGET_CHR, 0x1c48, 0x1522, CHANNEL_6, COLOR_06_WHITE // "This corridor leads down to the hangar." restart_timer beginloop 0x75 if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x75 label 0x06 restart_timer set_target_chr CHR_JOANNA try_face_entity 0x0200, 0x0000, /*goto*/ 0x79 beginloop 0x79 if_timer_gt 120, /*goto*/ 0x2f endloop 0x79 label 0x2f do_special_animation -1 speak TARGET_CHR, 0x1c7c, 0x17dc, CHANNEL_6, COLOR_06_WHITE // "Okay, Jo, I'll leave you to prepare for the mission." beginloop 0x7a if_sound_finished CHANNEL_6, /*goto*/ 0x2f endloop 0x7a label 0x2f set_eeprom_flag EEPROMFLAG_CI_TOUR_DONE walk_to_pad PAD_CARRINGTON_OFFICE beginloop 0x76 if_chr_stopped /*goto*/ 0x06 endloop 0x76 label 0x06 set_function CHR_SELF, 0x041e set_function CHR_SELF, GFUNC_IDLE endfunction func042d_unused: set_alertness 1 set_self_flag_bank3 CHRFLAG3_00040000 restart_timer try_face_entity ENTITYTYPE_CHR, CHR_CARRINGTON, /*goto*/ 0x5f beginloop 0x5f if_timer_gt 40, /*goto*/ 0x06 endloop 0x5f label 0x06 beginloop 0x60 if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x60 label 0x06 assign_sound 0x802d, CHANNEL_6 play_sound_from_entity CHANNEL_6, CHR_SELF, 0x0bb8, 0x1770, 0x01 beginloop 0x61 if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x61 label 0x06 set_function CHR_SELF, 0x041e endfunction func042e_devicegirl_reply_to_carrington: set_alertness 1 set_self_flag_bank3 CHRFLAG3_00040000 restart_timer try_face_entity ENTITYTYPE_CHR, CHR_CARRINGTON, /*goto*/ 0x5f beginloop 0x5f if_timer_gt 40, /*goto*/ 0x06 endloop 0x5f label 0x06 beginloop 0x60 if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x60 label 0x06 yield yield yield assign_sound 0x177d, CHANNEL_6 play_sound_from_entity CHANNEL_6, CHR_SELF, 0x0bb8, 0x1770, 0x01 beginloop 0x61 if_sound_finished CHANNEL_6, /*goto*/ 0x06 endloop 0x61 label 0x06 set_function CHR_SELF, 0x041e endfunction func1013_msg_hovercrate: if_eeprom_flag_is_unset EEPROMFLAG_CI_TOUR_STARTED, /*goto*/ 0x04 set_function CHR_SELF, GFUNC_IDLE beginloop 0x04 if_eeprom_flag_is_set EEPROMFLAG_CI_TOUR_STARTED, /*goto*/ 0x06 if_chr_distance_to_pad_lt CHR_JOANNA, 250, 0x0141, /*goto*/ 0x2f endloop 0x04 label 0x06 set_function CHR_SELF, GFUNC_IDLE label 0x2f remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c49 // "HOVERCRATE Press B Button next to Hovcrate to grab it..." restart_timer beginloop 0x08 if_timer_gt 240, /*goto*/ 0x06 endloop 0x08 label 0x06 remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c4a // "Press B Button when crate grabbed to release it." set_function CHR_SELF, GFUNC_IDLE endfunction func1014_msg_hoverbike: if_eeprom_flag_is_unset EEPROMFLAG_CI_TOUR_STARTED, /*goto*/ 0x04 set_function CHR_SELF, GFUNC_IDLE beginloop 0x04 if_eeprom_flag_is_set EEPROMFLAG_CI_TOUR_STARTED, /*goto*/ 0x06 if_chr_distance_to_pad_lt CHR_JOANNA, 250, 0x01f9, /*goto*/ 0x2f endloop 0x04 label 0x06 set_function CHR_SELF, GFUNC_IDLE label 0x2f remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c4b // "HOVERBIKE Double tap B Button next to Hovbike to ride it..." restart_timer beginloop 0x08 if_timer_gt 240, /*goto*/ 0x06 endloop 0x08 label 0x06 remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c4c // "Double tap B Button when on Hovbike to dismount." set_function CHR_SELF, GFUNC_IDLE endfunction func1015_msg_doors: if_eeprom_flag_is_unset EEPROMFLAG_CI_TOUR_STARTED, /*goto*/ 0x04 set_function CHR_SELF, GFUNC_IDLE beginloop 0x04 if_eeprom_flag_is_set EEPROMFLAG_CI_TOUR_STARTED, /*goto*/ 0x06 endloop 0x04 label 0x06 set_function CHR_SELF, GFUNC_IDLE label 0x2f remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c4d // "OPENING DOORS Press B Button next to door to open it." restart_timer beginloop 0x08 if_timer_gt 240, /*goto*/ 0x06 endloop 0x08 label 0x06 remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c4e // "B Button will also activate any object nearby." set_function CHR_SELF, GFUNC_IDLE endfunction func1016_msg_elevators: if_eeprom_flag_is_unset EEPROMFLAG_CI_TOUR_STARTED, /*goto*/ 0x04 set_function CHR_SELF, GFUNC_IDLE beginloop 0x04 if_eeprom_flag_is_set EEPROMFLAG_CI_TOUR_STARTED, /*goto*/ 0x06 if_chr_distance_to_pad_lt CHR_JOANNA, 250, 0x0160, /*goto*/ 0x2f if_chr_distance_to_pad_lt CHR_JOANNA, 250, 0x0162, /*goto*/ 0x2f endloop 0x04 label 0x2f remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c4f // "ELEVATORS Press B Button next to door to call elevator." label 0x06 set_function CHR_SELF, GFUNC_IDLE endfunction func1017_msg_terminals: if_eeprom_flag_is_unset EEPROMFLAG_CI_TOUR_STARTED, /*goto*/ 0x04 set_function CHR_SELF, GFUNC_IDLE beginloop 0x04 if_eeprom_flag_is_set EEPROMFLAG_CI_TOUR_STARTED, /*goto*/ 0x06 if_chr_distance_to_pad_lt CHR_JOANNA, 250, 0x0227, /*goto*/ 0x2f if_chr_distance_to_pad_lt CHR_JOANNA, 250, 0x022a, /*goto*/ 0x2f if_chr_distance_to_pad_lt CHR_JOANNA, 250, 0x021c, /*goto*/ 0x2f if_chr_distance_to_pad_lt CHR_JOANNA, 250, 0x021e, /*goto*/ 0x2f if_chr_distance_to_pad_lt CHR_JOANNA, 250, 0x0221, /*goto*/ 0x2f if_chr_distance_to_pad_lt CHR_JOANNA, 250, 0x0224, /*goto*/ 0x2f if_chr_distance_to_pad_lt CHR_JOANNA, 250, 0x023e, /*goto*/ 0x2f endloop 0x04 label 0x2f remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c72 // "TERMINALS - Press B Button next to terminal to use it." label 0x06 set_function CHR_SELF, GFUNC_IDLE endfunction func1018_lightswitch: beginloop 0x04 if_stage_flag_eq STAGEFLAG_TRIGGER_NIGHTVISION, FALSE, /*goto*/ 0x2f if_chr_has_weapon_equipped CHR_JOANNA, WEAPON_NIGHTVISION, /*goto*/ 0x2f set_object_flag_bank1 OBJ_LIGHTSWITCH, OBJECTFLAG1_INVISIBLE reloop 0x04 label 0x2f unset_object_flag_bank1 OBJ_LIGHTSWITCH, OBJECTFLAG1_INVISIBLE endloop 0x04 set_function CHR_SELF, GFUNC_IDLE endfunction func101c_holo1_main: label 0x80 hide_object 0x48 hide_object 0x49 hide_object 0x4a hide_object 0x4b hide_object 0x4c hide_object 0x4d hide_object 0x4e hide_object 0x4f beginloop 0x08 if_stage_flag_eq STAGEFLAG_IN_HOLO1, TRUE, /*goto*/ 0x81 endloop 0x08 label 0x81 set_stage_flag STAGEFLAG_CONSIDER_WARP restart_timer beginloop 0x13 if_timer_gt 30, /*goto*/ 0x2f endloop 0x13 label 0x2f lock_door 0x75, 0x40 lock_door 0x76, 0x40 close_door 0x75 unset_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG if_chr_activated_object CHR_JOANNA, 0x75, /*goto*/ 0x2f if_chr_activated_object CHR_JOANNA, 0x76, /*goto*/ 0x2f label 0x2f unset_stage_flag STAGEFLAG_HOLO_ABORTING unset_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS unset_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE unset_stage_flag STAGEFLAG_GENERAL_PURPOSE hide_object 0x45 show_object 0x48 show_object 0x49 show_object 0x4a show_object 0x4b show_object 0x4c show_object 0x4d show_object 0x4e show_object 0x4f unset_object_flag_bank1 0x48, OBJECTFLAG1_00000001 unset_object_flag_bank1 0x49, OBJECTFLAG1_00000001 unset_object_flag_bank1 0x4a, OBJECTFLAG1_00000001 unset_object_flag_bank1 0x4b, OBJECTFLAG1_00000001 unset_object_flag_bank1 0x4c, OBJECTFLAG1_00000001 unset_object_flag_bank1 0x4d, OBJECTFLAG1_00000001 unset_object_flag_bank1 0x4e, OBJECTFLAG1_00000001 unset_object_flag_bank1 0x4f, OBJECTFLAG1_00000001 hide_chr 0x04 dprint "training" label 0x91 if_object_flag_bank1 0x4c, OBJECTFLAG1_00000001, /*goto*/ 0x2f goto_next 0x06 label 0x2f if_object_flag_bank1 0x4d, OBJECTFLAG1_00000001, /*goto*/ 0x2f goto_next 0x06 label 0x2f if_object_flag_bank1 0x4e, OBJECTFLAG1_00000001, /*goto*/ 0x2f goto_next 0x06 label 0x2f if_object_flag_bank1 0x4f, OBJECTFLAG1_00000001, /*goto*/ 0x2f label 0x06 remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c64 // "Get the access codes by examining terminals. - Use the codes on the wall terminals." goto_next 0x06 label 0x2f remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c73 // "Now activate the red terminals on the wall." label 0x06 restart_timer beginloop 0x82 if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x90 if_stage_flag_eq STAGEFLAG_TRIGGER_HOLO_SUCCESS, TRUE, /*goto*/ 0x83 if_stage_flag_eq STAGEFLAG_TRIGGER_HOLO_FAILURE, TRUE, /*goto*/ 0x85 if_chr_activated_object CHR_JOANNA, 0x75, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x76, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 1200, /*goto*/ 0x2f endloop 0x82 label 0x2f goto_first 0x91 label 0x85 dprint "fail" set_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE goto_next 0x84 label 0x83 set_eeprom_flag EEPROMFLAG_CI_HOLO1_DONE dprint "done" set_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS yield goto_next 0x84 label 0x84 if_chr_in_room CHR_JOANNA, 0x00, 0x001e, /*goto*/ 0x90 label 0x90 set_stage_flag STAGEFLAG_CONSIDER_WARP unlock_door 0x75, 0x40 unlock_door 0x76, 0x40 remove_displayed_text mute_channel CHANNEL_5 mute_channel CHANNEL_6 mute_channel CHANNEL_7 show_chr 0x04 dprint "aborted" hide_object 0x48 hide_object 0x49 hide_object 0x4a hide_object 0x4b hide_object 0x4c hide_object 0x4d hide_object 0x4e hide_object 0x4f show_object 0x45 remove_displayed_text goto_first 0x08 set_function CHR_SELF, GFUNC_IDLE endfunction .macro holo1_some_terminal object function beginloop 0x8f if_stage_flag_eq STAGEFLAG_IN_HOLO1, TRUE, /*goto*/ 0x2f endloop 0x8f label 0x2f set_object_image \object, 0x00, 0x12 unset_object_flag_bank1 \object, OBJECTFLAG1_00040000 beginloop 0x04 if_chr_activated_object CHR_F3, \object, /*goto*/ 0x2f reloop 0x04 label 0x2f if_object_flag_bank1 \object, OBJECTFLAG1_00000001, /*goto*/ 0x2f endloop 0x04 label 0x2f set_object_image \object, 0x00, 0x13 set_object_flag_bank1 \object, OBJECTFLAG1_00040000 assign_sound 0x043a, CHANNEL_7 control_sound_from_object CHANNEL_7, \object, TRUE set_return_function CHR_SELF, \function set_function CHR_SELF, FUNC_HOLO1_CHECK_DONE .endm func101d_holo1_switch1: holo1_some_terminal 0x4c, FUNC_HOLO1_SWITCH1 endfunction func101e_holo1_switch2: holo1_some_terminal 0x4d, FUNC_HOLO1_SWITCH2 endfunction func101f_holo1_switch3: holo1_some_terminal 0x4e, FUNC_HOLO1_SWITCH3 endfunction func1020_holo1_monitor_switches: beginloop 0x8f if_stage_flag_eq STAGEFLAG_IN_HOLO1, TRUE, /*goto*/ 0x2f endloop 0x8f label 0x2f set_object_image 0x4f, 0x00, 0x12 unset_object_flag_bank1 0x4f, OBJECTFLAG1_00040000 beginloop 0x04 if_chr_activated_object CHR_F3, 0x4f, /*goto*/ 0x2f reloop 0x04 label 0x2f if_object_flag_bank1 0x4f, OBJECTFLAG1_00000001, /*goto*/ 0x2f endloop 0x04 label 0x2f set_object_image 0x4f, 0x00, 0x13 set_object_flag_bank1 0x4f, OBJECTFLAG1_00040000 assign_sound 0x043a, CHANNEL_7 control_sound_from_object CHANNEL_7, 0x4f, TRUE set_return_function CHR_SELF, FUNC_HOLO1_MONITOR_SWITCHES set_function CHR_SELF, FUNC_HOLO1_CHECK_DONE endfunction .macro holo1_code_thing_p1 object1 object2 pad yield yield yield beginloop 0x04 if_stage_flag_eq STAGEFLAG_IN_HOLO1, TRUE, /*goto*/ 0x2f reloop 0x04 label 0x2f if_object_in_good_condition \object1, /*goto*/ 0x2f reloop 0x04 label 0x2f if_object_flag_bank1 \object1, OBJECTFLAG1_00000001, /*goto*/ 0x2f if_chr_distance_to_pad_lt CHR_JOANNA, 400, \pad, /*goto*/ 0x09 label 0x2f if_chr_looking_at_object CHR_JOANNA, \object1, /*goto*/ 0x2f endloop 0x04 label 0x09 .endm .macro holo1_code_thing_p2 object1 object2 hint message remove_displayed_text display_text 0x01, COLOR_04_ORANGE, \hint goto_first 0x04 label 0x2f set_object_image \object2, 0x00, 0x12 set_object_image \object1, 0x00, 0x13 remove_displayed_text message CHR_JOANNA, \message assign_sound 0x81b0, CHANNEL_7 control_sound_from_object CHANNEL_7, \object1, TRUE restart_timer beginloop 0x57 if_timer_gt 60, /*goto*/ 0x2f goto_first 0x57 label 0x2f set_object_flag_bank1 \object2, OBJECTFLAG1_00000001 beginloop 0x59 if_stage_flag_eq STAGEFLAG_TRIGGER_HOLO_SUCCESS, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x2f reloop 0x59 label 0x2f if_stage_flag_eq STAGEFLAG_IN_HOLO1, FALSE, /*goto*/ 0x2f endloop 0x59 label 0x2f goto_first 0x8f .endm func1021_holo1_code1: label 0x8f set_object_image 0x48, 0x00, 0x12 unset_object_flag_bank1 0x4c, OBJECTFLAG1_00000001 holo1_code_thing_p1 0x48, 0x4c, 0x0240 set_object_flag_bank1 0x48, OBJECTFLAG1_00000001 set_object_flag_bank1 0x4c, OBJECTFLAG1_00000001 // 0x1c55 = "LOOK UP - Press Down C Button to look up at the target." // 0x1c65 = "Code 1 has been obtained." holo1_code_thing_p2 0x48, 0x4c, 0x1c55, 0x1c65 endfunction func1021_holo1_code2: label 0x8f set_object_image 0x49, 0x00, 0x12 unset_object_flag_bank1 0x4d, OBJECTFLAG1_00000001 holo1_code_thing_p1 0x49, 0x4d, 0x0241 set_object_flag_bank1 0x49, OBJECTFLAG1_00000001 // 0x1c56 = "LOOK DOWN - Press Up C Button to look down at the target." // 0x1c66 = "Code 2 has been obtained." holo1_code_thing_p2 0x49, 0x4d, 0x1c56, 0x1c66 endfunction func1021_holo1_code3: label 0x8f unset_object_flag_bank1 0x4e, OBJECTFLAG1_00000001 set_object_image 0x4a, 0x00, 0x12 holo1_code_thing_p1 0x4a, 0x4e, 0x0242 set_object_flag_bank1 0x4a, OBJECTFLAG1_00000001 // 0x1c55 = "LOOK UP - Press Down C Button to look up at the target." // 0x1c67 = "Code 3 has been obtained." holo1_code_thing_p2 0x4a, 0x4e, 0x1c55, 0x1c67 endfunction func1021_holo1_code4: label 0x8f unset_object_flag_bank1 0x4f, OBJECTFLAG1_00000001 set_object_image 0x4b, 0x00, 0x12 holo1_code_thing_p1 0x4b, 0x4f, 0x0243 set_object_flag_bank1 0x4b, OBJECTFLAG1_00000001 // 0x1c55 = "LOOK UP - Press Down C Button to look up at the target." // 0x1c68 = "Code 4 has been obtained." holo1_code_thing_p2 0x4b, 0x4f, 0x1c55, 0x1c68 endfunction func0430_holo1_check_done: label 0x04 yield if_object_flag_bank1 0x4c, OBJECTFLAG1_00040000, /*goto*/ 0x2f goto_next 0x06 label 0x2f dprint "DOH1" if_object_flag_bank1 0x4d, OBJECTFLAG1_00040000, /*goto*/ 0x2f goto_next 0x06 label 0x2f dprint "DOH2" if_object_flag_bank1 0x4e, OBJECTFLAG1_00040000, /*goto*/ 0x2f goto_next 0x06 label 0x2f dprint "DOH3" if_object_flag_bank1 0x4f, OBJECTFLAG1_00040000, /*goto*/ 0x2f goto_next 0x06 // All flags are set label 0x2f dprint "DOH4" remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c6a // "Holoprogram 1 has been completed successfully." restart_timer beginloop 0x08 if_timer_gt 120, /*goto*/ 0x2f endloop 0x08 label 0x2f set_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS label 0x06 beginloop 0x57 if_stage_flag_eq STAGEFLAG_IN_HOLO1, FALSE, /*goto*/ 0x2f endloop 0x57 label 0x2f return set_function CHR_SELF, GFUNC_IDLE endfunction func1022_holo2_main: label 0x80 hide_object 0x54 hide_object 0x55 hide_object 0x56 hide_object 0x57 beginloop 0x08 if_stage_flag_eq STAGEFLAG_IN_HOLO2, TRUE, /*goto*/ 0x81 endloop 0x08 label 0x81 set_stage_flag STAGEFLAG_CONSIDER_WARP restart_timer beginloop 0x13 if_timer_gt 30, /*goto*/ 0x2f endloop 0x13 label 0x2f lock_door 0x75, 0x40 lock_door 0x76, 0x40 close_door 0x75 unset_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG if_chr_activated_object CHR_JOANNA, 0x75, /*goto*/ 0x2f if_chr_activated_object CHR_JOANNA, 0x76, /*goto*/ 0x2f label 0x2f unset_object_flag_bank1 0x54, OBJECTFLAG1_00000001 unset_object_flag_bank1 0x55, OBJECTFLAG1_00000001 unset_object_flag_bank1 0x56, OBJECTFLAG1_00000001 unset_object_flag_bank1 0x57, OBJECTFLAG1_00000001 set_object_image 0x54, 0x00, 0x14 set_object_image 0x55, 0x00, 0x14 set_object_image 0x56, 0x00, 0x14 set_object_image 0x57, 0x00, 0x14 unset_stage_flag STAGEFLAG_HOLO_ABORTING unset_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS unset_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE unset_stage_flag STAGEFLAG_GENERAL_PURPOSE hide_object 0x45 show_object 0x54 show_object 0x55 show_object 0x56 show_object 0x57 hide_chr 0x04 dprint "training" label 0x2f label 0x91 remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c63 // "Activate all of the wall switches. - Be quick, as they will quickly reset." restart_timer beginloop 0x82 if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x90 if_stage_flag_eq STAGEFLAG_TRIGGER_HOLO_FAILURE, TRUE, /*goto*/ 0x85 if_stage_flag_eq STAGEFLAG_TRIGGER_HOLO_SUCCESS, TRUE, /*goto*/ 0x83 if_chr_activated_object CHR_JOANNA, 0x75, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x76, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 1200, /*goto*/ 0x2f endloop 0x82 label 0x2f goto_first 0x91 label 0x85 dprint "fail" set_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE goto_next 0x90 label 0x83 set_eeprom_flag EEPROMFLAG_CI_HOLO2_DONE dprint "done" set_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS yield goto_next 0x84 label 0x84 remove_displayed_text label 0x90 set_stage_flag STAGEFLAG_CONSIDER_WARP unlock_door 0x75, 0x40 unlock_door 0x76, 0x40 mute_channel CHANNEL_5 mute_channel CHANNEL_6 mute_channel CHANNEL_7 show_chr 0x04 dprint "aborted" hide_object 0x54 hide_object 0x55 hide_object 0x56 hide_object 0x57 show_object 0x45 restart_timer beginloop 0x09 if_timer_gt 60, /*goto*/ 0x06 endloop 0x09 label 0x06 remove_displayed_text goto_first 0x08 set_function CHR_SELF, GFUNC_IDLE endfunction .macro holo2_do_thing object function restart_timer beginloop 0x04 if_chr_activated_object CHR_F3, \object, /*goto*/ 0x2f if_object_flag_bank1 \object, OBJECTFLAG1_00000001, /*goto*/ 0x06 reloop 0x04 label 0x06 if_timer_gt 300, /*goto*/ 0x06 reloop 0x04 label 0x06 set_object_image \object, 0x00, 0x14 unset_object_flag_bank1 \object, OBJECTFLAG1_00000001 endloop 0x04 label 0x2f assign_sound 0x043a, CHANNEL_7 control_sound_from_object CHANNEL_7, \object, TRUE set_object_image \object, 0x00, 0x13 set_object_flag_bank1 \object, OBJECTFLAG1_00000001 set_return_function CHR_SELF, \function set_function CHR_SELF, 0x041b .endm func1023_holo2_object1: holo2_do_thing 0x54, 0x0431 endfunction func1024_holo2_object2: holo2_do_thing 0x55, 0x0432 endfunction func1025_holo2_object3: holo2_do_thing 0x56, 0x0433 endfunction func1026_holo2_object4: holo2_do_thing 0x57, 0x0434 endfunction func041b_holo2_part1: beginloop 0x8f if_stage_flag_eq STAGEFLAG_IN_HOLO2, TRUE, /*goto*/ 0x04 endloop 0x8f label 0x04 yield if_object_flag_bank1 0x54, OBJECTFLAG1_00000001, /*goto*/ 0x2f goto_next 0x06 label 0x2f if_object_flag_bank1 0x55, OBJECTFLAG1_00000001, /*goto*/ 0x2f goto_next 0x06 label 0x2f if_object_flag_bank1 0x56, OBJECTFLAG1_00000001, /*goto*/ 0x2f goto_next 0x06 label 0x2f if_object_flag_bank1 0x57, OBJECTFLAG1_00000001, /*goto*/ 0x2f goto_next 0x06 label 0x2f remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c57 // "Holoprogram 2 has been completed successfully." restart_timer beginloop 0x08 if_timer_gt 120, /*goto*/ 0x2f endloop 0x08 label 0x2f set_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS label 0x06 return endfunction func042f_holo2_part2: beginloop 0x08 if_stage_flag_eq STAGEFLAG_IN_HOLO2, TRUE, /*goto*/ 0x04 endloop 0x08 beginloop 0x04 if_player_looking_at_something_maybe 0x14, 0x01, 0x00, /*goto*/ 0x06 goto_next 0x2f label 0x06 endloop 0x04 label 0x2f if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x09 set_stage_flag STAGEFLAG_GENERAL_PURPOSE set_stage_flag STAGEFLAG_HOLO_FAILED restart_timer remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c69 // "Training failed - you must face forward." set_function CHR_SELF, GFUNC_IDLE set_object_image 0x54, 0x00, 0x12 set_object_image 0x55, 0x00, 0x12 set_object_image 0x56, 0x00, 0x12 set_object_image 0x57, 0x00, 0x12 beginloop 0x08 if_timer_gt 120, /*goto*/ 0x2f endloop 0x08 label 0x2f set_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE beginloop 0x09 if_stage_flag_eq STAGEFLAG_IN_HOLO2, FALSE, /*goto*/ 0x2f endloop 0x09 label 0x2f goto_first 0x08 endfunction func1027_holo3_main: label 0x80 hide_object 0x58 hide_object 0x59 hide_object 0x5a hide_object 0x5b hide_object 0x5c hide_object 0x5d hide_object 0x5e hide_object 0x5f hide_object 0x60 hide_object 0x61 hide_object 0x62 hide_object 0x63 hide_object 0x64 hide_object 0x73 hide_object 0x74 hide_object 0x65 hide_object 0x66 hide_object 0x67 hide_object 0x68 hide_object 0x69 hide_object 0x6a hide_object 0x6b hide_object 0x6c hide_object 0x6d hide_object 0x6e hide_object 0x6f hide_object 0x70 hide_object 0x71 hide_object 0x72 beginloop 0x08 if_stage_flag_eq STAGEFLAG_IN_HOLO3, TRUE, /*goto*/ 0x81 endloop 0x08 label 0x81 set_stage_flag STAGEFLAG_CONSIDER_WARP restart_timer beginloop 0x13 if_timer_gt 30, /*goto*/ 0x2f endloop 0x13 label 0x2f lock_door 0x75, 0x40 lock_door 0x76, 0x40 close_door 0x75 unset_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG if_chr_activated_object CHR_JOANNA, 0x75, /*goto*/ 0x2f if_chr_activated_object CHR_JOANNA, 0x76, /*goto*/ 0x2f label 0x2f unset_object_flag_bank1 0x65, OBJECTFLAG1_00000001 unset_object_flag_bank1 0x66, OBJECTFLAG1_00000001 set_object_image 0x65, 0x00, 0x14 set_object_image 0x66, 0x00, 0x14 unset_stage_flag STAGEFLAG_HOLO_ABORTING unset_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS unset_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE unset_stage_flag STAGEFLAG_GENERAL_PURPOSE hide_object 0x45 show_object 0x58 show_object 0x59 show_object 0x5a show_object 0x5b show_object 0x5c show_object 0x5d show_object 0x5e show_object 0x5f show_object 0x60 show_object 0x61 show_object 0x62 show_object 0x63 show_object 0x64 show_object 0x73 show_object 0x74 show_object 0x65 show_object 0x66 show_object 0x67 show_object 0x68 show_object 0x69 show_object 0x6a show_object 0x6b show_object 0x6c show_object 0x6d show_object 0x6e show_object 0x6f show_object 0x70 show_object 0x71 show_object 0x72 hide_chr 0x04 open_door 0x67 open_door 0x68 open_door 0x69 open_door 0x6a open_door 0x6b open_door 0x6c open_door 0x6d open_door 0x6e open_door 0x6f open_door 0x70 open_door 0x71 open_door 0x72 yield close_door 0x67 close_door 0x68 close_door 0x69 close_door 0x6a close_door 0x6b close_door 0x6c close_door 0x6d close_door 0x6e close_door 0x6f close_door 0x70 close_door 0x71 close_door 0x72 dprint "training" label 0x2f label 0x91 remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c62 // "Activate all the switches." restart_timer beginloop 0x82 if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x90 if_stage_flag_eq STAGEFLAG_TRIGGER_HOLO_FAILURE, TRUE, /*goto*/ 0x85 if_stage_flag_eq STAGEFLAG_TRIGGER_HOLO_SUCCESS, TRUE, /*goto*/ 0x83 if_chr_activated_object CHR_JOANNA, 0x75, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x76, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 1200, /*goto*/ 0x2f endloop 0x82 label 0x2f goto_first 0x91 label 0x85 dprint "fail" set_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE goto_next 0x84 label 0x83 set_eeprom_flag EEPROMFLAG_CI_HOLO3_DONE dprint "done" set_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS yield goto_next 0x84 label 0x84 label 0x90 set_stage_flag STAGEFLAG_CONSIDER_WARP unlock_door 0x75, 0x40 unlock_door 0x76, 0x40 remove_displayed_text mute_channel CHANNEL_5 mute_channel CHANNEL_6 mute_channel CHANNEL_7 show_chr 0x04 dprint "aborted" hide_object 0x58 hide_object 0x59 hide_object 0x5a hide_object 0x5b hide_object 0x5c hide_object 0x5d hide_object 0x5e hide_object 0x5f hide_object 0x60 hide_object 0x61 hide_object 0x62 hide_object 0x63 hide_object 0x64 hide_object 0x73 hide_object 0x74 hide_object 0x65 hide_object 0x66 hide_object 0x67 hide_object 0x68 hide_object 0x69 hide_object 0x6a hide_object 0x6b hide_object 0x6c hide_object 0x6d hide_object 0x6e hide_object 0x6f hide_object 0x70 hide_object 0x71 hide_object 0x72 show_object 0x45 restart_timer beginloop 0x09 if_timer_gt 60, /*goto*/ 0x06 endloop 0x09 label 0x06 remove_displayed_text goto_first 0x08 set_function CHR_SELF, GFUNC_IDLE endfunction func102a_holo3_part1: beginloop 0x04 if_stage_flag_eq STAGEFLAG_IN_HOLO3, TRUE, /*goto*/ 0x2f reloop 0x04 label 0x2f if_chr_distance_to_pad_lt CHR_JOANNA, 300, 0x0123, /*goto*/ 0x09 endloop 0x04 label 0x09 if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x06 remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c5f // "DUCK - Hold R Button, then press Down C Button to duck." restart_timer beginloop 0x0a if_timer_gt 1200, /*goto*/ 0x06 endloop 0x0a label 0x06 goto_first 0x04 set_function CHR_SELF, GFUNC_IDLE endfunction func102b_holo3_part2: beginloop 0x04 if_stage_flag_eq STAGEFLAG_IN_HOLO3, TRUE, /*goto*/ 0x2f reloop 0x04 label 0x2f if_chr_distance_to_pad_lt CHR_JOANNA, 300, 0x0124, /*goto*/ 0x09 endloop 0x04 label 0x09 if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x06 remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c60 // "CROUCH - When ducking, hold R Button, then press Down C Button to duck." restart_timer beginloop 0x0a if_timer_gt 1200, /*goto*/ 0x06 endloop 0x0a label 0x06 goto_first 0x04 set_function CHR_SELF, GFUNC_IDLE endfunction func102c_holo3_object1: beginloop 0x04 if_chr_activated_object CHR_F3, 0x65, /*goto*/ 0x2f endloop 0x04 label 0x2f assign_sound 0x043a, CHANNEL_7 control_sound_from_object CHANNEL_7, 0x65, TRUE set_object_image 0x65, 0x00, 0x13 set_object_flag_bank1 0x65, OBJECTFLAG1_00000001 set_return_function CHR_SELF, FUNC_HOLO3_OBJECT1 set_function CHR_SELF, FUNC_HOLO3_CHECK_DONE endfunction func102d_holo3_object2: beginloop 0x04 if_chr_activated_object CHR_F3, 0x66, /*goto*/ 0x2f endloop 0x04 label 0x2f assign_sound 0x043a, CHANNEL_7 control_sound_from_object CHANNEL_7, 0x65, TRUE set_object_image 0x66, 0x00, 0x13 set_object_flag_bank1 0x66, OBJECTFLAG1_00000001 set_return_function CHR_SELF, FUNC_HOLO3_OBJECT2 set_function CHR_SELF, FUNC_HOLO3_CHECK_DONE endfunction func041c_holo3_check_done: label 0x04 yield if_object_flag_bank1 0x65, OBJECTFLAG1_00000001, /*goto*/ 0x2f goto_next 0x06 label 0x2f if_object_flag_bank1 0x66, OBJECTFLAG1_00000001, /*goto*/ 0x2f goto_next 0x06 label 0x2f if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x06 set_stage_flag STAGEFLAG_GENERAL_PURPOSE remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c61 // "Holoprogram 3 has been completed successfully." restart_timer beginloop 0x08 if_timer_gt 120, /*goto*/ 0x2f endloop 0x08 label 0x2f set_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS label 0x06 return set_function CHR_SELF, GFUNC_IDLE endfunction func1028_holo4_main: label 0x80 beginloop 0x08 if_stage_flag_eq STAGEFLAG_IN_HOLO4, TRUE, /*goto*/ 0x81 endloop 0x08 label 0x81 set_stage_flag STAGEFLAG_CONSIDER_WARP lock_door 0x75, 0x40 lock_door 0x76, 0x40 close_door 0x75 unset_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG if_chr_activated_object CHR_JOANNA, 0x75, /*goto*/ 0x2f if_chr_activated_object CHR_JOANNA, 0x76, /*goto*/ 0x2f label 0x2f unset_stage_flag STAGEFLAG_HOLO_ABORTING unset_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS unset_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE unset_stage_flag STAGEFLAG_GENERAL_PURPOSE hide_object 0x45 hide_chr 0x04 try_spawn_chr BODY_DDSHOCK, HEAD_RANDOM, 0x0274, FUNC_HOLO4_GUARD1, 0x00002210, /*goto*/ 0x08 label 0x08 dprint "training" label 0x91 if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x2f remove_displayed_text if_chr_flag_bank3 0x0d, CHRFLAG3_00000040, /*goto*/ 0x61 display_text 0x01, COLOR_04_ORANGE, 0x1c6b // "Unarmed combat - knock out the target. - Press Z Button repeatedly to punch." goto_next 0x2f label 0x61 if_chr_flag_bank3 0x0e, CHRFLAG3_00000040, /*goto*/ 0x62 remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c6c // "Now try against a moving target..." goto_next 0x2f label 0x62 remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c6d // "And finally against a target that fights back." goto_next 0x2f label 0x2f restart_timer beginloop 0x82 if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x90 if_stage_flag_eq STAGEFLAG_TRIGGER_HOLO_FAILURE, TRUE, /*goto*/ 0x85 if_stage_flag_eq STAGEFLAG_TRIGGER_HOLO_SUCCESS, TRUE, /*goto*/ 0x83 if_chr_activated_object CHR_JOANNA, 0x75, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x76, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 1200, /*goto*/ 0x2f endloop 0x82 label 0x2f goto_first 0x91 label 0x85 dprint "fail" set_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE goto_next 0x84 label 0x83 set_eeprom_flag EEPROMFLAG_CI_HOLO4_DONE dprint "done" set_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS yield goto_next 0x84 label 0x84 label 0x90 set_stage_flag STAGEFLAG_CONSIDER_WARP unlock_door 0x75, 0x40 unlock_door 0x76, 0x40 remove_displayed_text mute_channel CHANNEL_5 mute_channel CHANNEL_6 mute_channel CHANNEL_7 show_chr 0x04 remove_chr 0x0d remove_chr 0x0e remove_chr 0x0f dprint "aborted" show_object 0x45 label 0x06 remove_displayed_text beginloop 0x6d if_stage_flag_eq STAGEFLAG_IN_HOLO4, FALSE, /*goto*/ 0x2f endloop 0x6d label 0x2f goto_first 0x08 set_function CHR_SELF, GFUNC_IDLE endfunction func0403_holo4_guard1: set_chr_id 0x0d set_onshot_function FUNC_HOLO4_GUARD1 beginloop 0x04 if_chr_death_animation_finished CHR_SELF, /*goto*/ 0x2f if_chr_dying CHR_SELF, /*goto*/ 0x2f if_chr_unloaded CHR_SELF, /*goto*/ 0x2f endloop 0x04 label 0x2f set_self_flag_bank3 CHRFLAG3_00000040 try_spawn_chr BODY_DDSHOCK, HEAD_RANDOM, 0x0277, FUNC_HOLO4_GUARD2, 0x00002210, /*goto*/ 0x08 label 0x08 remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c6c // "Now try against a moving target..." set_onshot_function GFUNC_IDLE set_function CHR_SELF, GFUNC_IDLE endfunction func0404_holo4_guard2: set_chr_id 0x0e set_onshot_function FUNC_HOLO4_GUARD2 label 0x04 yield if_chr_death_animation_finished CHR_SELF, /*goto*/ 0x2f if_chr_dying CHR_SELF, /*goto*/ 0x2f if_chr_unloaded CHR_SELF, /*goto*/ 0x2f goto_next 0x06 label 0x2f set_self_flag_bank3 CHRFLAG3_00000040 try_spawn_chr BODY_DDSHOCK, HEAD_RANDOM, 0x027a, FUNC_HOLO4_GUARD3, 0x00002210, /*goto*/ 0x0a label 0x0a remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c6d // "And finally against a target that fights back." set_onshot_function GFUNC_IDLE set_function CHR_SELF, GFUNC_IDLE label 0x06 if_chr_distance_lt 500, /*goto*/ 0x2f try_face_entity 0x0200, 0x0000, /*goto*/ 0x08 beginloop 0x08 if_chr_distance_lt 500, /*goto*/ 0x2f endloop 0x08 label 0x2f restart_timer retreat 0x02, 0x01 beginloop 0x09 if_timer_gt 60, /*goto*/ 0x06 endloop 0x09 label 0x06 goto_first 0x04 endfunction func0405_holo4_guard3: set_chr_id 0x0f set_onshot_function FUNC_HOLO4_GUARD3 restart_timer beginloop 0x04 if_timer_gt 60, /*goto*/ 0x06 endloop 0x04 label 0x06 set_function CHR_SELF, FUNC_HOLO_GUARD_UNARMED_UNALERT endfunction func1033_holo4_part1: beginloop 0x8f if_stage_flag_eq STAGEFLAG_IN_HOLO4, TRUE, /*goto*/ 0x04 endloop 0x8f beginloop 0x04 if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x57 if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x57 if_chr_death_animation_finished 0x0d, /*goto*/ 0x2f if_chr_dying 0x0d, /*goto*/ 0x2f if_chr_unloaded 0x0d, /*goto*/ 0x2f endloop 0x04 label 0x2f yield yield yield yield yield if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x57 if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x57 if_chr_death_animation_finished 0x0e, /*goto*/ 0x2f if_chr_dying 0x0e, /*goto*/ 0x2f if_chr_unloaded 0x0e, /*goto*/ 0x2f goto_first 0x04 label 0x2f yield yield yield yield yield if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x57 if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x57 if_chr_death_animation_finished 0x0f, /*goto*/ 0x2f if_chr_dying 0x0f, /*goto*/ 0x2f if_chr_unloaded 0x0f, /*goto*/ 0x2f goto_first 0x04 label 0x2f restart_timer set_stage_flag STAGEFLAG_GENERAL_PURPOSE remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c58 // "Holoprogram 4 has been completed successfully." beginloop 0x08 if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x57 if_timer_gt 120, /*goto*/ 0x06 endloop 0x08 label 0x06 set_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS beginloop 0x57 if_stage_flag_eq STAGEFLAG_IN_HOLO4, FALSE, /*goto*/ 0x2f endloop 0x57 label 0x2f goto_first 0x8f set_function CHR_SELF, GFUNC_IDLE endfunction func1029_holo5_main: label 0x80 beginloop 0x08 if_stage_flag_eq STAGEFLAG_IN_HOLO5, TRUE, /*goto*/ 0x81 endloop 0x08 label 0x81 set_stage_flag STAGEFLAG_CONSIDER_WARP lock_door 0x75, 0x40 lock_door 0x76, 0x40 close_door 0x75 unset_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG if_chr_activated_object CHR_JOANNA, 0x75, /*goto*/ 0x2f if_chr_activated_object CHR_JOANNA, 0x76, /*goto*/ 0x2f label 0x2f unset_stage_flag STAGEFLAG_HOLO_ABORTING unset_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS unset_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE unset_stage_flag STAGEFLAG_GENERAL_PURPOSE hide_object 0x45 hide_chr 0x04 try_spawn_chr BODY_DDSHOCK, HEAD_RANDOM, 0x0126, FUNC_HOLO5_INIT_GUARD1, 0x00002210, /*goto*/ 0x06 label 0x06 yield dprint "training" label 0x91 if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x2f remove_displayed_text if_chr_flag_bank3 0x10, CHRFLAG3_00000040, /*goto*/ 0x61 display_text 0x01, COLOR_04_ORANGE, 0x1c5c // "Disarm this live target if you can." goto_next 0x2f label 0x61 if_chr_flag_bank3 0x11, CHRFLAG3_00000040, /*goto*/ 0x62 display_text 0x01, COLOR_04_ORANGE, 0x1c5d // "Knock out this target - stealth is the key." goto_next 0x2f label 0x62 display_text 0x01, COLOR_04_ORANGE, 0x1c5e // "And the final guard..." goto_next 0x2f label 0x2f restart_timer beginloop 0x82 if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x90 if_stage_flag_eq STAGEFLAG_TRIGGER_HOLO_FAILURE, TRUE, /*goto*/ 0x85 if_stage_flag_eq STAGEFLAG_TRIGGER_HOLO_SUCCESS, TRUE, /*goto*/ 0x83 if_chr_activated_object CHR_JOANNA, 0x75, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x76, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 1200, /*goto*/ 0x2f endloop 0x82 label 0x2f goto_first 0x91 label 0x2f goto_first 0x82 label 0x85 dprint "fail" set_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE goto_next 0x84 label 0x83 set_eeprom_flag EEPROMFLAG_CI_HOLO5_DONE dprint "done" set_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS yield goto_next 0x84 label 0x84 label 0x90 set_stage_flag STAGEFLAG_CONSIDER_WARP unlock_door 0x75, 0x40 unlock_door 0x76, 0x40 remove_displayed_text mute_channel CHANNEL_5 mute_channel CHANNEL_6 mute_channel CHANNEL_7 show_chr 0x04 remove_chr 0x10 remove_chr 0x11 remove_chr 0x12 dprint "aborted" show_object 0x45 remove_displayed_text beginloop 0x6d if_stage_flag_eq STAGEFLAG_IN_HOLO5, FALSE, /*goto*/ 0x2f endloop 0x6d label 0x2f goto_first 0x08 endfunction func0406_holo5_init_guard1: set_alertness 100 set_chr_id 0x10 try_draw_weapon MODEL_CHRFALCON2, WEAPON_FALCON2, 0x40000000, /*goto*/ 0x06 label 0x06 set_function CHR_SELF, FUNC_HOLO5_GUARD1 endfunction func0407_holo5_guard1: set_self_flag_bankx CHRFLAG0_80000000, BANK_0 dprint "CREATED 4" set_onshot_function FUNC_HOLO5_GUARD1 set_chr_health CHR_SELF, 300 set_armor 300 label 0x04 yield label 0x2f if_chr_death_animation_finished CHR_SELF, /*goto*/ 0x30 if_chr_dying CHR_SELF, /*goto*/ 0x30 if_chr_unloaded CHR_SELF, /*goto*/ 0x30 if_has_gun CHR_SELF, /*goto*/ 0x06 label 0x2f set_self_flag_bankx CHRFLAG0_00008000, BANK_0 set_self_flag_bank3 CHRFLAG3_00000040 set_onshot_function GFUNC_IDLE goto_next 0x0a label 0x30 restart_timer set_self_flag_bank3 CHRFLAG3_INVINCIBLE_TO_GUNFIRE beginloop 0x62 if_timer_gt 60, /*goto*/ 0x63 endloop 0x62 label 0x63 set_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE set_stage_flag STAGEFLAG_GENERAL_PURPOSE set_onshot_function GFUNC_IDLE set_function CHR_SELF, GFUNC_IDLE label 0x0a set_self_flag_bank3 CHRFLAG3_00000040 set_self_flag_bankx CHRFLAG0_00008000, BANK_0 surrender message CHR_JOANNA, 0x1c5a // "Guard has been successfully disarmed." beginloop 0x59 try_spawn_chr BODY_DDSHOCK, HEAD_RANDOM, 0x0272, FUNC_HOLO5_INIT_GUARD2, 0x00002210, /*goto*/ 0x2f endloop 0x59 label 0x2f set_onshot_function GFUNC_IDLE beginloop 0x0b endloop 0x0b label 0x06 if_chr_distance_lt 300, /*goto*/ 0x2f try_face_entity 0x0200, 0x0000, /*goto*/ 0x08 beginloop 0x08 if_chr_distance_lt 300, /*goto*/ 0x2f endloop 0x08 label 0x2f restart_timer retreat 0x02, 0x01 beginloop 0x09 if_timer_gt 60, /*goto*/ 0x06 endloop 0x09 label 0x06 goto_first 0x04 endfunction func0408_holo5_init_guard2: set_chr_health CHR_SELF, 200 set_alertness 100 set_chr_id 0x11 try_draw_weapon MODEL_CHRFALCON2, WEAPON_FALCON2, 0x40000000, /*goto*/ 0x06 label 0x06 remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c5d // "Knock out this target - stealth is the key." set_function CHR_SELF, FUNC_HOLO5_GUARD2 endfunction func0409_holo5_guard2: dprint "CREATED 5" set_onshot_function FUNC_HOLO5_GUARD2 label 0x04 yield if_chr_death_animation_finished CHR_SELF, /*goto*/ 0x2f if_chr_dying CHR_SELF, /*goto*/ 0x2f if_chr_unloaded CHR_SELF, /*goto*/ 0x2f restart_timer assign_path 0 start_path label 0x08 yield dprint "On Patrol" if_chr_death_animation_finished CHR_SELF, /*goto*/ 0x2f if_chr_dying CHR_SELF, /*goto*/ 0x2f if_chr_unloaded CHR_SELF, /*goto*/ 0x2f if_target_chr_in_sight /*goto*/ 0x09 unset_self_flag_bank3 CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_alertness 0 goto_first 0x08 label 0x06 label 0x09 set_self_flag_bank3 CHRFLAG3_INVINCIBLE_TO_GUNFIRE try_face_entity 0x0200, 0x0000, /*goto*/ 0x0a beginloop 0x0a if_chr_sees_player /*goto*/ 0x06 goto_first 0x04 label 0x06 endloop 0x0a label 0x2f set_self_flag_bank3 CHRFLAG3_INVINCIBLE_TO_GUNFIRE set_self_flag_bank3 CHRFLAG3_00000040 beginloop 0x57 try_spawn_chr BODY_DDSHOCK, HEAD_RANDOM, 0x0125, FUNC_HOLO5_INIT_GUARD3, 0x00002210, /*goto*/ 0x06 endloop 0x57 label 0x06 set_onshot_function GFUNC_IDLE set_function CHR_SELF, GFUNC_IDLE endfunction func040a_holo5_init_guard3: set_reaction_speed 100 set_chr_id 0x12 try_draw_weapon MODEL_CHRFALCON2, WEAPON_FALCON2, 0x40000000, /*goto*/ 0x06 label 0x06 remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c5e // "And the final guard..." set_alertness 100 set_function CHR_SELF, FUNC_HOLO5_GUARD3 endfunction func040b_holo5_guard3: dprint "CREATED 6" set_onshot_function FUNC_HOLO_GUARD_ARMED_UNALERT restart_timer beginloop 0x08 if_timer_gt 60, /*goto*/ 0x06 endloop 0x08 label 0x06 set_function CHR_SELF, FUNC_HOLO_GUARD_ARMED_UNALERT beginloop 0x04 if_chr_death_animation_finished CHR_SELF, /*goto*/ 0x2f if_chr_dying CHR_SELF, /*goto*/ 0x2f if_chr_unloaded CHR_SELF, /*goto*/ 0x2f endloop 0x04 label 0x2f restart_timer remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c59 // "Holoprogram 5 has been completed successfully." beginloop 0x08 if_timer_gt 120, /*goto*/ 0x06 endloop 0x08 label 0x06 set_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS set_function CHR_SELF, GFUNC_IDLE endfunction func1034_holo5_part1: beginloop 0x8f if_stage_flag_eq STAGEFLAG_IN_HOLO5, TRUE, /*goto*/ 0x2f endloop 0x8f label 0x2f yield yield yield yield beginloop 0x04 if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x0d if_chr_flag_bankx 0x10, CHRFLAG0_00008000, BANK_0, /*goto*/ 0x2f dprint "CHR 4FD" label 0x06 endloop 0x04 label 0x2f yield yield yield yield if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x0d if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x0d if_chr_death_animation_finished 0x11, /*goto*/ 0x2f if_chr_dying 0x11, /*goto*/ 0x2f if_chr_unloaded 0x11, /*goto*/ 0x2f goto_first 0x04 label 0x2f dprint "CHR 5FD" yield yield yield yield if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x0d if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x0d if_chr_death_animation_finished 0x12, /*goto*/ 0x2f if_chr_dying 0x12, /*goto*/ 0x2f if_chr_unloaded 0x12, /*goto*/ 0x2f goto_first 0x04 label 0x2f dprint "CHR 6FD" restart_timer if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x0d set_stage_flag STAGEFLAG_GENERAL_PURPOSE remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c59 // "Holoprogram 5 has been completed successfully." beginloop 0x08 if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x0d if_timer_gt 120, /*goto*/ 0x06 endloop 0x08 label 0x06 set_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS beginloop 0x0d if_stage_flag_eq STAGEFLAG_IN_HOLO5, FALSE, /*goto*/ 0x2f endloop 0x0d label 0x2f goto_first 0x8f set_function CHR_SELF, GFUNC_IDLE endfunction func102e_holo6_main: label 0x80 beginloop 0x08 if_stage_flag_eq STAGEFLAG_IN_HOLO6, TRUE, /*goto*/ 0x81 endloop 0x08 label 0x81 set_stage_flag STAGEFLAG_CONSIDER_WARP lock_door 0x75, 0x40 lock_door 0x76, 0x40 close_door 0x75 unset_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG if_chr_activated_object CHR_JOANNA, 0x75, /*goto*/ 0x2f if_chr_activated_object CHR_JOANNA, 0x76, /*goto*/ 0x2f label 0x2f unset_stage_flag STAGEFLAG_HOLO_ABORTING unset_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS unset_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE unset_stage_flag STAGEFLAG_GENERAL_PURPOSE hide_object 0x45 hide_chr 0x04 beginloop 0x57 try_spawn_chr BODY_DDSHOCK, HEAD_RANDOM, 0x0127, FUNC_HOLO6_INIT_GUARD1, 0x00002210, /*goto*/ 0x59 endloop 0x57 beginloop 0x59 try_spawn_chr BODY_DDSHOCK, HEAD_RANDOM, 0x0128, FUNC_HOLO6_INIT_GUARD2, 0x00002210, /*goto*/ 0x5b endloop 0x59 beginloop 0x5b try_spawn_chr BODY_DDSHOCK, HEAD_RANDOM, 0x0129, FUNC_HOLO6_INIT_GUARD3, 0x00002210, /*goto*/ 0x5c endloop 0x5b beginloop 0x5c try_spawn_chr BODY_DDSHOCK, HEAD_RANDOM, 0x012a, FUNC_HOLO6_INIT_GUARD4, 0x00002210, /*goto*/ 0x5d endloop 0x5c label 0x5d dprint "training" label 0x2f label 0x91 if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x2f remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c6e // "Defeat all enemies without getting hit." label 0x2f restart_timer beginloop 0x82 if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x90 if_stage_flag_eq STAGEFLAG_TRIGGER_HOLO_FAILURE, TRUE, /*goto*/ 0x85 if_stage_flag_eq STAGEFLAG_TRIGGER_HOLO_SUCCESS, TRUE, /*goto*/ 0x83 if_chr_activated_object CHR_JOANNA, 0x75, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x76, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 1200, /*goto*/ 0x2f endloop 0x82 label 0x2f goto_first 0x91 label 0x85 dprint "fail" set_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE goto_next 0x84 label 0x83 set_eeprom_flag EEPROMFLAG_CI_HOLO6_DONE dprint "done" set_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS yield goto_next 0x84 label 0x84 label 0x90 set_stage_flag STAGEFLAG_CONSIDER_WARP unlock_door 0x75, 0x40 unlock_door 0x76, 0x40 remove_displayed_text mute_channel CHANNEL_5 mute_channel CHANNEL_6 mute_channel CHANNEL_7 show_chr 0x04 remove_chr 0x13 remove_chr 0x14 remove_chr 0x15 remove_chr 0x16 dprint "aborted" show_object 0x45 label 0x06 remove_displayed_text beginloop 0x6d if_stage_flag_eq STAGEFLAG_IN_HOLO6, FALSE, /*goto*/ 0x2f endloop 0x6d label 0x2f goto_first 0x08 set_function CHR_SELF, GFUNC_IDLE endfunction func040c_holo6_init_guard1: set_chr_id 0x13 set_function CHR_SELF, FUNC_HOLO_GUARD_UNARMED_UNALERT endfunction func040d_holo6_init_guard2: set_chr_id 0x14 set_function CHR_SELF, FUNC_HOLO_GUARD_UNARMED_UNALERT endfunction func040e_holo6_init_guard3: set_chr_id 0x15 set_function CHR_SELF, FUNC_HOLO_GUARD_UNARMED_UNALERT endfunction func040f_holo6_init_guard4: set_chr_id 0x16 set_function CHR_SELF, FUNC_HOLO_GUARD_UNARMED_UNALERT endfunction func0415_holo_guard_unarmed_unalert: set_alertness 100 set_chr_health CHR_SELF, 100 yield yield yield cmd0145_rebuild_groups cmd0146_rebuild_groups yield yield yield yield set_action ACTION_SCAN, FALSE set_onshot_function FUNC_HOLO_GUARD_UNARMED_ALERT restart_timer beginloop 0x08 if_timer_gt 120, /*goto*/ 0x04 if_player_looking_at_something_maybe 0x28, 0x01, 0x00, /*goto*/ 0x04 endloop 0x08 beginloop 0x04 if_chr_distance_lt 500, /*goto*/ 0x06 call_rng if_rand_lt 1, /*goto*/ 0x06 label 0x2f endloop 0x04 label 0x06 set_function CHR_SELF, FUNC_HOLO_GUARD_UNARMED_ALERT endfunction func0416_holo_guard_unarmed_alert: set_onshot_function FUNC_HOLO_GUARD_UNARMED_ALERT set_action ACTION_HAND_COMBAT, FALSE if_chr_injured_target CHR_SELF, /*goto*/ 0x09 label 0x8f restart_timer try_run_to_target_chr /*goto*/ 0x08 beginloop 0x08 if_chr_stopped /*goto*/ 0x06 if_chr_distance_lt 300, /*goto*/ 0x2f if_timer_gt 15, /*goto*/ 0x06 endloop 0x08 label 0x06 goto_first 0x8f label 0x2f set_return_function CHR_SELF, FUNC_HOLO_GUARD_UNARMED_ALERT set_function CHR_SELF, FUNC_HOLO_GUARD_UNARMED_ALERT2 label 0x09 if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x0a set_stage_flag STAGEFLAG_GENERAL_PURPOSE set_stage_flag STAGEFLAG_HOLO_FAILED remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c6f // "Training failed - you have been hit." restart_timer set_function CHR_SELF, GFUNC_IDLE beginloop 0x5e if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x2f if_timer_gt 180, /*goto*/ 0x2f endloop 0x5e label 0x2f set_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE label 0x0a set_function CHR_SELF, GFUNC_IDLE endfunction func0416_holo_guard_unarmed_alert2: set_action ACTION_HAND_COMBAT, FALSE restart_timer beginloop 0x04 if_chr_dying TARGET_CHR, /*goto*/ 0x57 if_chr_unloaded TARGET_CHR, /*goto*/ 0x57 if_chr_distance_gt 100, /*goto*/ 0x2f if_in_disarm_range /*goto*/ 0x2f if_timer_gt 120, /*goto*/ 0x10 endloop 0x04 label 0x2f if_chr_distance_gt 400, /*goto*/ 0x10 if_chr_distance_lt 100, /*goto*/ 0x06 restart_timer try_run_to_target_chr /*goto*/ 0x08 beginloop 0x08 if_chr_dying TARGET_CHR, /*goto*/ 0x57 if_chr_unloaded TARGET_CHR, /*goto*/ 0x57 if_timer_gt 20, /*goto*/ 0x10 if_chr_stopped /*goto*/ 0x10 if_chr_lost_track_of_target_maybe /*goto*/ 0x0e label 0x0e if_chr_distance_gt 400, /*goto*/ 0x10 if_chr_distance_lt 100, /*goto*/ 0x06 endloop 0x08 label 0x2f restart_timer goto_first 0x04 label 0x06 restart_timer if_angle_to_target_chr_lt 10, /*goto*/ 0x06 cmd004f 246, /*goto*/ 0x06 stop_chr try_face_entity 0x0200, 0x0000, /*goto*/ 0x09 beginloop 0x09 if_chr_dying TARGET_CHR, /*goto*/ 0x57 if_chr_unloaded TARGET_CHR, /*goto*/ 0x57 if_chr_distance_gt 400, /*goto*/ 0x10 if_angle_to_target_chr_lt 10, /*goto*/ 0x06 cmd004f 246, /*goto*/ 0x06 if_timer_gt 120, /*goto*/ 0x06 endloop 0x09 label 0x2f restart_timer goto_first 0x04 label 0x06 try_punch_or_kick /*goto*/ 0x2f restart_timer goto_first 0x04 label 0x2f beginloop 0x0a if_timer_gt 180, /*goto*/ 0x06 if_chr_injured_target CHR_SELF, /*goto*/ 0x2f if_chr_stopped /*goto*/ 0x06 endloop 0x0a label 0x06 if_chr_injured_target CHR_SELF, /*goto*/ 0x2f say_quip CHR_JOANNA, 0x16, 0x19, 0x03, 0x00, BANK_0, 0x00, 0x00 say_quip CHR_JOANNA, 0x17, 0x19, 0x03, 0x01, BANK_0, 0x00, 0x00 goto_next 0x06 label 0x2f say_quip CHR_JOANNA, 0x15, 0x19, 0x02, 0x00, BANK_0, 0x00, 0x00 say_quip CHR_JOANNA, 0x15, 0x19, 0x03, 0x01, BANK_0, 0x00, 0x00 if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x0f set_stage_flag STAGEFLAG_GENERAL_PURPOSE set_stage_flag STAGEFLAG_HOLO_FAILED remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c6f // "Training failed - you have been hit." restart_timer set_function CHR_SELF, GFUNC_IDLE beginloop 0x5e if_timer_gt 180, /*goto*/ 0x2f endloop 0x5e label 0x2f set_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE label 0x0f set_function CHR_SELF, GFUNC_IDLE label 0x06 label 0x57 label 0x10 return endfunction func041a_handle_holo_failure: beginloop 0x8f if_stage_flag_eq STAGEFLAG_HOLO_FAILED, TRUE, /*goto*/ 0x2f endloop 0x8f label 0x2f restart_timer beginloop 0x08 if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x2f if_timer_gt 180, /*goto*/ 0x2f endloop 0x08 label 0x2f set_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE label 0x09 unset_stage_flag STAGEFLAG_HOLO_FAILED goto_first 0x8f endfunction func102f_holo1_part1: beginloop 0x8f if_stage_flag_eq STAGEFLAG_IN_HOLO6, TRUE, /*goto*/ 0x04 endloop 0x8f beginloop 0x04 yield yield yield dprint "NO DEAD" if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x0d if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x0d if_chr_dying 0x13, /*goto*/ 0x2f if_chr_death_animation_finished 0x13, /*goto*/ 0x2f if_chr_unloaded 0x13, /*goto*/ 0x2f endloop 0x04 label 0x2f yield yield yield yield dprint "CHR 7FD" if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x0d if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x0d if_chr_dying 0x14, /*goto*/ 0x2f if_chr_death_animation_finished 0x14, /*goto*/ 0x2f if_chr_unloaded 0x14, /*goto*/ 0x2f goto_first 0x04 label 0x2f yield yield yield yield dprint "CHR 8FD" if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x0d if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x0d if_chr_dying 0x15, /*goto*/ 0x2f if_chr_death_animation_finished 0x15, /*goto*/ 0x2f if_chr_unloaded 0x15, /*goto*/ 0x2f goto_first 0x04 label 0x2f yield yield yield yield dprint "CHR 9FD" if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x0d if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x0d if_chr_dying 0x16, /*goto*/ 0x2f if_chr_death_animation_finished 0x16, /*goto*/ 0x2f if_chr_unloaded 0x16, /*goto*/ 0x2f goto_first 0x04 label 0x2f dprint "CHR 10FD" if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x0d set_stage_flag STAGEFLAG_GENERAL_PURPOSE remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c70 // "Holoprogram 6 has been completed successfully." restart_timer beginloop 0x08 if_timer_gt 120, /*goto*/ 0x2f endloop 0x08 label 0x2f set_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS beginloop 0x0d if_stage_flag_eq STAGEFLAG_IN_HOLO6, FALSE, /*goto*/ 0x2f endloop 0x0d label 0x2f goto_first 0x8f set_function CHR_SELF, GFUNC_IDLE endfunction func1030_holo7_main: label 0x80 beginloop 0x08 if_stage_flag_eq STAGEFLAG_IN_HOLO7, TRUE, /*goto*/ 0x81 endloop 0x08 label 0x81 set_stage_flag STAGEFLAG_CONSIDER_WARP lock_door 0x75, 0x40 lock_door 0x76, 0x40 close_door 0x75 unset_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG if_chr_activated_object CHR_JOANNA, 0x75, /*goto*/ 0x2f if_chr_activated_object CHR_JOANNA, 0x76, /*goto*/ 0x2f label 0x2f unset_stage_flag STAGEFLAG_HOLO_ABORTING unset_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS unset_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE unset_stage_flag STAGEFLAG_GENERAL_PURPOSE hide_object 0x45 hide_chr 0x04 beginloop 0x57 try_spawn_chr BODY_DDSHOCK, HEAD_RANDOM, 0x012b, FUNC_HOLO7_INIT_GUARD1, 0x00002210, /*goto*/ 0x59 endloop 0x57 beginloop 0x59 try_spawn_chr BODY_DDSHOCK, HEAD_RANDOM, 0x012c, FUNC_HOLO7_INIT_GUARD2, 0x00002210, /*goto*/ 0x5b endloop 0x59 beginloop 0x5b try_spawn_chr BODY_DDSHOCK, HEAD_RANDOM, 0x012d, FUNC_HOLO7_INIT_GUARD3, 0x00002210, /*goto*/ 0x5c endloop 0x5b beginloop 0x5c try_spawn_chr BODY_DDSHOCK, HEAD_RANDOM, 0x012e, FUNC_HOLO7_INIT_GUARD4, 0x00002210, /*goto*/ 0x5d endloop 0x5c beginloop 0x5d try_spawn_chr BODY_DDSHOCK, HEAD_RANDOM, 0x012f, FUNC_HOLO7_INIT_GUARD5, 0x00002210, /*goto*/ 0x5e endloop 0x5d label 0x5e dprint "training" label 0x2f label 0x91 if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x2f remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c6e // "Defeat all enemies without getting hit." label 0x2f restart_timer beginloop 0x82 dprint "tran loop" if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x90 if_stage_flag_eq STAGEFLAG_TRIGGER_HOLO_FAILURE, TRUE, /*goto*/ 0x85 if_stage_flag_eq STAGEFLAG_TRIGGER_HOLO_SUCCESS, TRUE, /*goto*/ 0x83 if_chr_activated_object CHR_JOANNA, 0x75, /*goto*/ 0x57 if_chr_activated_object CHR_JOANNA, 0x76, /*goto*/ 0x57 goto_next 0x59 label 0x57 set_stage_flag STAGEFLAG_TRIGGER_CANNOTEXIT_MSG label 0x59 if_timer_gt 1200, /*goto*/ 0x2f endloop 0x82 label 0x2f goto_first 0x91 label 0x85 dprint "fail" set_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE goto_next 0x84 label 0x83 set_eeprom_flag EEPROMFLAG_CI_HOLO7_DONE dprint "done" set_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS yield goto_next 0x84 label 0x84 label 0x90 set_stage_flag STAGEFLAG_CONSIDER_WARP unlock_door 0x75, 0x40 unlock_door 0x76, 0x40 remove_displayed_text mute_channel CHANNEL_5 mute_channel CHANNEL_6 mute_channel CHANNEL_7 show_chr 0x04 remove_chr 0x19 remove_chr 0x1a remove_chr 0x1b remove_chr 0x17 remove_chr 0x18 dprint "aborted" show_object 0x45 remove_displayed_text beginloop 0x6d if_stage_flag_eq STAGEFLAG_IN_HOLO7, FALSE, /*goto*/ 0x2f endloop 0x6d label 0x2f goto_first 0x08 set_function CHR_SELF, GFUNC_IDLE endfunction func0412_holo7_init_guard1: set_self_flag_bankx CHRFLAG0_80000000, BANK_0 set_chr_id 0x19 try_draw_weapon MODEL_CHRFALCON2, WEAPON_FALCON2, 0x00000000, /*goto*/ 0x06 label 0x06 set_function CHR_SELF, FUNC_HOLO_GUARD_ARMED_UNALERT endfunction func0413_holo7_init_guard2: set_self_flag_bankx CHRFLAG0_80000000, BANK_0 set_chr_id 0x1a try_draw_weapon MODEL_CHRFALCON2, WEAPON_FALCON2, 0x00000000, /*goto*/ 0x06 label 0x06 set_function CHR_SELF, FUNC_HOLO_GUARD_ARMED_UNALERT endfunction func0414_holo7_init_guard3: set_self_flag_bankx CHRFLAG0_80000000, BANK_0 set_chr_id 0x1b try_draw_weapon MODEL_CHRFALCON2, WEAPON_FALCON2, 0x00000000, /*goto*/ 0x06 label 0x06 set_function CHR_SELF, FUNC_HOLO_GUARD_ARMED_UNALERT endfunction func0410_holo7_init_guard4: set_chr_id 0x17 set_function CHR_SELF, FUNC_HOLO_GUARD_UNARMED_UNALERT endfunction func0411_holo7_init_guard5: set_chr_id 0x18 set_function CHR_SELF, FUNC_HOLO_GUARD_UNARMED_UNALERT endfunction func0418_holo_guard_armed_unalert: set_accuracy 50 set_reaction_speed 20 set_chr_health CHR_SELF, 40 yield yield yield cmd0145_rebuild_groups cmd0146_rebuild_groups set_action ACTION_SCAN, FALSE set_onshot_function FUNC_HOLO_GUARD_UNARMED_ALERT restart_timer beginloop 0x04 if_chr_distance_lt 500, /*goto*/ 0x06 if_timer_gt 300, /*goto*/ 0x2f if_alertness 99, OPERATOR_GREATER_THAN, /*goto*/ 0x06 endloop 0x04 label 0x2f call_rng goto_next 0x06 label 0x2f goto_first 0x04 label 0x06 set_function CHR_SELF, FUNC_HOLO_GUARD_ARMED_ALERT endfunction func0419_holo_guard_armed_alert: set_onshot_function FUNC_HOLO_GUARD_ARMED_ALERT if_has_gun CHR_SELF, /*goto*/ 0x2f set_group_alertness 100 set_return_function CHR_SELF, FUNC_HOLO_GUARD_UNARMED_ALERT set_function CHR_SELF, FUNC_HOLO_GUARD_UNARMED_ALERT label 0x2f label 0x8f try_aim_and_shoot_thing1 0x0220, 0x0000, /*goto*/ 0x04 beginloop 0x04 if_in_disarm_range /*goto*/ 0x2f endloop 0x04 label 0x2f try_aim_and_shoot_thing2 0x0200, 0x0000, /*goto*/ 0x08 beginloop 0x08 if_chr_injured_target CHR_SELF, /*goto*/ 0x2f if_chr_stopped /*goto*/ 0x06 endloop 0x08 label 0x06 goto_first 0x8f say_quip CHR_JOANNA, 0x15, 0x19, 0x02, 0x00, BANK_0, 0x00, 0x00 say_quip CHR_JOANNA, 0x15, 0x19, 0x03, 0x01, BANK_0, 0x00, 0x00 label 0x2f if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x0d set_stage_flag STAGEFLAG_GENERAL_PURPOSE set_stage_flag STAGEFLAG_HOLO_FAILED remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c6f // "Training failed - you have been hit." restart_timer set_function CHR_SELF, GFUNC_IDLE beginloop 0x5e if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x2f if_timer_gt 180, /*goto*/ 0x2f endloop 0x5e label 0x2f set_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE label 0x0d set_function CHR_SELF, GFUNC_IDLE endfunction func1031_holo7_part1: beginloop 0x8f if_stage_flag_eq STAGEFLAG_IN_HOLO7, TRUE, /*goto*/ 0x04 endloop 0x8f beginloop 0x04 yield yield yield yield if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x0d if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x0d if_chr_dying 0x19, /*goto*/ 0x2f if_chr_death_animation_finished 0x19, /*goto*/ 0x2f if_chr_unloaded 0x19, /*goto*/ 0x2f endloop 0x04 label 0x2f yield yield yield yield yield if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x0d if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x0d if_chr_dying 0x1a, /*goto*/ 0x2f if_chr_death_animation_finished 0x1a, /*goto*/ 0x2f if_chr_unloaded 0x1a, /*goto*/ 0x2f goto_first 0x04 label 0x2f yield yield yield yield yield if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x0d if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x0d if_chr_dying 0x1b, /*goto*/ 0x2f if_chr_death_animation_finished 0x1b, /*goto*/ 0x2f if_chr_unloaded 0x1b, /*goto*/ 0x2f goto_first 0x04 label 0x2f yield yield yield yield yield if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x0d if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x0d if_chr_dying 0x17, /*goto*/ 0x2f if_chr_death_animation_finished 0x17, /*goto*/ 0x2f if_chr_unloaded 0x17, /*goto*/ 0x2f goto_first 0x04 label 0x2f yield yield yield yield yield if_stage_flag_eq STAGEFLAG_HOLO_ABORTING, TRUE, /*goto*/ 0x0d if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x0d if_chr_dying 0x18, /*goto*/ 0x2f if_chr_death_animation_finished 0x18, /*goto*/ 0x2f if_chr_unloaded 0x18, /*goto*/ 0x2f goto_first 0x04 label 0x2f if_stage_flag_eq STAGEFLAG_GENERAL_PURPOSE, TRUE, /*goto*/ 0x0d set_stage_flag STAGEFLAG_GENERAL_PURPOSE remove_displayed_text display_text 0x01, COLOR_04_ORANGE, 0x1c71 // "Holoprogram 7 has been completed successfully." restart_timer beginloop 0x08 if_timer_gt 120, /*goto*/ 0x2f endloop 0x08 label 0x2f set_stage_flag STAGEFLAG_TRIGGER_HOLO_SUCCESS beginloop 0x0d if_stage_flag_eq STAGEFLAG_IN_HOLO7, FALSE, /*goto*/ 0x2f endloop 0x0d label 0x2f goto_first 0x8f set_function CHR_SELF, GFUNC_IDLE endfunction func1035_manage_music: beginloop 0x8f if_stage_flag_eq STAGEFLAG_IN_TRAINING, TRUE, /*goto*/ 0x2f reloop 0x8f label 0x2f play_music_track MUSIC_CI_TRAINING beginloop 0x08 if_stage_flag_eq STAGEFLAG_IN_TRAINING, FALSE, /*goto*/ 0x06 endloop 0x08 label 0x06 restart_music reset_ambience endloop 0x8f endfunction .macro do_gun_msg object text beginloop 0x03 if_chr_activated_object CHR_F3, \object, /*goto*/ 0x2f reloop 0x03 label 0x2f message CHR_JOANNA, \text restart_timer beginloop 0x08 if_timer_gt 120, /*goto*/ 0x06 endloop 0x08 label 0x06 endloop 0x03 .endm func1038_msg_pp7: do_gun_msg 0x1e, 0x1c74 // "PP7" endfunction func1039_msg_tt33: do_gun_msg 0x1f, 0x1c75 // "TT33" endfunction func103a_msg_skorpion: do_gun_msg 0x20, 0x1c76 // "Skorpion" endfunction func103b_msg_ak47: do_gun_msg 0x21, 0x1c77 // "AK47" endfunction func103c_msg_uzi9mm: do_gun_msg 0x22, 0x1c78 // "Uzi 9mm" endfunction func103d_msg_mp5k: do_gun_msg 0x23, 0x1c79 // "MP5K" endfunction func103e_msg_m16: do_gun_msg 0x24, 0x1c7a // "M-16" endfunction func103f_msg_fnp90: do_gun_msg 0x25, 0x1c7b // "FNP90" endfunction func1000_jo_typing: set_chr_flag_bank3 CHR_VELVET, CHRFLAG3_HIDDEN set_chr_flag_bank3 CHR_COUNTEROP, CHRFLAG3_HIDDEN camera_movement 0x0484 cmd0175 60 if_controller_button_pressed /*goto*/ 0x7b set_music_track MUSIC_CI_INTRO unset_chr_flag_bank3 CHR_JOANNA, CHRFLAG3_HIDDEN set_chr_flag_bank3 CHR_JOANNA, CHRFLAG3_UNPLAYABLE set_chr_flag_bank2 CHR_JOANNA, CHRFLAG2_00020000 animation 0x0485, -1, -1, 0x0600, CHR_JOANNA, 4 restart_timer fade_to_color 0x000000ff, 0 fade_to_color 0x00000000, 110 beginloop 0x57 if_controller_button_pressed /*goto*/ 0x7b if_timer_gt 60, /*goto*/ 0x06 endloop 0x57 label 0x06 play_sound 0x8116, CHANNEL_5 beginloop 0x59 if_controller_button_pressed /*goto*/ 0x7b if_timer_gt 175, /*goto*/ 0x06 endloop 0x59 label 0x06 play_sound 0x8118, CHANNEL_6 beginloop 0x08 if_camera_animating /*goto*/ 0x2f goto_next 0x7b label 0x2f if_controller_button_pressed /*goto*/ 0x7b label 0x2f endloop 0x08 label 0x7b unset_chr_flag_bank3 CHR_JOANNA, CHRFLAG3_UNPLAYABLE set_chr_flag_bank2 CHR_JOANNA, CHRFLAG2_00020000 animation 0x0485, -2, -1, 0x0600, CHR_JOANNA, 2 unset_chr_flag_bank3 CHR_VELVET, CHRFLAG3_HIDDEN unset_chr_flag_bank3 CHR_COUNTEROP, CHRFLAG3_HIDDEN enter_firstperson passive_mode TRUE fade_to_color 0x00000000, 0 yield yield yield yield restart_default_music reset_ambience set_function CHR_SELF, GFUNC_IDLE endfunction func1040_lift_door_sounds: // Disable autoguns yield set_autoturret_type 0x8b, 0x02 set_autoturret_type 0x8c, 0x02 set_autoturret_type 0x8d, 0x02 restart_timer beginloop 0x57 if_timer_gt 120, /*goto*/ 0x2f endloop 0x57 label 0x2f set_object_flag_bank0 0x8b, OBJECTFLAG0_DEACTIVATED set_object_flag_bank0 0x8c, OBJECTFLAG0_DEACTIVATED set_object_flag_bank0 0x8d, OBJECTFLAG0_DEACTIVATED // Play sounds when lift doors activated beginloop 0x8f consider_coop_for_p1p2_chr CHR_SELF if_chr_activated_object CHR_P1P2, 0x80, /*goto*/ 0x2f if_chr_activated_object CHR_P1P2, 0x81, /*goto*/ 0x2f if_chr_activated_object CHR_P1P2, 0x82, /*goto*/ 0x2f if_chr_activated_object CHR_P1P2, 0x83, /*goto*/ 0x2f if_chr_activated_object CHR_P1P2, 0x84, /*goto*/ 0x2f if_chr_activated_object CHR_P1P2, 0x85, /*goto*/ 0x2f if_chr_activated_object CHR_P1P2, 0x86, /*goto*/ 0x2f if_chr_activated_object CHR_P1P2, 0x87, /*goto*/ 0x2f reloop 0x8f label 0x2f play_sound 0x81b0, -1 restart_timer beginloop 0x08 if_timer_gt 120, /*goto*/ 0x06 endloop 0x08 label 0x06 endloop 0x8f endfunction intro: spawn 0x00f5 outfit OUTFIT_DEFAULT endintro path00: pad 0x002f pad 0x002d endpath func1032_setup_lifts: activate_lift 1, 0x43 activate_lift 2, 0x44 set_lights_state 0x0007, 0x01, 0x32, 0x00, 0x00 set_lights_state 0x0008, 0x01, 0x32, 0x00, 0x00 set_lights_state 0x0009, 0x01, 0x32, 0x00, 0x00 set_lights_state 0x000a, 0x01, 0x19, 0x00, 0x00 set_function CHR_SELF, GFUNC_IDLE endfunction func1042_check_jo_in_training_room: beginloop 0x04 // Wait until player in training dprint "CHK1" if_stage_flag_eq STAGEFLAG_TRIGGER_UPLINK, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_ECMMINE, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_CAMSPY, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_NIGHTVISION, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_DOORDECODER, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_RTRACKER, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_IR, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_XRAY, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_DISGUISE, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_TRIGGER_CLOAK, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_IN_HOLO1, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_IN_HOLO2, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_IN_HOLO3, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_IN_HOLO4, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_IN_HOLO5, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_IN_HOLO6, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_IN_HOLO7, TRUE, /*goto*/ 0x2f reloop 0x04 // And has exited the training rooms // 0x0014 = lobby outside holo room // 0x001d = entry to device training room // 0x001a = entry to information room // 0x000b = entry to carrington's office label 0x2f if_chr_in_room CHR_JOANNA, 0x00, 0x0014, /*goto*/ 0x30 if_chr_in_room CHR_JOANNA, 0x00, 0x001d, /*goto*/ 0x2f if_chr_in_room CHR_JOANNA, 0x00, 0x001a, /*goto*/ 0x2f if_chr_in_room CHR_JOANNA, 0x00, 0x000b, /*goto*/ 0x2f reloop 0x04 label 0x30 set_stage_flag STAGEFLAG_TRIGGER_HOLO_FAILURE label 0x2f set_stage_flag STAGEFLAG_TRIGGER_DEVICE_FAILURE label 0x06 dprint "CHK2" yield yield yield yield label 0x57 dprint "CHK3" yield if_stage_flag_eq STAGEFLAG_CONSIDER_WARP, TRUE, /*goto*/ 0x2f goto_first 0x57 label 0x2f label 0x59 dprint "CHK4" yield if_stage_flag_eq STAGEFLAG_CONSIDER_WARP, FALSE, /*goto*/ 0x2f goto_first 0x59 label 0x2f dprint "CHK5" yield yield yield yield yield yield yield yield yield yield endloop 0x04 // Unreachable label 0x5b restart_timer label 0x5c dprint "CHK6" yield if_timer_gt 60, /*goto*/ 0x2f goto_first 0x5c label 0x2f goto_first 0x04 endfunction func1041_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 func1043_remove_hovercrate: yield beginloop 0x8f if_object_in_room OBJ_HOVERCRATE, 0x0016, /*goto*/ 0x08 if_object_in_room OBJ_HOVERCRATE, 0x0017, /*goto*/ 0x08 if_object_in_room OBJ_HOVERCRATE, 0x0018, /*goto*/ 0x08 if_object_in_room OBJ_HOVERCRATE, 0x0019, /*goto*/ 0x08 goto_first 0x8f label 0x08 if_stage_flag_eq STAGEFLAG_IN_HOLO1, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_IN_HOLO2, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_IN_HOLO3, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_IN_HOLO4, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_IN_HOLO5, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_IN_HOLO6, TRUE, /*goto*/ 0x2f if_stage_flag_eq STAGEFLAG_IN_HOLO7, TRUE, /*goto*/ 0x2f goto_first 0x8f label 0x2f move_object_to_pad OBJ_HOVERCRATE, 0x0141 endloop 0x8f endfunction functions: register_function func1000_jo_typing 0x1000 register_function func1001_set_jo_alliance 0x1001 register_function func1002_devicetraining_camspy 0x1002 register_function func1003_devicetraining_nightvision 0x1003 register_function func1004_devicetraining_doordecoder 0x1004 register_function func1005_devicetraining_xray 0x1005 register_function func1006_devicetraining_disguise 0x1006 register_function func1007_devicetrainign_ir 0x1007 register_function func1008_devicetraining_rtracker 0x1008 register_function func1009_devicetraining_cloak 0x1009 register_function func100a_devicetraining_ecmmine 0x100a register_function func100b_devicetraining_uplink 0x100b register_function func100c_cloak_detection 0x100c register_function func100e_training_unlockables 0x100e register_function func100f_doorproxy_unused1 0x100f register_function func1010_doorproxy 0x1010 register_function func1010_doorproxy_unused2 0x1011 register_function func1012_cloak_doorproxy 0x1012 register_function func1013_msg_hovercrate 0x1013 register_function func1014_msg_hoverbike 0x1014 register_function func1015_msg_doors 0x1015 register_function func1016_msg_elevators 0x1016 register_function func1017_msg_terminals 0x1017 register_function func1018_lightswitch 0x1018 register_function func1019_setup_carrington 0x1019 register_function func101a_move_jo_to_training_room 0x101a register_function func101b_ir_door 0x101b register_function func101c_holo1_main 0x101c register_function func101d_holo1_switch1 0x101d register_function func101e_holo1_switch2 0x101e register_function func101f_holo1_switch3 0x101f register_function func1020_holo1_monitor_switches 0x1020 register_function func1021_holo1_code1 0x1021 register_function func1021_holo1_code2 0x1021 register_function func1021_holo1_code3 0x1021 register_function func1021_holo1_code4 0x1021 register_function func1022_holo2_main 0x1022 register_function func1023_holo2_object1 0x1023 register_function func1024_holo2_object2 0x1024 register_function func1025_holo2_object3 0x1025 register_function func1026_holo2_object4 0x1026 register_function func1027_holo3_main 0x1027 register_function func1028_holo4_main 0x1028 register_function func1029_holo5_main 0x1029 register_function func102a_holo3_part1 0x102a register_function func102b_holo3_part2 0x102b register_function func102c_holo3_object1 0x102c register_function func102d_holo3_object2 0x102d register_function func102e_holo6_main 0x102e register_function func102f_holo1_part1 0x102f register_function func1030_holo7_main 0x1030 register_function func1031_holo7_part1 0x1031 register_function func1032_setup_lifts 0x1032 register_function func1033_holo4_part1 0x1033 register_function func1034_holo5_part1 0x1034 register_function func1035_manage_music 0x1035 register_function func041a_handle_holo_failure 0x1037 register_function func1038_msg_pp7 0x1038 register_function func1039_msg_tt33 0x1039 register_function func103a_msg_skorpion 0x103a register_function func103b_msg_ak47 0x103b register_function func103c_msg_uzi9mm 0x103c register_function func103d_msg_mp5k 0x103d register_function func103e_msg_m16 0x103e register_function func103f_msg_fnp90 0x103f register_function func1040_lift_door_sounds 0x1040 register_function func1041_setup_lighting 0x1041 register_function func1042_check_jo_in_training_room 0x1042 register_function func1043_remove_hovercrate 0x1043 register_function func041b_holo2_part1 0x041b register_function func041c_holo3_check_done 0x041c register_function func0430_holo1_check_done 0x0430 register_function func0401_move_to_deviceroom 0x0401 register_function func0402_move_to_holoroom 0x0402 register_function func041e_colleague 0x041e register_function func041d_init_collegue_when_sighted 0x041d register_function func041f_colleague1 0x041f register_function func0420_colleague2 0x0420 register_function func0421_colleague3 0x0421 register_function func0422_colleague4 0x0422 register_function func0423_colleague5 0x0423 register_function func0424_colleague6 0x0424 register_function func0425_colleague7 0x0425 register_function func0426_colleague8 0x0426 register_function func0427_colleague9 0x0427 register_function func0428_colleague10 0x0428 register_function func0429_grimshaw_disguise 0x0429 register_function func042a_carrington_cloak 0x042a register_function func042b_init_carrington 0x042b register_function func042c_carrington_tour 0x042c register_function func042f_holo2_part2 0x042f register_function func042d_unused 0x042d register_function func042e_devicegirl_reply_to_carrington 0x042e register_function func0403_holo4_guard1 0x0403 register_function func0404_holo4_guard2 0x0404 register_function func0405_holo4_guard3 0x0405 register_function func0406_holo5_init_guard1 0x0406 register_function func0407_holo5_guard1 0x0407 register_function func0408_holo5_init_guard2 0x0408 register_function func0409_holo5_guard2 0x0409 register_function func040a_holo5_init_guard3 0x040a register_function func040b_holo5_guard3 0x040b register_function func040c_holo6_init_guard1 0x040c register_function func040d_holo6_init_guard2 0x040d register_function func040e_holo6_init_guard3 0x040e register_function func040f_holo6_init_guard4 0x040f register_function func0410_holo7_init_guard4 0x0410 register_function func0411_holo7_init_guard5 0x0411 register_function func0412_holo7_init_guard1 0x0412 register_function func0413_holo7_init_guard2 0x0413 register_function func0414_holo7_init_guard3 0x0414 register_function func0415_holo_guard_unarmed_unalert 0x0415 register_function func0416_holo_guard_unarmed_alert 0x0416 register_function func0416_holo_guard_unarmed_alert2 0x0417 register_function func0418_holo_guard_armed_unalert 0x0418 register_function func0419_holo_guard_armed_alert 0x0419 register_function func041a_handle_holo_failure 0x041a register_function func1023_holo2_object1 0x0431 register_function func1024_holo2_object2 0x0432 register_function func1025_holo2_object3 0x0433 register_function func1026_holo2_object4 0x0434 register_function func102c_holo3_object1 0x0435 register_function func102d_holo3_object2 0x0436 register_function func101d_holo1_switch1 0x0437 register_function func101e_holo1_switch2 0x0438 register_function func101f_holo1_switch3 0x0439 register_function func1020_holo1_monitor_switches 0x043a endfunctions paths: register_path path00, 0, 1 endpaths .align 4