home *** CD-ROM | disk | FTP | other *** search
/ PC Gamer 6 / 1995-05_Disc_6.iso / bioforge / script / vars.def < prev    next >
Text File  |  1995-02-27  |  56KB  |  1,290 lines

  1. { Var
  2.  
  3.     _TimeTest       = 0     // Has the machine speed test been run?
  4.  
  5. // ***SKIP SHAPE DEFAULTS***
  6.     _BAR_FRAME      = 0
  7.  
  8.     // Set when a user hits a key to interrupt something.
  9.     _UserInterrupt = 0
  10.  
  11.     // TITLE sequence variables
  12.     _titl_frame     = 0
  13.     
  14.     // Cryogenics chamber variables
  15.     _no_more_pouring = 0            // kill variable for pour_loop
  16.     _IRI_FRAME      = 1
  17.     _IR2_FRAME      = 1
  18.     _IRS_FRAME      = 0
  19.     _IRZ_FRAME      = 1
  20.     _POU_FRAME      = 0
  21.     _frz_frame      = 0
  22.     _NZL_FRAME      = 1
  23.     _WARP_FRAME     = 1                             // Platform warp door
  24.     _Bx1_Space      = _POSITIVE
  25.     _ld1_SPACE      = _NEUTRAL      // Cryo_Room door that gets blasted off
  26.     _ld2_SPACE      = _NEUTRAL      // Cryo_Room door that gets blasted off
  27.     _ld3_SPACE      = _NEUTRAL      // Cryo_Room door that gets blasted off
  28.     _qpit1_SPACE    = _NEUTRAL      // The cryo hatch
  29.     _qpit2_SPACE    = _NEUTRAL      // The cryo hatch
  30.     _qpit3_SPACE    = _NEUTRAL      // The cryo hatch
  31.     _qpit4_SPACE    = _NEUTRAL      // The cryo hatch
  32.     _qpit5_SPACE    = _NEUTRAL      // The cryo hatch
  33.  
  34.     _lp8_space      = _NEUTRAL      // Phantom pillar in Tomb Room
  35.  
  36.     _qhole01_SPACE  = _POSITIVE     // Glass pane in final battle room
  37.     _qhole02_SPACE  = _POSITIVE     // Glass pane in final battle room
  38.     _qhole_trigger  = 0                             // Trigger the pane to fall
  39.     _pltdoor_SPACE  = _POSITIVE     // Door in final battle room
  40.     _gls1_frame     = 0             // Glass animation
  41.     _gls2_frame     = 0             // Glass animation
  42.     _btl3_frame     = 0             // Cam3 ani
  43.  
  44.     _cryo_warning   = _INVALID_PROCESS_ID                             // warning process
  45.     _ever_poured    = 0                // has cryo ever been turned on?
  46.  
  47.     // The cell-block area on CHAOS
  48.     _pn3_frame              = 0     // spark behind cell-block panel
  49.     _pn2_frame              = 0     // spark behind cell-block panel
  50.     _burn_frame             = 0     // burn marks around panel
  51.     _xplo_frame             = 0     // explosion art of cell-block panel
  52.     _DR6_FRAME              = 1     // Door from Guard room to hallway
  53.     _read_danes_log         = 0     // set to _TRUE once Dane's logbook has been read
  54.     _read_caynans_log       = 0     // set to _TRUE once Caynan's logbook has been read
  55.     _caynan_lost_arm        = 0     // set to _TRUE once Caynan has lost his arm
  56.     _ce3_modifyvar_handle   = 0     // this is the handle for a @ModifyVarEveryNth() in CE3_LOAD
  57.     _got_log_about_bars     = 0     // set to _TRUE once we've had the log entry about the force bars added to our log
  58.     _played_flute           = 0     // Counts when flute is played, used to trigger log entry
  59.  
  60.     // Unknown usage for these variables.
  61.     _DR5_FRAME              = 1
  62.     _DR7_FRAME              = 1
  63.     _WR7_FRAME              = 0     // skip shape for door depths
  64.     _DR1_FRAME              = 1
  65.     _DOO_FRAME              = 1
  66.     _DR3_FRAME              = 1
  67.     _DR2_FRAME              = 1
  68.     _DRK_Frame              = 1     // Skip shape for dark cell2
  69.     _mon_frame              = 0     // Tanks monster art and platform monitor
  70.     _mnt_frame              = 0     // The other monster skip shape
  71.  
  72.     // This is used to stop Lex from doing silly things while he
  73.     // endures a dramatic moment. Just set it to one, and then
  74.     // back to zero when things are normal again.  -KLD
  75.     _Drama                  = 0
  76.     _Suppress_Quakes        = 0  // set to 1 if we want to supress earthquakes, like when a monitor is about to be run
  77.  
  78.     _IntroProcess           = _INVALID_PROCESS_ID
  79.  
  80.     // Control level skipshape variables
  81.     _DR4_frame              = 1     // Door to control area
  82.     _elev_frame             = 0     // the elevator from the garage to the control level
  83.     _eleb_frame             = 0     // 
  84.     // Control Corridor Scene Variables
  85.     _Hard_Suit_Mach_Used    = 0     // HardSuit machine used?
  86.     _Suit_Machine_In_Use    = 0
  87.  
  88.     _OKtoUse                = 1     // COntrol Airlock door in use
  89.     // Operating Room variables
  90.  
  91.     _Mastaba_Set_Scene      = 0     // Mastaba set scene
  92.     _Operate_Done           = 0     // Operating room set scene is done
  93.     _mastaba_override       = 0             // allows PFD to fire despite other guns
  94.     _arm_frame              = 1             // Dane's arm movements
  95.     _hed_frame              = 0             // Dane's head movements
  96.     _ded_frame              = 0             // Dane is dead
  97.     _Dane_Alive             = 1     // 1 is Dane is alive; 0 if dead
  98.     _opra_frame             = 0     // runs the Dane flic animation
  99.     _Dane_Asks_Death        = _FALSE         // Set _TRUE after Dane has conversation
  100.     _Dane_interrupt         = _FALSE        // Prevents code being called over itself
  101.     _btt_frame              = 0             // Dane's death by battery frames
  102.     _baa_frame              = 0             // Dane's death by battery anim
  103.  
  104.     // Control Room Variables
  105.     _Use_Hardsuit_Machine   = 1     // Allow player to use hardsuit machine
  106.     _waiting_to_leave_elv   = 0     // for the machine shop auto-activation of the elevator
  107.     // Control Hangar Variables
  108.     _Battery_In_Bike        = 1             // Battery is in the "bike" (0=empty,1=alien battery,2=mondite battery)
  109.     _did_bike_journal       = 0     // Set to TRUE when LEX reads journal about bike
  110.     _did_ring_glyphs        = 0     // Set to TRUE when LEX reads hieroglyphs about gravity ring
  111.     _Can_frame              = 0     // Canopy opening
  112.     _Bat_frame                              = 0             // Bike battery panel animation; panel is open
  113.     _Bat0_frame                             = 0             // cycling animation of empty storage cell for battery in bike
  114.     _BatR_frame                             = 0             // a mondite battery is in storage cell of bike
  115.     _BatB_frame                             = 0             // cycling animation of alien battery in storage cell of bike
  116.     _Exp_Frame                              = 0             // Bike taking off
  117.     _Exp2_Frame                             = 0             // Bike taking off
  118.     _sip_space                              = _POSITIVE     // The bike itself (has to be set to false to get the player to sit in it)
  119.     _Seen_Mach_Shop                 = _FALSE        // set to TRUE once the player has seen the machine shop
  120.  
  121.     //=============================
  122.     // Tower Scene Variables
  123.     //=============================
  124.     _GN1_FRAME              = 1
  125.     _GN2_FRAME              = 1
  126.     _LND1_FRAME             = 0
  127.     _LND2_FRAME             = 0
  128.     _GUN_FRAME              = 1     // TOWER: the gun you aim at the dropship, LEDGE: the gun of the dropship firing at us
  129.     _Lase_Frame             = 0
  130.     _HIT_FRAME              = 0
  131.     _CRS_FRAME              = 0
  132.     _RISE_FRAME             = 0
  133.     _Missile_Coming         = 0
  134.  
  135.     _DR0_FRAME              = 1     // Tower elevator door pics
  136.  
  137.     _IncomingProcess        = -1    // The incoming ship manager
  138.     _Lander_Stage           = 0
  139.     _LexAtGun               = 0
  140.     _FirstLanderAlive       = 1
  141.     _SecondLanderAlive      = 1
  142.     _InCutScene             = 0
  143.     _Swiveling              = 0
  144.     _GunActive              = 0
  145.     _RolandOnKnees          = 0
  146.     _RolandBusy        = 0
  147.     _Roland_Alive           = 1     // Roland Start the game alive
  148.     _Roland_Log             = 0     // Roland alive log flag        
  149.     _LeftSide               = 1     // Roland is cowering on the leftside 
  150.                     // of the gun
  151.     _Yap                    = _INVALID_PROCESS_ID
  152.     _HeardMastabaSurSpeech  = 0     // Flag for Mastaba's elevator speech after
  153.                     //      you kill both ships
  154.     _Mastaba_Elev_Speech    = 0     // flag that checks if Mastaba is in his elevator speech
  155.     _Tower_Y                = 0
  156.  
  157.     _DOR_FRAME              = 1
  158.     _FRE_FRAME              = 0
  159.     _RTR_FRAME              = 0
  160.     _DSK_FRAME              = 30
  161.     _BR3_FRAME              = 0
  162.     _BR1_FRAME              = 1
  163.     _BR2_FRAME              = 1
  164.     _BR4_FRAME              = 1
  165.     _LV2_FRAME              = 1
  166.     _LV3_FRAME              = 1
  167.     _lv4_frame              = 1
  168.     _lv5_frame              = 1
  169.     _LD1_FRAME              = 1     // Freezer lid
  170.     _pn1_frame              = 1
  171.     _do1_frame              = 1
  172.     _ld3_frame              = 0
  173.     _shd_frame              = 0     // 34
  174.     _ld2_frame              = 1
  175.  
  176.     _dk1_frame              = 0
  177.     _dk3_frame              = 0
  178.     _dp1_frame              = 0
  179.     _dp2_frame              = 0
  180.     _gol_frame              = 1
  181.     _win_frame              = 1
  182.     _dr8_frame              = 1
  183.     _wall_frame             = 0
  184.     _sng1_frame             = 0
  185.     _sng2_frame             = 0
  186.     _TUB_frame              = 1
  187.     _mec_frame              = 1
  188.     _flr_frame              = 1
  189.     _grd_frame              = 1
  190.     _for_frame              = 1
  191.     _aft_frame              = 1
  192.     _lht_frame              = 2
  193.     _wat_frame              = 1
  194.     _tnkd_frame             = 0     // TankDeth water
  195.     _q5a_frame              = 0     // Bubbles
  196.     _q4b_frame              = 0     // Bubbles
  197.     _q9c_frame              = 0     // Bubbles
  198.     _dr9_frame              = 1     // Landpad elevator door (inside)
  199.     _dra_frame              = 1     // Landpad airlock from hall (inside)
  200.     _drb_frame              = 1     // Landpad airlock to outside (inside)
  201.     _door_frame             = 1     // Landpad airlock to outside (pad6)
  202.     _butn_frame             = 1     // Anim for Klaxon button
  203.     _drw__frame             = 1     // Anim for warp field in snake corridor
  204.  
  205.     // beach variables
  206.     _LastLoc                                = 0             // Var to determine whether Lex is in the Beach or the Landpad level
  207.     _bchr_frame             = 0     // Anim of the acid lake rippling
  208.     _bchz_frame             = 0
  209.     _xbm_frame              = 0     // For anim of explosion in tunnel near landpad
  210.     _btn1_frame             = 0     // Frame 0 = normal, frame 1 = blasted
  211.     _btn2_frame             = 0     // Frame 0 = normal, frame 1 = blasted
  212.     _msl_frame              = 1     // Shows the missile out of its tube.
  213.     _spl_frame              = 0     // The Splash that Fluffy causes
  214.     _mlt_frame                              = 1             // Blinking lite on missle
  215.     _bub_frame                              = 0             // Beach acid bubbles
  216.  
  217.     _Fluffy_Space           = _NEUTRAL // Extent box for dead fluffy
  218.     
  219.     // Blast Tunnel Variables
  220.     _BLN_FRAME              = 1     // Variable for blst tunnel animations
  221.     _fnt_frame                              = 0     // Suit machine front
  222.     _bak_frame                              = 0             // Suit machine back
  223.  
  224.     // Tube Room variables
  225.     _TubesOpen              = 0     // flags indicating open tubes
  226.     _TN1_frame              = 0     // tube activation frames....
  227.     _TN2_frame              = 0
  228.     _TN3_frame              = 0
  229.     _TN4_frame              = 0
  230.     _TN5_frame              = 0
  231.     _TN6_frame              = 0
  232.     _TN7_frame              = 0
  233.     _TN8_frame              = 0
  234.     _MN1_frame              = 0
  235.     _MN2_frame              = 0
  236.     _T1b_frame              = 0     // tube activation frames....
  237.     _T2b_frame              = 0     //  Part 2
  238.     _T3b_frame              = 0
  239.     _T4b_frame              = 0
  240.     _T5b_frame              = 0
  241.     _T6b_frame              = 0
  242.     _T7b_frame              = 0
  243.     _T8b_frame              = 0
  244.     _fmo_frame              = 1     // Skip shape to set the depth of
  245.                     // the closed tube control monitor
  246.                     // correctly
  247.  
  248.     _tube_mon_failure       = 0    // keeps track of failures
  249.  
  250.     // Tube room flickering lights
  251.     _LIT_FRAME                              = 0
  252.     _lik_frame                              = 0
  253.  
  254.     // Tubes variables
  255.     _GLO_FRAME                              = 0
  256.  
  257.     // Pillar base (5 sections) space
  258.     // set to NEUTRAL when Lex walk around to monitor opening during use
  259.     _MON01_SPACE            = _POSITIVE
  260.     _MON02_SPACE            = _POSITIVE
  261.     _MON03_SPACE            = _POSITIVE
  262.     _MON04_SPACE            = _POSITIVE
  263.     _MON05_SPACE            = _POSITIVE
  264.  
  265.     // Digsite variables
  266.     _keyglow                = 0             // Handle for keyglow process
  267.     _off_frame              = 0             // Anim of Tomb forcefield fading
  268.     _enrg_frame             = 1             // CloseUp anim of tomb forcefield
  269.     _key_frame              = 1             // CloseUp anim of tomb key w/out forcefield
  270.     _lid_space              = _NEUTRAL      // Ripped-off tomb door
  271.     _opening_tomb                   = 0                             // Is lex opening the tomb?
  272.     _crak_frame             = 0             // Anim of glow thru the tomb's cracks
  273.     _back_frame             = 1             // Tomb lid is shut
  274.     _open_frame             = 1             // Tomb lid is shut
  275.     _opn2_Frame             = 0             // tomb llid is half open
  276.     _glow_frame             = 0             // Tomb's force field is off
  277.     _gunm_frame             = 4
  278.     _mch1_frame             = 1
  279.     _mch2_frame             = 1
  280.     _rcks_frame             = 1     // Rocks busting out in Tomb Room
  281.     _escher_dead            = 0     // set to _TRUE(1) once Escher disappears (no death)
  282.     _know_escher            = _FALSE // Set when LEX knows who Escher is
  283.     _escher_healed          = 0     // set to _TRUE if Escher is healed
  284.     _escher_spoke_1         = 0     // set to _TRUE when Escher speaks to Lex
  285.     _escher_spoke_2         = 0     // set to _TRUE when she gives her last message
  286.     _esc_frame              = 1     // Eschers headless body (head is 3d)   Turn to 0 when gone
  287.     _escher_interrupt       = 0     // set to _TRUE when not supposed to interrupt
  288.     _escher_process         = 0     // set to handle of escher_talk
  289.     _stop_escher_process    = _FALSE  // set to _TRUE to end talk process cleanly
  290.     _escher_process_2       = 0     // set to handle of escher_whine
  291.     _escher_dont_whine      = _FALSE   // set to true when you want her to not interrupt
  292.     _escher_moaning         = 0     // process handle for Escher_moans
  293.                        
  294.     _sdam_frame                             = 0             // Damaged suit machine
  295.     _lmp_frame                              = 1             // lamp in dgs3   2nd frame is damaged one
  296.     _lmp2_frame                             = 1
  297.     _Hardsuit_Mach_Damaged  = 0
  298.     _hole_frame                     = 1             // blinkie at digsite tube
  299.     _blinkie_process                = 0             // is blinkie process being run?
  300.     _tube_frame                     = 0             // tube tunnel is off at start
  301.     _tub2_frame                     = 0             // other half of digtube (for sorting)
  302.  
  303.     // Dust that falls from Lex's starting cell
  304.     _Eq1_frame              = 0
  305.     _Eq2_frame              = 0
  306.     _Eq3_frame              = 0
  307.     _Eq4_frame              = 0
  308.     _big_quake_running              = 0             // used by Level1Tremors to know when to start the quake motion
  309.  
  310.     // The medical indicator on the wall of Lex's cell
  311.     _Med_Frame              = 0
  312.  
  313.     // the landing pad
  314.     _plr_frame              = 0     // the blinking lights in the foreground
  315.     _arow_frame             = 0     // the big arrows pointing to the spot to land
  316.     _fire_frame             = 0     // the flaming husk of airmecho
  317.     _hfr2_frame             = 0     // fire flickering on walls
  318.     _hfr3_frame             = 0     // the dark hallway with the elevator doors opening and closing
  319.     _hall_frame             = 0     // fire flickering on walls
  320.     _mech_frame             = 0     // mecho burning in hallway
  321.     _mecs_frame             = 0     // Small fire (depth related)
  322.     _arl2_frame             = 0     // mecho burning and hallway flickering from airlock
  323.     _elv3_frame             = 0     // the animation for the laser bolts ripping through the elevator door
  324.  
  325.     // the ledge
  326.     _blst_frame             = 0     // the exhaust of the ship preparing for takeoff
  327.     _ship_frame             = 0     // the ship (0 or 1)
  328.     //_gun_frame            = 0     // the gun of the ship firing at us - defined already for the tower scene
  329.     _lift_frame             = 0     // the ship takes off
  330.  
  331.     // Grav Ring
  332.     _rk0_frame              = 0
  333.     _rk1_frame              = 0
  334.     _rk2_frame              = 0
  335.     _rk3_frame              = 0
  336.     _rk4_frame              = 0
  337.     _rk5_frame              = 0
  338.     _no_more_asteroids    = _INVALID_PROCESS_ID
  339.     _stb_frame              = 0     //Wall strobes
  340.     _pz1_frame              = 15
  341.     _pz2_frame              = 1
  342.     _pz3_frame              = 13
  343.     _pz4_frame              = 15
  344.     _pz5_frame              = 1
  345.     _pz6_frame              = 11
  346.     _tg1_frame              = 0     // Triangle button for grav ring pz6
  347.     _tg2_frame              = 0     // Triangle button for grav ring pz5
  348.     _tg3_frame              = 0     // Triangle button for grav ring pz4
  349.     _tg4_frame              = 0     // Triangle button for grav ring pz3
  350.     _tg5_frame              = 0     // Triangle button for grav ring pz2
  351.     _tg6_frame              = 0     // Triangle button for grav ring pz1
  352.     _acid_frame             = 0     // Acid lake opening
  353.  
  354.     // Dropship Missles
  355.     _Dropship_Missles       = 14        // 01110 - #4 always unavailable
  356.                                         // Frame of the missile showing it
  357.                                         // out of the pod
  358.     _MIS_FRAME              = 0         // missle launch/fire
  359.     _BOM_FRAME              = 0         // missle Boom! Explosion
  360.     _DAM_FRAME              = 0         // missle damage
  361.     _OK_ToFire              = 1     // Is it OK to fire a missile?
  362.  
  363.  
  364.  
  365.     //-----------------------
  366.     //-----------------------
  367.     // Platform variables
  368.     //-----------------------
  369.     //-----------------------
  370.  
  371.     _plt0_frame             = 0     // Frame control for plt0 camera
  372.     _emn_frame              = 0     // Frame control for elite alien monitor
  373.     _lite_frame             = 0    //  Frame control for city sun anim
  374.     _bll_frame                  = 0    //  Frame control for floating ball
  375.     _shpa_frame                 = 0    //  Frame control for arriving ship
  376.     _shpb_frame                 = 46   //  Frame control for departing ship
  377.     _ship_animation_process = 0        //  Used to keep track of process
  378.  
  379.     _gave_alien_battery     = 0    // TRUE after alien gives battery
  380.     _notice_alien_drop      = 0    // TRUE if Lex kills alien before getting battery
  381.     _need_new_battery       = 0  // Set if player tries to charge bike with low battery
  382.  
  383. // ***SOLIDITY DEFAULTS***
  384.     _dr1_SPACE      = _NEGATIVE     // Chaos Cell #1 bars space
  385.     _dr2_SPACE      = _NEGATIVE     // Chaos Cell #2 bars space
  386.     _dr3_SPACE      = _NEGATIVE     // Chaos Cell #3 bars space
  387.     _dr4_SPACE      = _NEGATIVE     // Chaos Cell #4 bars space
  388.     _dr5_SPACE      = _POSITIVE     // Cell block to guard room
  389.     _dr6_SPACE      = _POSITIVE     // Guard room to hallway door
  390.     _dr7_SPACE      = _POSITIVE     // Front elevator door
  391.     _dr9_SPACE      = _POSITIVE     // Back elevator door
  392.     _dr11_SPACE     = _POSITIVE     // Door b/w airlock & hallway (control)
  393.     _dr12_SPACE     = _POSITIVE     // Door b/w airlock & reactor
  394.     _dr13_SPACE     = _POSITIVE     // operate room door (control)
  395.     _dr14_SPACE     = _POSITIVE     // Control Room doors (Control)
  396.     _dr18_SPACE     = _POSITIVE     // Airlock/Airhall door (Landpad)
  397.     _lexstuk_SPACE  = _NEUTRAL              // Space that HFR6 can't see, set to solid when fighting airmecho
  398.     _wk1_SPACE      = _NEUTRAL      // Reactor room light bridge
  399.     _paddr_SPACE    = _POSITIVE     // Landpad airlock to pad
  400.     _drog_SPACE     = _NEGATIVE     // area where drogg leaps from
  401.     _opn_SPACE      = _NEGATIVE     // area where drogg leaps thru?
  402.     _lndtnk1_SPACE  = _POSITIVE
  403.     _lnddr2_space   = _NEUTRAL     // the doors inside the crashed dropship leading to the missile monitor
  404.     _FS1_SPACE      = _NEUTRAL     // Tanks monster extents
  405.     //_wk2_space            = _POSITIVE             // Tank platform
  406.     //_wka_space            = _POSITIVE             // Tank walkway
  407.     _FS2_SPACE      = _NEUTRAL
  408.     _FS3_SPACE      = _NEUTRAL
  409.     _fl2_SPACE      = _POSITIVE     // control room elevator
  410.     _sft_SPACE      = _POSITIVE     // control room elevator
  411.     _mecho_space    = _NEUTRAL              // landing pad hallway, airmecho's burning husk
  412.     _Blt_Space  = _POSITIVE // Blast door full
  413.     _blt1_Space = _NEUTRAL  // First quarter of blown blast doors
  414.     _blt2_space = _NEUTRAL  // Second quarter of blown blast doors
  415.     _blt3_space = _NEUTRAL  // Third quarter of blown blast doors
  416.     _blt4_space = _NEUTRAL  // Forth quarter of blown blast doors
  417.     _blt5_space = _NEUTRAL  // FIfth part of blown blast doors
  418.     _cliff04_space  = _NEUTRAL              // Extent next to the ledge (above the acid lake)
  419.     _cliff05_space  = _NEUTRAL              // Extent next to the blast door tunnel exit (on the ledge)
  420.     _jetson1_space  = _POSITIVE     // Upper jetson tube door
  421.     _Jetson2_space  = _POSITIVE     // Lower Jetson Tube door
  422.  
  423.  
  424. // ***GAME STATE VARIABLES***
  425.  
  426.     // All Levels
  427.     _ReflectBattDrain_Hand  = 0     // Handle for the process "ReflectBattDrain"
  428.  
  429.     // Beach
  430.     _ZipTripping            = 0     // Is Lex zip-tripping?
  431.     _BlowLexAway                    = 0             // Handle for process that knocks Lex off of ledge after being blasted
  432.     _KnockLexDown_Handle    = 0     // Handle for process that knocks Lex down from the warhead blast
  433.  
  434.     _Tripped_Timer          = 0     // Has Lex tripped the warhead timer trigger box?
  435.     _Warhead_Status         = 0     // What are the conditions in which the warhead monitor is called
  436.     _WTdigit1               = 0     // 1st digit of warhead timer display
  437.     _WTdigit2               = 0     // 2nd digit of warhead timer display
  438.     _WTdigit3               = 0     // 3rd digit of warhead timer display
  439.     _WTdigit4               = 0     // 4th digit of warhead timer display
  440.  
  441.     _Warhead_Mon_Handle     = 0     // Handle for the realtime process "Warhead_Mon"
  442.     _Warhead_Timer_Handle   = 0     // Handle for realtime process "Warhead_Timer"
  443.     _Hundredths             = 0     // Handle for realtime process "Hundredths"
  444.     _Warhead_Timer          = 900   // The realtime timer for the warhead
  445.     _bomb_volume            = 100   // Controls the loudness of the "soft beep"
  446.  
  447.     _Static_Handle                  = 0             // Handle for a process that fills the
  448.                             // dropship monitor with white noise (static)
  449.     _KillFluffy_Handle      = 0     // Handle for process of same name
  450.     _Fluffy_SFX1            = 0     // Handle for process of same name
  451.     _Fluffy_SFX2            = 0     // Handle for process of same name
  452.     _Fluffy_SFX3            = 0     // Handle for process of same name
  453.     _Fluffy_Dead                    = 0             // Is Fluffy alive or dead?
  454.     _FluffyRisen                    = 0             // Has Fluffy risen out of the acid?
  455.     _FluffyLooksUp          = 0     // Handle for process of same name
  456.     _FluffyGoBack_Hand      = 0     // Handle for process "FluffyGoBack"
  457.     _MissileGoBoom                  = 0             // Handle for the MissileGoBoom process
  458.     _PlatformBurning                = 0             // Is the platform burning?
  459.     _Fluffy_Process                 = 0             // Process handle for Fluffy sfx
  460.  
  461.     _LexBchLoc                              = 0     // Used for the Beachbots AI
  462.     _BchBot1_Alive                  = 1             // Beach robot 1
  463.     _BchBot2_Alive                  = 1             // Beach robot 2
  464.     _BchBot3_Alive                  = 1             // Beach robot 3
  465.  
  466.     _Demo                           = 0
  467.  
  468.     // Cryo Room
  469.     _LEX_IS_CLIMBING        = 0
  470.     _CRYO_DOOR_GONE         = 0
  471.     _IRIS_OPN               = 0
  472.     _CRYO_POUR              = 0
  473.     _IRIS_MOVING            = 0
  474.     _QUIT_POUR              = 0
  475.     _LADDER                 = 1
  476.  
  477.     _lyd_frame              = 1
  478.     _DR2_STATE              = 0
  479.     _DR5_STATE              = 0
  480.     _DR4_STATE              = 0     // Door way to control room
  481.     _DR8_state              = 0
  482.     _DRA_state              = 0     // Landpad airlock
  483.     _DRB_state              = 0     // Landpad airlock  to pad
  484.  
  485.     _ZAP_INTERRUPT          = 0
  486.     _ZAP_COMBAT             = _FALSE // controls whether to resume combatmode
  487.     _ONEARM_LOADED          = 0     // 50
  488.     _MECH_LOADED            = 0
  489.     _RTR_SHUTDN             = 0
  490.     _RTR_STATE              = 1
  491.     _BRDG_ON                = 0
  492.     _RTR_OFF                = 0
  493.  
  494.     _LAST_TURN              = 0
  495.     _STOP_RTR_ANIM          = 0
  496.     _LT_LEV                 = 0
  497.     _RT_LEV                 = 0
  498.  
  499.     // Chaos cell-block variables
  500.     _Deny_State             = 0             // Used for the "DenyAccess" process in Chaosmon.scr
  501.     _LexRevived             = 0             // Has Lex revived from being drugged?
  502.     _BOT_BLOWN              = 0
  503.     _CEL1_OFF               = 0
  504.     _CEL2_OFF               = 0
  505.     _CEL3_OFF               = 0
  506.     _CEL4_OFF               = 0
  507.     _BARS1_ON               = 1
  508.     _BARS2_ON               = 1
  509.     _BARS3_ON               = 1
  510.     _BARS4_ON               = 0
  511.     _CellOneProcess         = _INVALID_PROCESS_ID
  512.     _CellThreeProcess       = _INVALID_PROCESS_ID
  513.     _CellFourProcess        = _INVALID_PROCESS_ID
  514.     _short_drip             = 0
  515.     _Use_Bot_Blown          = 0
  516.     _Medical_Speed          = 10
  517.  
  518.     _current_level          = 2
  519.     _cycle4                 = 0
  520.     _cls_arlk_tripped       = 0
  521.     _cls_airl_tripped       = 0
  522.     _entering               = 0
  523.     _leaving                = 0
  524.     _opn_arlk_tripped       = 0
  525.     _in_rtr_tripped         = 0
  526.     _arlk_out_tripped       = 0
  527.     _opn_airl_tripped       = 0
  528.     _in_pad_tripped         = 0
  529.     _airl_out_tripped       = 0
  530.     _ZegCounter             = 0
  531.     _CtrRmElv               = 1
  532.     _TEMP                   = 0
  533.     _TEMP1                  = 0
  534.     _TEMP2                  = 0
  535.     _TEMP3                  = 0
  536.     _TEMP4                  = 0
  537.     _TEMP5                  = 0
  538.     _landpad                = 0
  539.     _from_tanks             = 0
  540.     _beach                  = 0
  541.     _digsite                = 0
  542.     _tunroom                = 0
  543.     _Winds_of_Change        = 0     // flag for changing wind sfx in tower
  544.     _exit_monitor           = 0
  545.     _RexFallsNow            = 0
  546.     _BeenThere              = 0
  547.     _WaterPour              = 0     // 78        // cryo fluid
  548.     _FightSFX               = 0     // Fido/Scorp fight
  549.     _LightInterval          = 10
  550.     _Fido_and_Scorp_are_DEAD = 0
  551.     _Heard_tank_monster     = 0
  552.     _Goner_Tripped          = 0     // Flag for tank scene
  553.     _safe                   = 0     // It is safe to transport lex 'tween tanks
  554.     _cel_door_state         = 0     // cel<->guard door: 0=closed, 1=open
  555.     _celpan_state           = 2     // 1,2,3,4,5 (1 = reset,5=finished)
  556.     _celpan_start           = 0
  557.     _celpan_open            = 0
  558.     _celpan_flag            = 0
  559.     _celpan_loc             = 0
  560.     _celpan_cur_ptr         = 0
  561.     _celpan_seq_ptr         = 0
  562.     _celpan_entering        = 0
  563.     _celpan_newloc          = 0
  564.     _celpan_goal            = 0     // 88
  565.     _celpan_failures        = 0     // a running total of the number of
  566.                                     // times Lex has tried this puzzle
  567.  
  568.     // door variables
  569.     _elevator_door_in_op    = 0     // if 1, then door is currently being opened or closed
  570.     _Elevator_moving        = 0     // Is the elevator in motion?
  571.     _hand_door_in_op        = 0     // if 1, then door is currently being opened or closed
  572.     _operate_door_in_op     = 0
  573.     _control_door_in_op     = 0
  574.     _airlock_door_in_op     = 0
  575.     _airlock_door2_in_op    = 0
  576.     _MONITOR_CAMERA         = 0
  577.     _lex_standing           = 1
  578.     _bar_tick               = 0
  579.     _elev_inacc_level        = 0
  580.     
  581.     _message                = 0     // speech flag for Mastaba's "random" radio messages
  582.     _Mastaba_Message_One    = 0     // controls radio trigger box
  583.     _Mastaba_Message_Two    = 0     // controls radio trigger box
  584.     _Mastaba_Message_Three  = 0     // controls radio trigger box
  585.     _Mastaba_Message_Four   = 0     // controls radio trigger box
  586.     _Mastaba_Message_Five   = 0     // controls radio trigger box
  587.     _Mastaba_Message_Six    = 0     // controls radio trigger box
  588.  
  589.     _mastaba_Random         = 0     // process handle for _Random_Mastaba_speech
  590.     _mastaba_threatened     = _FALSE  // set when Mastaba threatens Escher on radio
  591.  
  592.     _elevator_vox_secure    = 0     // speech for weapon-discharge speech
  593.  
  594.     _BeenInTanks                    = 0             // Used for positioning HalMecho
  595.     _HalMecho_Speech_Num    = 0             // Used in switch statement of mecho speech
  596.     _CheckLexDeath_Hand             = 0             // Handle for "CheckLexDeath" process
  597.     _HalMecho_state         = 0     // the AI state of the hallway mecho
  598.     _HalMecho_speech        = 0     // the current speech of the hallway mecho
  599.     _HalMecho_Speeches      = 0     // Block of speeches; used a handle.
  600.     _HalMecho_Alive         = 1     // 1 = alive ; 0 = dead
  601.     _Retaliate              = 0     // Handle for HalMecho's "Retaliate" Process
  602.  
  603.     _brendan_var1           = 0     // stupid vars for Brendan to play with
  604.     _brendan_var2           = 0
  605.     _brendan_var3           = 0
  606.     _gosub                  = 0
  607.  
  608.     _Grav_Solved            = 0     // Flag for the grav ring puzzle
  609.     _Rock0                  = 0     // handle for rock process
  610.     _Rock1                  = 0     // handle for rock process
  611.     _Rock2                  = 0     // handle for rock process
  612.     _Rock3                  = 0     // handle for rock process
  613.     _Rock4                  = 0     // handle for rock process
  614.     _Rock5                  = 0     // handle for rock process
  615.  
  616.     _mch1_process           = 0     // handle for hardsuit process
  617.     _mch2_process           = 0     // handle for hardsuit process
  618.     _radio_crosstalk_process = 0    // handle for radio crosstalk process in GRD
  619.     _radio_crosstalk        = 0     // flag
  620.  
  621.     _tankwater_process      = 0     // handle for water anim process
  622.     _bub1_process           = 0     // handle for bubble1 anim process
  623.     _bub2_process           = 0     // handle for bubble2 anim process
  624.     _bub3_process           = 0     // handle for bubble3 anim process
  625.  
  626.     _lnd2_shipflyby         = 0     // handle for 1st ship in lnd2_frame
  627.  
  628.     // Landing Pad variables
  629.     _alien_city_seen        = 0     // Set to 1 when the alien city has been reactivated
  630.     _ship_has_left          = 0     // set to 1 when the dropship has left with Mastaba and Escher
  631.     _airmecho_dead          = 0     // set to _TRUE when killed
  632.     _Airmecho_Scene         = 0     // Is it running?
  633.  
  634.     _airlock_solved         = _FALSE        // TRUE when puzzle done
  635.     _airlock_flag           = 0         // Current puzzle state
  636.     _airlock_prev                   = 0                     // Previous button push
  637.  
  638.     // Zero-G room variables
  639.     _Sng_Space              = _NEUTRAL      // so we can float thru the big glowing thing in the middle of the room
  640.  
  641.     // Reactor Room variables
  642.     _Bridge_Moving          = 0     // Is bridge activating/Deactivating?
  643.     _Reactor_Safe           = 0     // Reactor safe variable 0=not 1= ok
  644.     _Conbot_Is_Ramming      = 0     // Is the ConBot ramming?
  645.     _Forklift_Dead          = 0     // Used to grey out the forklift control buttons once it's destroyed
  646.     _rt6_Frame              = 1     // Shut down scene frame counter
  647.     _Reactor_Detonate       = 0     // Reactor is to/has Detonate(ed)
  648.     _On_Bridge              = 0     // Is Lex going to the bridge?
  649.     _On_Stone               = 0     // Is Lex on Stone or Sand?
  650.  
  651.     // Reactor Monitor Variables
  652.     _Left_Pylon             = 0     // Variable for left pylon state
  653.     _Right_Pylon            = 0             // Variable for right pylon state
  654.     _Strobe_Tripped         = 0
  655.     _RDTDigit1                      = 10            // Reactor Detonation Timer Digit #1
  656.     _RDTDigit2                      = 10            // Reactor Detonation Timer Digit #2
  657.     _RDTDigit3                      = 10            // Reactor Detonation Timer Digit #3
  658.     _RDTDigit4                      = 10            // Reactor Detonation Timer Digit #4
  659.     _RDTHandle                      = 0                     // Reactor Detonation Timer handle
  660.     _RDTDigit1n2Handle      = 0                     // Reactor Detonation Timer handle (digit #1&2)
  661.     _RDTDigit3Handle        = 0                     // Reactor Detonation Timer handle (digit #3)
  662.     _RDTDigit4Handle        = 0                     // Reactor Detonation Timer handle (digit #4)
  663.     _Pylon_Kill             = 0     // Reactor monitor in use and  pylon
  664.                     // engaged animation going
  665.  
  666.     // COntrol Level Airlock variables
  667.     _Con_Decontam_ok        = 0     // control decontam variable
  668.     _Con_in_Cycle           = 0     // Control Airlock in Cycle
  669.     // has the walkytalky started receiving messages from Escher yet?  Set to TRUE once the guard in the machine shop drops it
  670.     _walky_talky_started    = _FALSE
  671.  
  672.     // Security Monitor variables ....
  673.     _access_id1             = 0     // access id digits
  674.     _access_id2             = 0
  675.     _access_id3             = 0
  676.     _access_id4             = 0
  677.     _access_id5             = 0
  678.  
  679.     _access_id1_to_match    = 0     // id digits to match
  680.     _access_id2_to_match    = 0
  681.     _access_id3_to_match    = 0
  682.     _access_id4_to_match    = 0
  683.     _access_id5_to_match    = 0
  684.  
  685.     _access_id_digit        = 0     // digit entered on keypad
  686.     _access_id_digit_frame  = 0
  687.  
  688.     _allow_access_id_entry  = 0     // allow access id entry
  689.  
  690.     _Klaxon_On_Process      = 0     // Process handle for guardroom klaxon
  691.     _Klaxon_Off_Process     = 0     // Process handle for guardroom klaxon
  692.     _Warp_Field             = 0     // Process handle for warp field in snake corridor
  693.     _IHearYou               = 0     // Flag for Tomb Room scene
  694.  
  695.     _mecho_on_fire          = 0     // Is mecho on fire sfx
  696.  
  697.     // Sound state vars
  698.     _RoomAmb                = 0     // current room handle for pimm
  699.     _FuckingKlaxon          = 1     // grd_ambient state = on
  700.  
  701.     _bleed_1                = 0     // handles for bleeders
  702.     _bleed_2                = 0
  703.     _bleed_3                = 0
  704.  
  705.     _sfx_1                  = 0     // handles for general sfx - to replace use
  706.     _sfx_2                  = 0     // of tempN handles
  707.     _sfx_3                  = 0
  708.     _sfx_4                  = 0
  709.     _sfx_5                  = 0
  710.  
  711.     _shrimp_ambient_1       = 0     // shrimp ambient handles
  712.     _shrimp_ambient_2       = 0
  713.     _shrimp_ambient_3       = 0
  714.     
  715.     _Alien_Ship_Amb         = 0     // Platform scene ship        
  716.     _Tmp_Ball_Amb           = 0     // Temple Ball ambient
  717.  
  718.     _acidsfx_1              = 0     // Handle for acid sfx
  719.     _acidsfx_2              = 0     // Handle for acid sfx
  720.     
  721.     _RoomVol                = 0     // handle for original room amb vol lvl
  722.     _BleedVol               = 0     // handle for vol lvl of adjoining room amb
  723.  
  724.     // LANDPAD VARIABLES
  725.     _FromPad                        = 0     // Tells which pad elevator
  726.                                     // lex cames from
  727.     _Pad_In_Cycle                   = 0     // Flag for airlock in cycle
  728.     _LTS_Frame                      = 0     // decontam lights
  729.     _decontam_ok                    = 0     // decontam available
  730.     _LandbotsAlive                                  = 1             // For ALL robots on the Landing Pad
  731.     _LdgBot1_Alive                  = 1     // For robot on the ledge in Landing Pad
  732.     _LdgBot2_Alive                  = 1     // For robot on the ledge in Landing Pad
  733.     _LdgBot3_Alive                  = 1     // For robot on the ledge in Landing Pad
  734.     _LanBot1_Alive                  = 1     // For robots on landing pad
  735.     _LanBot2_Alive                  = 1     // For robots on landing pad
  736.     _LanBot3_Alive                  = 1     // For robots on landing pad
  737.     _LanBot4_Alive                  = 1     // For robots on landing pad
  738.     _LandBots               = 0     // Controls Landing Pad robots' AI
  739.     _LdgBotAI               = 0     // Controls the ledge bots' AI
  740.     _ela_Frame              = 16    // jetson tube door shadow
  741.     _elb_frame              = 17    // Jetson tube door
  742.     _elc_frame              = 1     // Jetson tube dummy skip shape (depth reasons)
  743.     _down_frame             = 0     // jetson tube light pulse
  744.     _blip_frame             = 0     // jetson tube waring light
  745.     _get_frame              = 0     // jetson tube button
  746.     _pad_talking_done       = 0     // variable to end jetson transit
  747.  
  748.     // OPERATING ROOM GAME VARIABLES
  749.     _Do_OPR_Scene           = 1 // Should the first set scene occur now? 1=yes
  750.  
  751.     _Personality_Web        = 0 //Value determines who Lex is
  752.     _Ident                  = 0 // web computed flag
  753.  
  754.     //DEBUG
  755.  
  756.     // Camera Volumes
  757.     _ce11_volume            = 100
  758.     _ce12_volume            = 60
  759.     _ce21_volume            = 100
  760.     _ce22_volume            = 60
  761.     _ce31_volume            = 100
  762.     _ce32_volume            = 60
  763.     _ce33_volume            = 80
  764.     _ce41_volume            = 100
  765.     _ce42_volume            = 60
  766.     _blk1_volume            = 50
  767.     _blk2_volume            = 85
  768.     _blk3_volume            = 125
  769.     _blk4_volume            = 140
  770.     _blk5_volume            = 100
  771.     _grd1_volume            = 100
  772.     _grd2_volume            = 100
  773.     _grd3_volume            = 100
  774.     _grd4_volume            = 100
  775.     _grd5_volume            = 100
  776.     _hal1_volume            = 150
  777.     _hal2_volume            = 255
  778.     _hal3_volume            = 85
  779.     _hal4_volume            = 125
  780.     _hal5_volume            = 80
  781.     _hal6_volume            = 80
  782.     _cry1_volume            = 150
  783.     _cry2_volume            = 255
  784.     _cry3_volume            = 100
  785.     _cry4_volume            = 155
  786.     _tnk1_volume            = 65
  787.     _tnk2_volume            = 65
  788.     _tnk3_volume            = 65
  789.     _tnk4_volume            = 65
  790.     _tk21_volume            = 65
  791.     _tk22_volume            = 65
  792.     _tk23_volume            = 85        
  793.     _tnkd_volume            = 85
  794.     _twr1_volume            = 75
  795.     _twr2_volume            = 255
  796.     _twr3_volume            = 85
  797.     _twr4_volume            = 75
  798.     _twr5_volume            = 75
  799.     _twr6_volume            = 75
  800.     _twr7_volume            = 150
  801.     _ctr1_volume            = 125
  802.     _ctr2_volume            = 100
  803.     _ctr3_volume            = 85
  804.     _ctr4_volume            = 105
  805.     _ctr5_volume            = 80
  806.     _ctr6_volume            = 80
  807.     _ctr7_volume            = 80
  808.     _ctr8_volume            = 80
  809.     _opr_volume             = 60
  810.     _rtr_volume             = 100
  811.     _hlc1_volume            = 80
  812.     _hlc2_volume            = 150
  813.     _hlc3_volume            = 120
  814.     _hlc4_volume            = 150
  815.     _hlc5_volume            = 100
  816.     _air_volume             = 100
  817.     _sho1_volume            = 75
  818.     _sho2_volume            = 100
  819.     _sho3_volume            = 65
  820.     _sho4_volume            = 75
  821.     _sho5_volume            = 105
  822.     _lnd1_volume            = 175
  823.     _lnd2_volume            = 150
  824.     _lnd3_volume            = 125
  825.     _lnd4_volume            = 100
  826.     _lnd5_volume            = 100
  827.     _dgs1_volume            = 125
  828.     _dgs2_volume            = 75
  829.     _dgs3_volume            = 175
  830.     _alc1_volume            = 125
  831.     _alc2_volume            = 75
  832.     _alc3_volume            = 175
  833.     _tmb1_volume            = 125
  834.     _tmb2_volume            = 75
  835.     _tmb3_volume            = 175
  836.     _bch_volume             = 150
  837.     _btn1_volume            = 125  
  838.     _btn2_volume            = 100  
  839.     _btn3_volume            = 75  
  840.     _btn4_volume            = 50  
  841.     _btn5_volume            = 25  
  842.     _grv_volume             = 150
  843.     _tmp_volume             = 100
  844.     _plt_volume             = 75
  845.     _btl1_volume            = 125
  846.     _btl2_volume            = 150
  847.     _pad_volume             = 100
  848.     _arl_volume             = 150
  849.     _hfr_volume             = 150
  850.     _elt_volume             = 70
  851.     _elc_volume             = 70
  852.     _hlc_volume             = 70
  853.     _elv_volume             = 70
  854.     _tun_volume             = 100
  855.     // cryo monitor variable - KGC
  856.     _fluid_level            = 0
  857.     _cryo_chamber           = 0
  858.     _cryo_temp              = 0
  859.     _bpm                    = 0     // heart rate in Beats Per Minute
  860.     _fido_awake             = 0     // fido is awake flag
  861.     _flatline               = 0     // chamber is full flag
  862.  
  863.     // FIDO_WAKENS communication variables
  864.     _crym_warning           = 0     // cryo monitor in use flag
  865.     _heart_wait             = 0     // heart beat delay variable
  866.     _ctemp                  = 0     // chamber temperature variable
  867.     _clvl                   = 0     // for fluid level
  868.     _ctemp1                 = 0     // chamber 1 temperature variable
  869.     _clvl1                  = 0     // chamber 1 fluid level variable
  870.     _kgc_temp1              = 0     // temp variable
  871.     _kgc_temp2              = 0     // temp variable
  872.     _kgc_temp3              = 0     // temp variable
  873.  
  874.     // flatline variables
  875.     _notes                  = 0     // tells flatline and beatline
  876.                     // that control is in correct
  877.                     // crym screen
  878.     _flatframe              = 0     // flatline frame counter
  879.     _beatframe              = 0     // beatline frame counter
  880.     _bpmdelay               = 0     // beatline wait delay
  881.  
  882.     _p_flatline             = 0     // flatline process handle
  883.     _p_beatline             = 0     // beatline process handle
  884.  
  885.     // Music vars
  886.     _PlayedIt               = 0     // flag for ambient
  887.     _ControlMusic           = 0     // flag for music
  888.     _MilliVanilli           = 0     // flag for music
  889.     _DigsiteMusic           = 0     // flag for music
  890.     _ZeroGMusic             = 0     // flag for music
  891.     _TunRoomMusic           = 0     // flag for music
  892.     _CityAmbient            = 0     // handle for ambient
  893.     _ReactorMusic           = 0     // handle for music
  894.     _LanderMusic            = 0     // flag for music
  895.     _Going_Back_To_Tanks    = 0     // flag - got to cell 2, now you are 
  896.                     //      going back thru tanks
  897.  
  898.     _lev2_loop1             = 0
  899.     _lev3_loop1             = 0
  900.     _lev3_loop2             = 0
  901.  
  902.     _crack                  = 0
  903.     _drip1                  = 0     // handle for drip sfx in BLK
  904.     _drip2                  = 0     // handle for drip sfx in BLK
  905.  
  906.     // Prisoner_bio_monitor Variables
  907.     _clvl_attract           = 0     // declares if control is in text field
  908.  
  909.     // Maintenance Monitor variables
  910.     _Cell1RepairNeeded      = 1
  911.     _Cell2RepairNeeded      = 1
  912.     _Cell3RepairNeeded      = 1
  913.  
  914.     // Security/Palm Reader variables
  915.     _caynan_security_id_ok  = 0
  916.     _palm_failures                  = 0     // used by log entry system
  917.  
  918.     // use_bot & forklift activation state
  919.     //   0 == is not activated, in automatic mode
  920.     //   1 == is activated, in manual mode
  921.     //   2 == is in process of being activate
  922.     _use_bot_activated      = 0
  923.     _forklift_activated     = 0
  924.     _Forks_are_up           = 0     // 0 when conbot forks are down 1 when up 
  925.  
  926.     //  MON_NORMAL
  927.     _manb_state             = 2
  928.     
  929.     //  MON_SELECTED
  930.     _autb_state             = 4
  931.  
  932.     // lets us know when Lex has used the medicaid at least once -bes
  933.     _have_used_medicaid     = 0
  934.  
  935.     // PIM-related
  936.     _return_to_pim          = 0     // used by code - rerun PIM
  937.  
  938.     // Dignostics monitor
  939.     _pfd_state              = 2     // 0 = uncharged, 1 = charged, 2 = not activated yet
  940.     _bio_state              = 0
  941.     _pds_recharge           = 0
  942.     _charging_PFD           = 0
  943.  
  944. // *** ID VARIABLES ***
  945.  
  946.     // escher id variables
  947.     _escher_id1_to_match    = 0     // id digits to match
  948.     _escher_id2_to_match    = 0
  949.     _escher_id3_to_match    = 0
  950.     _escher_id4_to_match    = 0
  951.     _escher_id5_to_match    = 0
  952.     _bio_results_restricted = 1
  953.  
  954.     // reactor id variables
  955.     _reactor_id_to_match    = 0     // bit flags of what to match
  956.     _reactor_id_number      = 0     // the actual printable number
  957.  
  958.     _ok_to_pwr_down         = 0     // set to 1 when reactor id entered
  959.  
  960. // *** COMBAT/A.I. RELATED VARIABLES *** - LRG
  961.  
  962.     // LEX VARIABLES
  963.  
  964.     _LexIsDead              = 0     // Set to 1 by LEX_DEATH
  965.     _HardDmg                = 0     // Hard Suit Damage Flags
  966.  
  967.     // GENERAL PURPOSE VARIABLES
  968.  
  969.     _easy_wait              = 45    // used for difficulty level
  970.     _medium_wait            = 30    // used for difficulty level
  971.     _hard_wait              = 15    // used for difficulty level
  972.     _tonfa_handle           = 0     // used for the timer process handle
  973.     _wait_30_handle         = 0     // handle for Wait_30 realtime process
  974.     _tonfa_timer            = 20    // timer for the tonfa gun
  975.     _gun_timer              = 30    // 30 second timer; used when the tonfa can't be fired
  976.     _tonfa_used             = 0     // the number of times the tonfa gun has been fired
  977.     _TONFA_OK               = _TRUE // Set to false while gun it to hot
  978.     _delay_before_reload    = 2     // Default # sewconds to delay in Kill_Lex
  979.     _forcing_reload         = 0     // can we exit Options?
  980.  
  981.     _enemy_speech           = 0     // handle of enemy speech
  982.     _subtitle_hand          = 0     // handle of a subtitle process
  983.     _enemy_process          = 0     // generic enemy process handle
  984.     _lex_process            = 0     // generic lex process handle
  985.  
  986.     _subtitle_lex           = 0     // handle of lex's subtitle process
  987.     _lex_speech             = 0     // handle of lex's speech
  988.  
  989.     _SRE_Count              = 0     // Super Recoil Enemy Counter
  990.     _SRP_Count              = 0     // Super Recoil Player Counter
  991.  
  992.     _Abort_Face_The_Enemy   = 0             // Set to 1 to abort the process
  993.  
  994.     // AWAKEN SCENE / NURSEBOT VARIABLES
  995.  
  996.     _lex_drugged            = 0     // how many times has lex been drugged?
  997.     _nursebot_is_hit        = 0     // 0 = no,  1 = yes
  998.  
  999.     // CAYNAN VARIABLES
  1000.  
  1001.     _Caynan_Alive           = _TRUE // Is Caynan alive?
  1002.     _Caynan_State           = 0     // 0=space, 1=greet, 2=atk (or eat)
  1003.     _cay_greet              = 0     // controls Caynan's greeting routine - BAR
  1004.     _Caynan_Eating          = 0     // Is Caynan eating?
  1005.     _Lex_Was_Inside3                = 0             // Lex was just inside cell3
  1006.     _Lex_Has_Fork                   = 0     // Lex has picked up the fork
  1007.     _Stop_Eating                    = 0     // Forces caynan top stop eating
  1008.  
  1009.     // FIDO VARIABLES
  1010.  
  1011.     _Fido_Alive             = _TRUE // 0 = no,  1 = yes
  1012.     _Fido_Hit               = 0     // 0 = no,  1 = yes
  1013.     _KO_Count               = 0     // KO counter for Fido
  1014.     _Fido_In_Tank           = 0     // True when Fido falls to Tank Level
  1015.     _Fido_On_Iris           = 0     // True when Fido is on the iris
  1016.     _Fido_Running           = 0     // True if lex is in Fido_Run trigger
  1017.     _Fido_Max_KO            = 8     // The only was to use CONST in our engine
  1018.     _Fido_KOed              = 0     // # of times KOed
  1019.     _Fido_Avoid_Set         = 0     // Is hatch avoidance on?
  1020.  
  1021.     // CELL2 / GUARD VARIABLES
  1022.     _GRD1_Alive             = _TRUE     // Is guard1 alive?
  1023.     _GRD1_Awake             = _FALSE    // Has he been woken up yet?
  1024.  
  1025.     // TOWER VARIABLES
  1026.     _LexTowLoc              = 0             // Set by various tower triggers
  1027.     _TB1_Alive              = _TRUE         // Is towerbot1 alive?
  1028.     _TB2_Alive              = _TRUE         // Is towerbot2 alive?
  1029.     _TB3_Alive              = _TRUE         // Is towerbot3 alive?
  1030.     _TB4_Alive              = _TRUE         // Is towerbot4 alive?
  1031.     _TB5_Alive              = _TRUE         // Is towerbot5 alive?
  1032.     _TB6_Alive              = _TRUE         // Is towerbot6 alive?
  1033.  
  1034.     // CONTROL VARIABLES
  1035.     _LexConLoc              = 0         // Set by various control triggers
  1036.     _Lex_In_Elevator        = _FALSE    // Set By lex's presence in the control elevator
  1037.     _Mecho2_Alive           = _TRUE     // Is mecho2 alive?
  1038.     _Mecho2_Fired           = _FALSE    // TRUE if he has fired
  1039.  
  1040.     _ReactBot_Alive         = _TRUE     // Is the Reactor Robot alive?
  1041.     _ReactBot_Active        = _TRUE     // Is the Reactor Robot activated?
  1042.     _GrdCon_Alive           = _TRUE     // Is the control room guard alive?
  1043.     _GrdHang_Alive          = _TRUE     // Is the machine shop guard alive?
  1044.     _GrdHall_Alive          = _TRUE     // Is the hall guard alive?
  1045.     _GrdCon_Active          = _FALSE    // AI stasis hack around...
  1046.     _GrdHang_Active         = _FALSE    // AI stasis hack around...
  1047.     _GrdHang_State          = 0         //
  1048.     _GrdHall_Active         = _FALSE    // AI stasis hack around...
  1049.     _GrdHallHatesLex        = _FALSE    // Assumes lex in the hardsuit...
  1050.     _Marine1_Alive          = _FALSE    // Set True in OPR if dropship not shot...
  1051.     _Drogg1_Alive           = _TRUE
  1052.     _Drogg1_Active          = _FALSE    // AI stasis hack around...
  1053.     _Drogg1_Counter         = 0         // Attack counter used by the A.I...
  1054.     _Drogg1_Loc             = 0         // Drogg1 location
  1055.     _Drogg1_Bored           = _TRUE     // _TRUE = wait for Lex to cross bridge...
  1056.     _Drogg1_RanForIt        = _FALSE    // _TRUE = when Drogg decides to cross brdg
  1057.     _Drogg1_Max_KO          = 6         // The only was to use CONST in our engine
  1058.     _Drogg1_Part2           = _FALSE    // Crossed Bridge w/o being dropped?
  1059.     _pulling_lever          = _FALSE    // _TRUE = lex is pulling a lever
  1060.     _lever_process          = _FALSE    // process handle for lever pulling
  1061.  
  1062.     // BEACH VARIABLES
  1063.     _Tumolt_Alive           = _TRUE     // Small rodents dance merrily
  1064.     _Tumolt_Flag            = _FALSE        // Activation flag
  1065.     _Tumolt_Activated       = _FALSE        // Activated flag
  1066.  
  1067.     // DIGSITE VARIABLES
  1068.     _Drogg2_Alive           = _TRUE     // True until he runs to the TunRoom...
  1069.     _Drogg2_Active          = _FALSE
  1070.     _Drogg2_Jumped_Out      = _FALSE
  1071.     _Drogg2_Counter         = 0         // Attack counter used by the A.I...
  1072.     _Drogg2_Running         = _FALSE
  1073.  
  1074.     _Shrimp1_Alive          = _TRUE
  1075.     _Shrimp1_Active         = _FALSE
  1076.     _Shrimp2_Alive          = _TRUE
  1077.     _Shrimp2_Active         = _FALSE
  1078.     _Shrimp3_Alive          = _FALSE
  1079.     _Shrimp3_Active         = _FALSE
  1080.  
  1081.     // PLATFORM VARIABLES
  1082.     _Drogg3_Alive           = _TRUE     // True until he dies...
  1083.     _Drogg3_Activated       = _FALSE
  1084.     _LexPltLoc              = 0
  1085.  
  1086.     _Elite_Alive            = _TRUE     // True until he dies...
  1087.     _Mind_Meld_Active       = _FALSE    // True during telepathy
  1088.  
  1089.     // RETURN VARIABLES
  1090.  
  1091.     _Marine2_Alive                  = _TRUE
  1092.     _Marine2_Active                 = _FALSE
  1093.     _Marine2_State                  = 0
  1094.     _Marine2_Counter                = 0
  1095.  
  1096.     _Marine3A_Alive                 = _TRUE
  1097.     _Marine3A_Active                = _FALSE
  1098.     _Marine3A_State                 = 0
  1099.  
  1100.     _Marine3B_Alive                 = _TRUE
  1101.     _Marine3B_Active                = _FALSE
  1102.     _Marine3B_State                 = 0
  1103.  
  1104.     _Marine4_Alive                  = _TRUE
  1105.     _Marine4_Active                 = _FALSE
  1106.     _Marine4_State                  = -1
  1107.  
  1108.     _Marine5_Alive                  = _TRUE
  1109.     _Marine5_Active                 = _FALSE
  1110.     _Marine5_State                  = 0
  1111.     _Marine5_Counter                = 0
  1112.  
  1113. // *** END OF COMBAT/A.I. RELATED VARIABLES *** - LRG
  1114.  
  1115.  
  1116.     // TEMPLE VARIABLES
  1117.     // Temple ball for opening Temple
  1118.     _mrn_frame                               = 0                            // body of crushed marine
  1119.     _WAK_frame               = _FIRST_WAK_FRAME  // first WAK (ball raising) frame
  1120.     _TLR_Frame               = 0                 // Floor animations in temple
  1121.     _LightAnim               = 0                 // Variable for light bar animaations
  1122.     _TUBE_space              = _POSITIVE         // the statue in the temple
  1123.     _QTUBE_space             = _NEUTRAL          // the space below the temple
  1124.     _bal_frame               = 1                 // Frame of animation for hovering statue in temple
  1125.     _heard_templeA_speech    = _FALSE
  1126.     _heard_templeB_speech    = _FALSE
  1127.     _safe_to_peer_in         = _FALSE                        // set to _TRUE when its safe for the marine to peer in the hole
  1128.     _marine_peering_in       = _FALSE            // set to _TRUE when the marine is peering down the hole that the statue left in the ground
  1129.     _heard_templeC_speech    = _FALSE
  1130.     _grenade_handle          = 0                 // the handle of the process that waits for the grenade to intersect with the tube
  1131.     _grenade_handle_2        = 0                 // the handle of the process that counts down for the grenade
  1132.     _got_temple_mon_log      = _FALSE                        // set to _TRUE when we got the log about the monitor not having enough power
  1133.     _inside_temple_monitor   = _FALSE                        // set to _TRUE when the player is using the temple monitor
  1134.     _marines_handle          = 0                                     // handle for TempleMarinesPeerIn
  1135.     _heard_fireinhole_speech = 0                 // set to 1 once we've heard "Fire in the hole!" by the temple marine
  1136.     _was_just_peering_in     = _FALSE            // set to 1 once the marine has peered in the hole so his AI will skip the wait
  1137.     _mar_grenade_in_transit  = 0                 // HACK flag used for a problem with the marine throwing his grenade
  1138.     _doa_frame               = 1                 // frames of animation for the temple flic
  1139.     _marines_set_up          = 0                 // set to 1 once the marines are in place
  1140.  
  1141.     // CITY MONITOR VARIABLES
  1142.     _city_solved = 0;
  1143.     _Red_Flag        = 0;
  1144.     _Blue_Flag       = 0;
  1145.     _Yellow_Flag = 0;
  1146.  
  1147.     _CLocation   = 1;
  1148.     _City_Total      = 1;
  1149.  
  1150.     _CTM1 = 0       // WHOOPS! SCRIPT DOESN'T SUPPROT ARRAYS! BRUTE FORCE! -LRG
  1151.     _CTM2 = 0
  1152.     _CTM3 = 0
  1153.     _CTM4 = 0
  1154.     _CTM5 = 0
  1155.     _CTM6 = 0
  1156.     _CTM7 = 0
  1157.     _CTM8 = 0
  1158.     _CTM9 = 0
  1159.     _CTM10 = 0
  1160.     _CTM11 = 0
  1161.     _CTM12 = 0
  1162.     _CTM13 = 0
  1163.     _CTM14 = 0
  1164.     _CTM15 = 0
  1165.     _CTM16 = 0
  1166.     _CTM17 = 0
  1167.     _CTM18 = 0
  1168.     _CTM19 = 0
  1169.     _CTM20 = 0
  1170.  
  1171.     _CROT1 = 0      // WHOOPS! SCRIPT DOESN'T SUPPROT ARRAYS! BRUTE FORCE! -LRG
  1172.     _CROT2 = 0
  1173.     _CROT3 = 0
  1174.     _CROT4 = 0
  1175.     _CROT5 = 0
  1176.     _CROT6 = 0
  1177.     _CROT7 = 0
  1178.     _CROT8 = 0
  1179.     _CROT9 = 0
  1180.     _CROT10 = 0
  1181.     _CROT11 = 0
  1182.     _CROT12 = 0
  1183.     _CROT13 = 0
  1184.     _CROT14 = 0
  1185.     _CROT15 = 0
  1186.     _CROT16 = 0
  1187.     _CROT17 = 0
  1188.     _CROT18 = 0
  1189.     _CROT19 = 0
  1190.     _CROT20 = 0
  1191.  
  1192.     // TOMB MONITOR VARIABLES
  1193.  
  1194.     _tomb_solved = 0;
  1195.     _tomb_flag1  = 0;
  1196.     _tomb_flag2  = 0;
  1197.     _tomb_flag3  = 0;
  1198.     _tomb_flag4  = 0;
  1199.     _tomb_flag5  = 0;
  1200.     _tomb_flag6  = 0;
  1201.  
  1202.     _tomb_sol1   = 0;
  1203.     _tomb_sol2   = 0;
  1204.     _tomb_sol3   = 0;
  1205.     _tomb_sol4   = 0;
  1206.     _tomb_sol5   = 0;
  1207.     _tomb_sol6   = 0;
  1208.  
  1209.     _tomb_L1  = 0;
  1210.     _tomb_L2  = 0;
  1211.     _tomb_L3  = 0;
  1212.     _tomb_L4  = 0;
  1213.     _tomb_L5  = 0;
  1214.     _tomb_L6  = 0;
  1215.     _tomb_L7  = 0;
  1216.     _tomb_L8  = 0;
  1217.     _tomb_L9  = 0;
  1218.  
  1219.     _tomb_R1  = 0;
  1220.     _tomb_R2  = 0;
  1221.     _tomb_R3  = 0;
  1222.     _tomb_R4  = 0;
  1223.     _tomb_R5  = 0;
  1224.     _tomb_R6  = 0;
  1225.     _tomb_R7  = 0;
  1226.     _tomb_R8  = 0;
  1227.     _tomb_R9  = 0;
  1228.  
  1229.     _tomb_T1  = 0;
  1230.     _tomb_T2  = 0;
  1231.     _tomb_T3  = 0;
  1232.  
  1233.     // Credits - Speed Limit.
  1234.     _credits_frame_ticks    = 128           // 0.5 tick/vert pixel (1 tick = 256)
  1235.     _Credits_Shadowing              = _Credits_DR_Shadow    // shadowing credits text
  1236.  
  1237.     // This is used if we've gone into the journal.  We use this flag to know
  1238.     //    whether to add a log entry or not. -bes
  1239.     // split up PIMM and had to move this out since Main & Journal of PIMM use it - jar
  1240.     _journal_read                   = 0
  1241.     _got_entries                            = _FALSE        // Set true when log entry added for first time - BAR
  1242.  
  1243.     // This variable is used to tell if player is inside of Pimm Diagnostics
  1244.     // 0 if Falsse 1 if True
  1245.  
  1246.     _In_Diag                 = 0
  1247.  
  1248.     // Used by your battery recharge system.
  1249.     _Bio                            = 0
  1250.  
  1251.     // Misc Monitor-related
  1252.     _REPEAT_DELAY           = 10
  1253.     _PTR_PRESS_TIME         = 14
  1254.     _PTR_HOLD_TIME          = 5
  1255.     _PTR_RELEASE_TIME       = 14
  1256.     _PTR_X_HOT              = 122
  1257.     _PTR_Y_HOT              = 13
  1258.     _PTR_X_DEFAULT                  = 280
  1259.     _PTR_Y_DEFAULT                  = 160
  1260.     // Monitor pointer variables
  1261.     _ptr_left_margin        = 0
  1262.     _ptr_right_margin       = 319
  1263.     // hand ptrs do not reach to top of screen
  1264.     _ptr_top_margin         = 14
  1265.     _ptr_bottom_margin      = 199
  1266.  
  1267.     // Credits Column alignment
  1268.     _CrCol1                                 = 60
  1269.     _CrCol2                                 = 60
  1270.     _CrCol3                                 = 180
  1271.     _CrCol4                                 = 180
  1272.  
  1273.     // Music ids for Options
  1274.     _OptionsMusic                   = _Options
  1275.  
  1276.     // Monitor-related variables which need to be saved
  1277.     _lex_last_hl                    = 0
  1278.     _lex_last_rd                    = 0
  1279.     _inventor_last_hl               = 0
  1280.     _last_game_no                   = 1
  1281.     _difficulty_level               = 1             // 0=Easy, 1=Medium, 2=Hard
  1282.     _gama_corr_percent              = 0
  1283.     _sound_volume                   = 50
  1284.     _music_volume                   = 50
  1285.  
  1286.     // Is script trying to exit a monitor?
  1287.     _IsExitMonRunning               = 0
  1288. }
  1289.  
  1290.