4953 lines
93 KiB
NASM
4953 lines
93 KiB
NASM
.MLIB "GXMACS.LIB"
|
||
.FILE "GXSCROL3.ASM"
|
||
.TITLE " <<< GENERATION X -- SCROLL ROUTINES ptIII >>>"
|
||
.WIDTH 132
|
||
.OPTION B,D,L,T
|
||
.MNOLIST
|
||
|
||
.include "gx.inc"
|
||
.INCLUDE "GXSTRING.H" ;String processor
|
||
.INCLUDE "IMGTBL.GLO"
|
||
.INCLUDE "UNIVTBL.GLO"
|
||
.include "gxscrl.h"
|
||
.INCLUDE "GXNONBOY.H"
|
||
|
||
|
||
MAKE_EASY .set 1
|
||
|
||
**************************************************************************
|
||
* *
|
||
* COPYRIGHT (C) 1992 MIDWAY MANUFACTURING COMPANY. *
|
||
* ALL RIGHTS RESERVED. *
|
||
* *
|
||
**************************************************************************
|
||
|
||
* SYMBOLS IN HERE
|
||
.DEF BOYS_ROOM, GIRLS_ROOM, PORTAL_BOYS_ROOM, PORTAL_GIRLS_ROOM
|
||
.DEF BAR_SECRET, LA_SCROLL, FleaBagRm, OOLALA_ROOM, SCROLL_FLITE
|
||
.DEF SND_SWEET_EMOTION
|
||
.DEF ATTRACT1, ATTRACT4
|
||
.DEF TOMS_SIDE
|
||
|
||
.if WARREN
|
||
.DEF WARREN_SCAFF,GET_DRESSED
|
||
.endif
|
||
|
||
.if BILL|GEORGE
|
||
.DEF LA_SCROLL_TEST
|
||
.endif
|
||
|
||
* SYMBOLS FROM GXHELI.ASM
|
||
; .REF S_POSITION_COPTER, S_COPTER_FLY_TO_POINT, S_TOGGLE_COPTER_COMMAND
|
||
.REF COPTER_ATTACK_1, COPTER_ATTACK_2, COPTER_ATTACK_3, COPTER_ATTACK_4, COPTER_ATTACK_5, COPTER_ATTACK_6, COPTER_ATTACK_FINAL
|
||
.REF COPTER_APPROACH_SND_PROC, COPTER_FLY_1, COPTER_FLY_2, COPTER_FLY_2_1
|
||
.REF COPTER_INTRO_2, DELETE_COPTER_FRAME, MAKE_COPTER_ONTOP_PROC
|
||
.REF SCROLL_HOVER_PROC, SND_COPTER_FULL,BTR_HANG_TIME,S_CAR_BEEPER
|
||
|
||
.if BILL
|
||
.REF MAKE_FRONT_COPTER_PROC
|
||
.endif
|
||
|
||
* SYMBOLS FROM GXWAVE.ASM
|
||
|
||
.REF WAVE1SUB1B,WAVE1SUB1C,WAVE1SUB1D
|
||
.REF WAVE1SUB1E,WAVE1SUB1F,WAVE1SUB1H
|
||
.REF WAVE1SUB1I,WAVE1SUB1J,WAVE1SUB1K,WAVE1SUB1L
|
||
.REF WAVE1SUB1M
|
||
.REF WAVE1END
|
||
.REF DSP_LA_COGBUST, DSP_LA_STREET1, DSP_LA_STREET2, DSP_LA_STREET3
|
||
.REF DSP_LA_CLUBTOP, DSP_LA_SCAFFOLD2, DSP_LA_SCAFFOLD3
|
||
.REF DSP_LA_DRESS1, DSP_LA_DRESS2
|
||
.REF ONSTAGE_DISPATCH
|
||
|
||
|
||
* SYMBOLS FROM GXLA1.ASM
|
||
.REF LA_OUTSIDE2_VECT_TABLE, LA_BATHROOM_VECT_TABLE
|
||
.REF LA_LOBBY_BAR_VECT_TABLE, LA_STAGE_VECT_TABLE
|
||
.REF LA_OUTSIDE1_VECT_TABLE, S_CHECK_TICKET_WINDOWS
|
||
.REF FLASH_GITAR_PROC
|
||
|
||
* SYMBOLS FROM GXLA2.ASM
|
||
.REF S_NONBOY_BATHROOM, LA_DRESS_VECT_TABLE, PILLAR_COUNT
|
||
.REF S_KERRI_BATHROOM
|
||
|
||
* SYMBOLS FROM GXUNIFX.ASM
|
||
.REF MAKE_CAT_PROC, CAT_DONE, GITTEN_KITTEN
|
||
.REF MAKE_INTRO_COPTER_PROC
|
||
.REF MAKE_ROPE_LADDER
|
||
.REF MAKE_CEILING_SMOKE,MAKE_CEILING_DEBRIS
|
||
.REF PROC_AIR_RAID_SIREN
|
||
.REF START_SIGN_FLASH
|
||
|
||
* SYMBOLS FROM GXLA3.ASM
|
||
.REF PUSH_BUTTON
|
||
|
||
* SYMBOLS FROM GXBGDATA.ASM
|
||
.REF STAR_BGND
|
||
|
||
* SYMBOLS FROM GXRAM.ASM
|
||
.REF ENEMY_HITALL, BUYIN_NOFADE, GUNS_OFF
|
||
|
||
* SYMBOLS FROM GXCOG.ASM
|
||
.REF COG_BUSTER, COG_BOUNCER, PROC_COG_BABBLE, PROC_COG_GARAGE_LEFT
|
||
.REF PROC_COG_GARAGE_RIGHT, PROC_COG_NO_STOP
|
||
|
||
* SYMBOLS FROM GXUNISEQ.ASM
|
||
.REF RUNOUT_TOTAL
|
||
|
||
***** from GXRAM.ASM
|
||
.REF BONUS_DIRECTION
|
||
|
||
***** from GXWARREN.ASM
|
||
.REF BTR_DEAD
|
||
|
||
* SYMBOLS FROM GXNONBOY.ASM
|
||
.REF NONBOY_SHOOT_CHANCE, BIGBOYS
|
||
|
||
* SYMBOLS FROM GXAERO.ASM
|
||
.REF MAKE_AEROSMITH
|
||
.REF MAKE_AEROSMITH_2
|
||
|
||
* SYMBOLS FROM GXNOBOY2.ASM
|
||
.REF MAKE_CHAIRBOY
|
||
|
||
.data
|
||
|
||
.BSS TOMS_SIDE,32 ;0=LEFT, -1=RIGHT
|
||
|
||
**************************************************************************
|
||
* *
|
||
* SOUND TABLES
|
||
* *
|
||
**************************************************************************
|
||
|
||
|
||
SND_FLY_CHASE
|
||
; .WORD 0F0FDH,1,08016H,0
|
||
; .WORD 0F0FDH,1,08003H,0
|
||
.WORD 0F0FDH,1,08009H,0
|
||
SND_LA_STREET
|
||
.WORD 0F0FDH,1,08007H,0
|
||
SND_AUDITORIUM
|
||
.WORD 0F0FDH,1,08009H,0
|
||
SND_EAT_THE_RICH
|
||
.WORD 0F0FDH,1,08012H,0 ;X-fade from bar
|
||
SND_EAT_THE_RICH2
|
||
.WORD 0F0FDH,1,0800CH,0 ;Start at beg. no X-fade
|
||
SND_EAT_THE_RICH3
|
||
.WORD 0F0FDH,1,083E8H,0 ;Start at scream
|
||
SND_SWEET_EMOTION
|
||
.WORD 0F0FDH,1,0801FH,0 ;Sweet emotion direct start
|
||
SND_SWEET_EMOTION_X
|
||
.WORD 0F0FDH,1,0801EH,0 ;X-fade between Heli and Aero
|
||
SND_WAKE_UP
|
||
.WORD 0F3F0H,260,820AH,0
|
||
SND_GUITAR_JAM
|
||
.WORD 0F0FDH,1,08006H,0
|
||
SND_RAVE
|
||
.WORD 0F0FDH,1,08001H,0 ;Rave CLUB X
|
||
SND_GURU
|
||
.WORD 0F0FDH,1,08008H,0 ;Guru-Dude tune
|
||
SND_BTR_FIGHT
|
||
.WORD 0F0FDH,1,0800BH,0 ;BTR Battle tune
|
||
SND_ZOOM_IN
|
||
.WORD 0F3FDh,107,0834dh,0 ;Zoom in sound
|
||
SND_BUST_UP
|
||
.WORD 0F2F0H,100,08304H,0 ;PRE-BUST EXPLOSION
|
||
SND_NO_TRESPASSING
|
||
.WORD 0F3F0H,87,08232H,0 ;CogHead say "NO TRESPASSING"
|
||
SND_CLUB_CLOSED
|
||
.WORD 0F3FDH,1,083E6H,0F342H,90,08231H,0 ;CogHead say "THE CLUB'S CLOSED"
|
||
|
||
**************************************************************************
|
||
* *
|
||
* MESSAGE MACROS *
|
||
* *
|
||
**************************************************************************
|
||
|
||
.text
|
||
|
||
**************************************************************************
|
||
* *
|
||
* Local Scroll funcs *
|
||
* *
|
||
**************************************************************************
|
||
**************************************************************************
|
||
* *
|
||
* S_SET_RUNOUT *
|
||
* *
|
||
* Set RUNOUT_TOTAL, the Nonboy variable, based on the *
|
||
* current number of players playing. *
|
||
* *
|
||
* *A11+,W = Base number to set *
|
||
* *A11+,W = Time between dispatches *
|
||
* *
|
||
**************************************************************************
|
||
S_SET_RUNOUT
|
||
MOVE *A11+,A0,W
|
||
MOVE *A11+,A2,W
|
||
MOVE A0,A1
|
||
SRA 1,A1 ;Add 50% for every player playing
|
||
SLL 8,A2
|
||
MOVE @CURPLYRS,A3,W
|
||
JRZ SSR_ADJUST ;BR = Nobody is playing
|
||
JRUC SSR_NXT
|
||
SSR_ADD
|
||
ADD A1,A0
|
||
SSR_NXT
|
||
DSJS A3,SSR_ADD
|
||
SSR_ADJUST
|
||
ADD A2,A0 ;Add in that dispatch time
|
||
MOVE A0,@RUNOUT_TOTAL
|
||
JAUC SCRL_DISPATCHER
|
||
|
||
**************************************************************************
|
||
* *
|
||
* S_SUB_WAIT_VAR *
|
||
* *
|
||
* Scroll func to subtract a value from WAIT_VAR. Pays attention *
|
||
* to M_QUOTA flags and such. *
|
||
* *
|
||
* *A11+,W = Value to subtract *
|
||
* *
|
||
**************************************************************************
|
||
S_SUB_WAIT_VAR
|
||
MOVE *A11+,A0,W
|
||
MOVE @WAIT_VAR,A1,W
|
||
MOVE A1,A2
|
||
SRL 12,A2
|
||
SLL 12,A2 ;Keep flags
|
||
SLL 20,A1
|
||
SRA 20,A1 ;Flags off of sleep
|
||
SUB A0,A1
|
||
JRGT SSWV_STORE ;BR = Value is OK
|
||
MOVK 1,A1 ;Stuff default bottom
|
||
SSWV_STORE
|
||
OR A2,A1 ;Restore the flags
|
||
MOVE A1,@WAIT_VAR,W
|
||
JAUC SCRL_DISPATCHER
|
||
|
||
**************************************************************************
|
||
* *
|
||
* S_WAIT_OR_JUMP_QUOTA *
|
||
* *
|
||
* Scroll func to wait a given amount of time, or jump *
|
||
* when ENEMY_QUOTA is set *
|
||
* *
|
||
* *A11+,W = Ticks to wait *
|
||
* *A11+,L = Scroll jump, should ENEMY_QUOTA be set *
|
||
* *
|
||
**************************************************************************
|
||
*
|
||
* Variable sleep entry
|
||
* *A11+,L = Address of variable sleep time
|
||
*
|
||
S_WAITR_OR_JUMP_QUOTA
|
||
MOVE *A11+,A8,L
|
||
MOVE *A8,A8,W
|
||
JRUC SWOJQ_GO
|
||
S_WAIT_OR_JUMP_QUOTA
|
||
MOVE *A11+,A8,W
|
||
SWOJQ_GO
|
||
MOVE *A11+,A9,L
|
||
SWOJQ_WAIT
|
||
SLEEP 1
|
||
MOVE @ENEMY_QUOTA,A14,W
|
||
JRNZ SWOJQ_JUMP
|
||
DSJS A8,SWOJQ_WAIT
|
||
JAUC SCRL_DISPATCHER
|
||
|
||
SWOJQ_JUMP
|
||
MOVE A9,A11
|
||
JAUC SCRL_DISPATCHER
|
||
|
||
**************************************************************************
|
||
* *
|
||
* S_JUMP_ON_ENEMIES_GT *
|
||
* *
|
||
* Scroll func to jump if a given enemy count is greater *
|
||
* than the given value. *
|
||
* *
|
||
* *A11+,W = Object I.D. of enemy *
|
||
* *A11+,W = Value to check against *
|
||
* *A11+,L = Scroll branch *
|
||
* *
|
||
**************************************************************************
|
||
S_JUMP_ON_ENEMIES_GT
|
||
MOVE *A11+,A0,W
|
||
MOVE *A11+,A1,W
|
||
MOVE *A11+,A2,L
|
||
CALLA GET_ENEMY_COUNT ;Get count for this enemy
|
||
CMP A1,A0
|
||
JALE SCRL_DISPATCHER ;BR = Condition not met
|
||
MOVE A2,A11
|
||
JAUC SCRL_DISPATCHER
|
||
|
||
**************************************************************************
|
||
* *
|
||
* S_JUMP_ON_SHOOTING_NONBOYS *
|
||
* *
|
||
* Scroll func to jump if there are Shooting Nonboys present. *
|
||
* *
|
||
* *A11+,L = Scroll jump *
|
||
* *
|
||
**************************************************************************
|
||
S_JUMP_ON_SHOOTING_NONBOYS
|
||
MOVE *A11+,A4,L
|
||
MOVI OID_NONBOY,A0
|
||
CALLA EXIST_OBJ_ALL
|
||
JAZ SCRL_DISPATCHER ;BR = No Nonboys
|
||
|
||
SJOSN_LOOP
|
||
MOVE *A8(AnimScr),A14,L
|
||
CMPI NONBOY_SHOOT_LUPE,A14
|
||
JREQ SJOSN_JUMP ;BR = We found our guy
|
||
|
||
CALLA RESUME_EXIST_OBJ_ALL
|
||
JRNZ SJOSN_LOOP
|
||
JAUC SCRL_DISPATCHER
|
||
SJOSN_JUMP
|
||
MOVE A4,A11 ;Execute the branch
|
||
JAUC SCRL_DISPATCHER
|
||
|
||
|
||
**************************************************************************
|
||
* *
|
||
* S_SNDPRI_WAIT *
|
||
* *
|
||
* Scroll func to sit tight until a certain sound priority *
|
||
* has cleared from a given track. *
|
||
* *
|
||
* *A11+,W = Track # *
|
||
* *A11+,W = Priority *
|
||
* *
|
||
**************************************************************************
|
||
S_SNDPRI_WAIT
|
||
MOVE *A11+,A0,W
|
||
MOVE *A11+,A1,W
|
||
SSPW_LOOP
|
||
CALLA CKSNDPRI
|
||
JANC SCRL_DISPATCHER
|
||
|
||
MOVE A0,A8
|
||
MOVE A1,A9
|
||
SLEEP 1
|
||
MOVE A8,A0
|
||
MOVE A9,A1
|
||
JRUC SSPW_LOOP
|
||
|
||
|
||
**************************************************************************
|
||
* *
|
||
* S_JUMP_IF_TRUE - JUMP TO AN ADDRESS IF VAR IS NON-ZERO *
|
||
* *
|
||
* .LONG ADDRESS TO JUMP TO *
|
||
* .LONG VAR TO CHECK *
|
||
* *
|
||
**************************************************************************
|
||
|
||
**************************************************************************
|
||
* *
|
||
* S_JUMP_RANDPER *
|
||
* *
|
||
* Scroll func to jump the scroll table a given % of the *
|
||
* time. *
|
||
* *
|
||
* A11+,W = % *
|
||
* A11+,L = Jump vector *
|
||
* *
|
||
**************************************************************************
|
||
S_JUMP_RANDPER
|
||
MOVE *A11+,A0,W
|
||
MOVE *A11+,A1,L
|
||
|
||
CALLA RANDPER
|
||
JANC SCRL_DISPATCHER
|
||
|
||
MOVE A1,A11
|
||
JAUC SCRL_DISPATCHER
|
||
|
||
**************************************************************************
|
||
* *
|
||
* SCROLL TABLES *
|
||
* *
|
||
**************************************************************************
|
||
|
||
**************************************************************************
|
||
* *
|
||
* WAVE #1 SCROLL TABLES *
|
||
* *
|
||
**************************************************************************
|
||
|
||
; .if BILL
|
||
;LA_SCROLL_TEST
|
||
; .LONG S_SET_LONG
|
||
; .LONG WXBUFFER
|
||
; .LONG 0400000H
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG WYBUFFER
|
||
; .LONG 0400000H
|
||
;
|
||
; .LONG S_SET_WORD
|
||
; .LONG UNIVERR
|
||
; .WORD 1
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG UEP_Z
|
||
; .LONG 070000H
|
||
;
|
||
; .LONG S_SET_WORD
|
||
; .LONG OBJENEMIES
|
||
; .WORD -1
|
||
;
|
||
; .LONG S_CLR_SCROLL_FLAG
|
||
; .LONG -1
|
||
;
|
||
; .LONG S_LOCKOUT_PORTALS
|
||
;
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 60*3
|
||
;
|
||
; .LONG S_CHANGE_ZFAR
|
||
; .long 014000H
|
||
;
|
||
; .LONG S_START_UID_DANIM
|
||
; .WORD 2 << 8 + (28-1)
|
||
;
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 60*7
|
||
;
|
||
; .LONG S_CHANGE_ZFAR
|
||
; .long 070000H
|
||
;
|
||
;; .LONG ENDLESS_LUPE+M_JUMP
|
||
; .LONG LA_SCROLL_TEST_GO+M_JUMP
|
||
;
|
||
; .endif
|
||
|
||
LA_SCROLL
|
||
.LONG S_CLR_SCROLL_FLAG
|
||
.LONG -1
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WXBUFFER
|
||
.LONG 0400000H
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WYBUFFER
|
||
.LONG 0400000H
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG UNIVERR
|
||
.WORD 1
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG WAVE_WAIT
|
||
.WORD 1
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG UEP_Z
|
||
.LONG 070000H
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG NONBOY_SHOOT_CHANCE
|
||
.WORD 256
|
||
|
||
.LONG S_LOCKOUT_PORTALS
|
||
|
||
.IF GEORGE
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 60
|
||
|
||
.LONG LA_SCROLL_TEST+M_JUMP
|
||
|
||
.ENDIF
|
||
|
||
.LONG S_CREATE_PROC ;MAKE DA COPTER
|
||
.word PID_COPTER
|
||
.LONG MAKE_INTRO_COPTER_PROC
|
||
|
||
.LONG S_WAIT_UNTIL_TRUE
|
||
.LONG SCROLL_FLAG ;HELICOPTER FLY IN YET?
|
||
|
||
.LONG S_CREATE_PROC
|
||
.word PID_IND
|
||
.LONG PROC_AIR_RAID_SIREN
|
||
|
||
.LONG S_X_ACCEL_LIMIT ;START MOVING LEFT
|
||
.word -4000h ; accel
|
||
.long -80000h ; target velocity
|
||
|
||
.LONG S_WAIT_FOR_COORD ;GO TO THE CLUB
|
||
.LONG XBASE
|
||
.LONG 03DC0000H
|
||
.WORD 0
|
||
|
||
.LONG S_GOTO_POINT
|
||
.WORD 30 ;DURATION
|
||
.WORD 03DCH,0212H ;X, Y, Z DESTINATION
|
||
.LONG -018000H
|
||
.WORD 0
|
||
|
||
.LONG S_SET_WORD ;KILL THOSE LEFT OVER 1-SHOT
|
||
.LONG UNIVERR ;TREES
|
||
.WORD 1
|
||
|
||
.LONG S_DISPATCH_HERE ;Set quota for roof top
|
||
.long DSP_LA_CLUBTOP+M_WAIT
|
||
.word 0
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 25
|
||
|
||
.LONG S_SOUND
|
||
.LONG SND_WAKE_UP
|
||
|
||
.LONG S_GOTO_POINTZ ;MOVE TOWARD BUILDING
|
||
.WORD 200 ;DURATION
|
||
.LONG -07500H ;Z DESTINATION
|
||
.WORD 0
|
||
|
||
.LONG S_SOUND
|
||
.LONG SND_GUITAR_JAM
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 60
|
||
|
||
.LONG S_SOUND0
|
||
.LONG SND_COPTER_FULL
|
||
|
||
.LONG S_CREATE_PROCR
|
||
.WORD PID_IND
|
||
.LONG 30,3,0,0,TRACK_FADE_IN_FULL_PROC
|
||
.WORD 0
|
||
|
||
.LONG S_WAIT_HERE ;Wait for quota on Nonboys
|
||
.WORD 1+M_QUOTA
|
||
|
||
.LONG S_DISPATCH_HERE ;Dummy dispatch to clear QUOTA
|
||
.LONG WAVE1END+M_WAIT
|
||
.WORD 0
|
||
|
||
LWL S_JUMP_RANDPER, 512, CLUB_TOP_RIGHT
|
||
|
||
.LONG S_SET_LONG, TOMS_SIDE, 0
|
||
|
||
.LONG S_SET_LONG, WXBUFFER, 0580000H
|
||
|
||
LWL S_X_ACCEL_LIMIT,-1000H,-10000H ;Cruise across top
|
||
|
||
LLLW S_WAIT_FOR_COORD,XBASE,2EF0000H,1 ;Scroll to left side
|
||
|
||
LWL S_X_DECEL_LIMIT,800H,10000H ;Bounce off end
|
||
|
||
LLLW S_WAIT_FOR_COORD,XBASE,3CC0000H,1 ;Back to center
|
||
|
||
LW S_DECEL_TO_STOP,4
|
||
|
||
.LONG CLUB_TOP_PULLBACK+M_JUMP
|
||
|
||
CLUB_TOP_RIGHT
|
||
|
||
.LONG S_SET_LONG, TOMS_SIDE, -1
|
||
|
||
.LONG S_SET_LONG, WXBUFFER, 0580000H
|
||
|
||
LWL S_X_ACCEL_LIMIT,1000H,10000H ;Cruise across top
|
||
|
||
LLLW S_WAIT_FOR_COORD,XBASE,4CF0000H,1 ;Scroll to right side
|
||
|
||
LWL S_X_DECEL_LIMIT,-800H,-10000H ;Bounce off end
|
||
|
||
LLLW S_WAIT_FOR_COORD,XBASE,3EC0000H,1 ;Back to center
|
||
|
||
LW S_DECEL_TO_STOP,4
|
||
|
||
CLUB_TOP_PULLBACK
|
||
.LONG S_SET_LONG, WXBUFFER, 0400000H
|
||
|
||
.LONG S_KILL_ALL_PROCS ;KILL ALL DAMAGE CYCLES
|
||
.WORD PID_DAMCC
|
||
|
||
.LONG S_CREATE_PROCR ;DAMAGE COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
.LONG 4,124,115,WOODBRN1x,CYCLE16 ;X BOARD UP
|
||
.WORD PID_DAMCC
|
||
.LONG 4,124,117,STUFFB,CYCLE16 ;NEON SIGN
|
||
.WORD 0
|
||
|
||
.LONG S_Z_ACCEL_BURST ;PULL BACK AND DOWN TO THE WALL
|
||
.word -20h
|
||
.word 15
|
||
|
||
.LONG S_XYZ_ACCEL_BURST
|
||
.word 0,-2000h,-14h
|
||
.word 15
|
||
|
||
.LONG S_Y_ACCEL_BURST
|
||
.word -2000h
|
||
.word 10
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WYBUFFER
|
||
.LONG 0578000H
|
||
|
||
.LONG S_DECEL_TO_POINT
|
||
.word 110 ;DURATION
|
||
.WORD 03DCH,0 ;X, Y
|
||
.LONG -18000h ;Z DESTINATION
|
||
.WORD 10
|
||
|
||
; .ENDIF
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WYBUFFER
|
||
.LONG 0400000H
|
||
|
||
.LONG S_CREATE_PROC ;MAKE THE CAT-WALK
|
||
.word PID_IND
|
||
.LONG MAKE_CAT_PROC
|
||
|
||
.LONG S_WAIT_UNTIL_TRUE ;IS THE CAT GONE?
|
||
.LONG CAT_DONE
|
||
|
||
.long S_SET_ZSCROLL
|
||
.word 0100H ;Pull back from wall
|
||
.word 30
|
||
|
||
.LONG S_SOUND
|
||
.LONG SND_NO_TRESPASSING ;Get bitched at
|
||
|
||
.long S_WAIT_FOR_Z
|
||
.long -13700H ;Stop at wall and ...
|
||
.word 0
|
||
|
||
.LONG S_GOTO_POINTZ
|
||
.WORD 15
|
||
.LONG -18000H ;Jump back
|
||
.WORD 0
|
||
|
||
.LONG S_DISPATCH_HERE ;RUN THROUGH WALL NONBOYS
|
||
.long DSP_LA_COGBUST+M_WAIT
|
||
.word 0
|
||
|
||
.LONG S_CALL, START_SIGN_FLASH
|
||
|
||
.LONG S_CREATE_PROC ;COG BASTARD
|
||
.word PID_COG
|
||
.long COG_BUSTER
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 30 ;WAIT FOR ENEMY_QUOTA TO CLEAR
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1+M_QUOTA ;WAIT FOR COG TO DIE
|
||
|
||
LWW S_SNDPRI_WAIT, 3, 0D0H ;Wait for this SndPri to go
|
||
|
||
; .LONG S_DISPATCH_HERE
|
||
; .long DSP_LA_STREET1+M_WAIT
|
||
; .word 0
|
||
|
||
.long S_SOUND
|
||
.long SND_ZOOM_IN
|
||
.long S_SOUND
|
||
.long SND_MUSICOFF
|
||
|
||
.LONG S_ACCEL_TO_POINT ;GO THROUGH HOLE IN WALL
|
||
.word 35
|
||
.word 3dch,0ah
|
||
.long -1274ah
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_DECEL_TO_POINT
|
||
.word 20
|
||
.word 3dch,0
|
||
.long -0f700h
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINT
|
||
.WORD 15 ; DURATION
|
||
.WORD 03DCH,0
|
||
.LONG -0F700h ;X, Y, Z DESTINATION
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_SOUND
|
||
.LONG SND_LA_STREET
|
||
|
||
.LONG GXCX3_LUPE+M_JUMP
|
||
|
||
CX_TODOOR:
|
||
.LONG S_GOTO_POINT0 ;GO IN FRONT OF THE DOORS?
|
||
.WORD 90 ; DURATION
|
||
.WORD 03DCH,0
|
||
.LONG -0F700h ;X, Y, Z DESTINATION
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG CX_INSIDE+M_JUMP
|
||
|
||
GXCX3_LUPE:
|
||
|
||
; .if 0
|
||
|
||
.LONG S_DISPATCH_HERE
|
||
.LONG DSP_LA_STREET2+M_WAIT ;Do a quota 'ting on NONBOYS
|
||
.WORD 0
|
||
|
||
LLW S_OR_WORD,OBJENEMIES,M_WINDOW|M_BW ;Start the window enemies
|
||
|
||
LW S_WAIT_HERE,2*60
|
||
|
||
LLW S_OR_WORD,OBJENEMIES,M_DOOR ;Add in the door enemies
|
||
|
||
LW S_WAIT_HERE, 3*60
|
||
|
||
.LONG S_CHANGE_ZFAR, 014000H
|
||
|
||
LLW S_SET_WORD, RUNOUT_TOTAL, 0 ;LOW BYTE IS NUMBER PER DOOR
|
||
;HIGH BYTE IS TIME BETWEEN
|
||
|
||
LW S_START_UID_DANIM, 2 << 8 + (28-1)
|
||
|
||
LW S_START_UID_DANIM, 2 << 8 + (30-1)
|
||
|
||
LWW S_SET_RUNOUT,1,30
|
||
|
||
LWL S_WAIT_OR_JUMP_QUOTA,3*60,RUNOUT_DONE
|
||
|
||
LWW S_SET_RUNOUT,1,30
|
||
|
||
LWL S_WAIT_OR_JUMP_QUOTA,3*60,RUNOUT_DONE
|
||
|
||
LWW S_SET_RUNOUT,3,30
|
||
|
||
LWL S_WAIT_OR_JUMP_QUOTA,4*60,RUNOUT_DONE
|
||
|
||
LLW S_SET_WORD, WAIT_VAR, 5*60
|
||
|
||
RUNOUT_LOOP
|
||
LWW S_SET_RUNOUT,5,30
|
||
|
||
RUNOUT_WAIT
|
||
LW S_WAIT_HERE,1
|
||
|
||
.LONG S_JUMP_IF_TRUE, RUNOUT_DONE, ENEMY_QUOTA
|
||
|
||
.LONG S_JUMP_IF_TRUE, RUNOUT_WAIT, RUNOUT_TOTAL
|
||
|
||
LW S_SUB_WAIT_VAR, 20
|
||
|
||
.LONG S_WAITR_OR_JUMP_QUOTA,WAIT_VAR,RUNOUT_DONE
|
||
|
||
.LONG RUNOUT_LOOP+M_JUMP
|
||
|
||
RUNOUT_DONE
|
||
; .LONG S_KILL_POWERUPS ;Whack those powers
|
||
|
||
LLW S_SET_WORD, OBJENEMIES, 0 ;Kill the enemy gens
|
||
|
||
LW S_WAIT_HERE, 60
|
||
|
||
.LONG S_CHANGE_ZFAR
|
||
.long 070000H
|
||
|
||
LWL S_CREATE_PROC,PID_IND,PROC_COG_BABBLE ;Cog head speech
|
||
|
||
.LONG S_DISPATCH_HERE
|
||
.LONG DSP_LA_STREET1+M_WAIT ;Circling CogHeads in street
|
||
.WORD 480
|
||
|
||
LLW S_OR_WORD,OBJENEMIES,M_WINDOW|M_BW ;Start the window enemies
|
||
|
||
LW S_WAIT_HERE, 30+M_QUOTA ;Wait for all enemies to go
|
||
|
||
.LONG S_KILL_POWERUPS ;Whack those powers
|
||
|
||
; LW S_WAIT_HERE, 60 ;Wait for all enemies to go
|
||
|
||
; .IF GEORGE
|
||
;LA_SCROLL_TEST
|
||
; .ENDIF
|
||
|
||
LW S_AUDIT, AUDLABTR
|
||
|
||
.LONG S_CREATE_PROC ;BTR
|
||
.word PID_IND
|
||
.long CREATE_TROOPTRANS
|
||
|
||
.LONG S_DISPATCH_HERE ;NO MORE ENEMIES FOR NOW
|
||
.LONG DSP_LA_STREET3+M_WAIT
|
||
.WORD 0
|
||
|
||
.long S_WAIT_HERE
|
||
.word 2*60
|
||
|
||
LLW S_SET_WORD,OBJENEMIES,M_WINDOW|M_BW ;Start the window enemies
|
||
|
||
; .LONG S_DISPATCH_HERE ;NO MORE ENEMIES FOR NOW
|
||
; .LONG WAVE1END+M_WAIT
|
||
; .WORD 0
|
||
|
||
.long S_WAIT_HERE
|
||
.word 4*60
|
||
|
||
LLW S_SET_WORD,OBJENEMIES,0 ;End the window enemies
|
||
|
||
.long S_WAIT_HERE
|
||
.word 10*60
|
||
|
||
LLW S_SET_WORD,OBJENEMIES,M_WINDOW|M_BW ;Start the window enemies
|
||
|
||
.LONG S_WAIT_UNTIL_TRUE ;IS THE BTR GONE YET?
|
||
.long BTR_GONE
|
||
|
||
LLW S_SET_WORD,OBJENEMIES,0 ;End the window enemies
|
||
|
||
.LONG S_CREATE_PROCR ;Start the left side Cogs
|
||
|
||
.WORD PID_COG
|
||
.LONG 0,[880H,780H],450,0,PROC_COG_NO_STOP
|
||
|
||
.WORD PID_COG
|
||
.LONG 0,[0A80H,980H],450,0,PROC_COG_NO_STOP
|
||
|
||
.WORD PID_COG
|
||
.LONG 0,[0C80H,0B80H],450,0,PROC_COG_NO_STOP
|
||
|
||
.WORD 0
|
||
|
||
.long S_WAIT_HERE
|
||
.word 80
|
||
|
||
.LONG S_CREATE_PROCR ;Start the left side Cogs
|
||
|
||
.WORD PID_COG
|
||
.LONG 0,[880H,780H],450,0,PROC_COG_NO_STOP
|
||
|
||
.WORD PID_COG
|
||
.LONG 0,[0A80H,980H],450,0,PROC_COG_NO_STOP
|
||
|
||
.WORD PID_COG
|
||
.LONG 0,[0C80H,0B80H],450,0,PROC_COG_NO_STOP
|
||
|
||
.WORD 0
|
||
|
||
|
||
.LONG S_SET_WORD ; Kill it (0) or
|
||
.long BTR_GONE ; Bring it back (neg)
|
||
.word -1
|
||
|
||
LW S_WAIT_HERE, 30+M_CLEANUP ;Wait for all enemies to go
|
||
|
||
; .long S_JUMP_IF_FALSE ;If kitty was killed, then
|
||
; .long CX_INSIDE ;Allow player to choose. If
|
||
; .long GITTEN_KITTEN ;not then just go inside.
|
||
|
||
; .else
|
||
;
|
||
; .LONG S_START_UID_DANIM
|
||
; .WORD 2 << 8 + (28-1)
|
||
;
|
||
; .LONG S_SET_WORD
|
||
; .LONG ENEMY_QUOTA
|
||
; .WORD 1
|
||
;
|
||
; LW S_WAIT_HERE, 30+M_CLEANUP ;Wait for all enemies to go
|
||
;
|
||
; .endif
|
||
|
||
; .if BILL
|
||
;LA_SCROLL_TEST_GO
|
||
; .endif
|
||
|
||
.LONG S_MAKE_DECISION ;FUNCTION
|
||
LA_Choice1
|
||
; LW CX_LEFTLP,1 ;-X, Count
|
||
LW CX_LEFTZIGZAG,1 ;-X, Count
|
||
LW CX_RTLP,1 ;+X, Count
|
||
LW 0,0 ;-Y, Count
|
||
LW 0,0 ;+Y, Count
|
||
LW 0,0 ;-Z, Count
|
||
LW CX_INSIDE,1 ;+Z, Count
|
||
|
||
CX_RTLP
|
||
.LONG S_SET_LONG
|
||
.LONG WXBUFFER
|
||
.LONG 0480000H
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WYBUFFER
|
||
.LONG 0680000H
|
||
|
||
.LONG S_ALLOW_PORTALS
|
||
|
||
.LONG S_CLEAR_CHOICE_COUNT
|
||
.LONG LA_Choice1 ;In this background
|
||
.WORD MDec_Left_Cnt ;No more going left
|
||
|
||
LLW S_SET_WORD, OBJENEMIES, -1 ;ACTIVATE ALL ENEMIES
|
||
|
||
.LONG S_DISPATCH_HERE ;NO MORE ENEMIES FOR NOW
|
||
.LONG WAVE1END+M_WAIT
|
||
.WORD 0
|
||
|
||
.LONG S_GOTO_POINT0
|
||
.WORD 60*3 ; DURATION
|
||
.WORD 051CH,0
|
||
.long -8000h
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINT
|
||
.WORD 5 ; DURATION
|
||
.WORD 051CH,0
|
||
.long -8000h
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINTXY
|
||
.WORD 90 ; DURATION
|
||
.WORD 04a6H,0
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINTXY
|
||
.WORD 60*6 ; DURATION
|
||
.WORD 04a6H,01d0H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINTXY
|
||
.WORD 60*6 ; DURATION
|
||
.WORD 02e5H,01d0H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINTXY
|
||
.WORD 60*6 ; DURATION
|
||
.WORD 02e5H,0
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_LOCKOUT_PORTALS
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WXBUFFER
|
||
.LONG 0400000H
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WYBUFFER
|
||
.LONG 0400000H
|
||
|
||
.LONG CX_TODOOR+M_JUMP
|
||
|
||
;CX_LEFTLP
|
||
; .LONG S_SET_LONG
|
||
; .LONG WYBUFFER
|
||
; .LONG 0640000H
|
||
;
|
||
; .LONG S_ALLOW_PORTALS
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD 02e5H,0
|
||
; .long -8000h
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT
|
||
; .WORD 5 ; DURATION
|
||
; .WORD 02e5H,0
|
||
; .long -8000h
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINTXY
|
||
; .WORD 60*6 ; DURATION
|
||
; .WORD 02e5H,01d0H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINTXY
|
||
; .WORD 60*6 ; DURATION
|
||
; .WORD 04a6H,01d0H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINTXY
|
||
; .WORD 60*6 ; DURATION
|
||
; .WORD 04a6H,0
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_LOCKOUT_PORTALS
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG WYBUFFER
|
||
; .LONG 0400000H
|
||
;
|
||
; .LONG CX_TODOOR+M_JUMP
|
||
CX_INSIDE
|
||
.long S_SOUND
|
||
.long SND_ZOOM_IN
|
||
.long S_SOUND
|
||
.long SND_MUSICOFF
|
||
|
||
.LONG S_SET_WORD ;INIT PILLAR COUNT INSIDE
|
||
.LONG PILLAR_COUNT
|
||
.WORD 0
|
||
|
||
.LONG S_Z_ACCEL_LIMIT ;MOVE TOWARD DOORS
|
||
.WORD 030H ;Z ACCEL
|
||
.LONG 03CDH ;Z MAX. VELOCITY
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG ZBASE
|
||
.LONG -07000H
|
||
.WORD 1
|
||
|
||
.LONG S_SET_VECTOR_TABLE
|
||
.LONG LA_LOBBY_BAR_VECT_TABLE
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WAVE_IPLANE
|
||
.LONG 0
|
||
|
||
.LONG S_SET_LONG ;SET ENEMY Z RANGE
|
||
.LONG UEP_Z
|
||
.LONG 09A00H
|
||
|
||
.LONG S_DISPATCH_HERE ;Bouncer Cog Head
|
||
.long DSP_LA_COGBUST+M_WAIT
|
||
.word 0
|
||
|
||
.LONG S_CREATE_PROCR
|
||
.WORD PID_COG
|
||
.LONG 0,0A2BBH,3D70000H,0,COG_BOUNCER ;Fire off the process
|
||
.WORD 0
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG OBJENEMIES
|
||
.WORD 0
|
||
|
||
.LONG S_AT_PORTAL_ENTRANCE
|
||
|
||
.LONG S_SET_PORTAL ; Search For Portal we are centered on
|
||
.WORD 15 ; and store it in a9
|
||
|
||
.LONG S_ENTER_PORTAL ; Set up and enter new universe
|
||
.long GXOBOY2+M_EP_DONT_STOP ; name of universe
|
||
.long 01700H,03D70000h,050000h ; Z, X, Y offsets
|
||
|
||
.LONG S_SOUND, SND_CLUB_CLOSED ;Get bitched at, AGAIN!
|
||
|
||
.LONG S_DECEL_TO_STOP ;STOP IN FRONT OF WINDOWS
|
||
.WORD 4
|
||
|
||
LWWWLW S_GOTO_POINT0,20,3D7H,5H,4000H,0 ;Pull back
|
||
|
||
LW S_AUDIT, AUDLACLUB
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG OBJENEMIES
|
||
.WORD -1
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 70 ;WAIT FOR ENEMY_QUOTA TO CLEAR
|
||
|
||
; .LONG S_SOUND, SND_RAVE_DRUMS ;Gimme a beat
|
||
|
||
.LONG S_SOUND, SND_RAVE ;Here we goooooo
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1+M_QUOTA ;Wait for Cog to die
|
||
|
||
; .LONG S_SOUND, SND_RAVE ;Here we goooooo
|
||
|
||
; .LONG S_GOTO_POINT
|
||
; .WORD 30
|
||
; .WORD 03D7H,05H
|
||
; .LONG 06AC4H
|
||
; .WORD 0
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG OBJENEMIES
|
||
.WORD -1
|
||
|
||
.LONG S_DISPATCH_HERE ;MAKE SOME RUNNING GUYS
|
||
.LONG WAVE1SUB1E+M_WAIT
|
||
.WORD 0
|
||
|
||
LWWWLW S_GOTO_POINT0,60,3D7H,5H,6AC4H,0 ;Go get your ticket
|
||
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 60*2
|
||
|
||
; .LONG S_DISPATCH_HERE ;MAKE SOME RUNNING GUYS
|
||
; .LONG WAVE1SUB1E+M_WAIT
|
||
; .WORD 0
|
||
|
||
.LONG S_KILL_ALL_PROCS
|
||
.WORD PID_DAMCC
|
||
|
||
.LONG S_CHECK_TICKET_WINDOWS ;WAIT FOR ALL WINDOWS DESTROYED
|
||
|
||
.LONG S_DISPATCH_HERE
|
||
.LONG WAVE1END+M_WAIT
|
||
.WORD 0
|
||
|
||
.LONG S_ALLOW_PORTALS
|
||
|
||
.LONG S_SET_WORD ;DEACTIVATE ALL ENEMIES
|
||
.LONG OBJENEMIES
|
||
.WORD 0
|
||
|
||
.LONG S_MAKE_DECISION ;FUNCTION
|
||
LW CX_HallLEFT,1 ;-X, Count
|
||
LW CX_HallRT,1 ;+X, Count
|
||
LW 0,0 ;-Y, Count
|
||
LW 0,0 ;+Y, Count
|
||
LW 0,0 ;-Z, Count
|
||
LW 0,0 ;+Z, Count
|
||
|
||
CX_HallLEFT
|
||
.LONG S_DISPATCH_HERE ;MAKE SOME RUNNING GUYS
|
||
.LONG WAVE1SUB1C+M_WAIT
|
||
.WORD 0
|
||
|
||
.LONG S_DISPATCH_SOON ;STOP 'EM IN A BIT
|
||
.WORD 90
|
||
.LONG WAVE1END+M_WAIT
|
||
|
||
.LONG S_GOTO_POINTXY ;GO TO LEFT BAR ENTRANCE
|
||
.WORD 120 ; DURATION
|
||
.WORD 031DH,0
|
||
.WORD 30 ; SLEEP UPON ARRIVAL
|
||
|
||
;LA_SCROLL_TEST
|
||
; .LONG S_SET_LONG ;SET ENEMY Z RANGE
|
||
; .LONG UNIV_ZOFF
|
||
; .LONG 0
|
||
;
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 60*3
|
||
|
||
;Inside club left
|
||
.IF GEORGE
|
||
LA_SCROLL_TEST
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WXBUFFER
|
||
.LONG 0400000H
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WYBUFFER
|
||
.LONG 0400000H
|
||
|
||
LW S_WAIT_HERE, 60
|
||
.ENDIF
|
||
|
||
.LONG S_LOCKOUT_PORTALS
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WAVE_UNIV
|
||
.LONG GXOBOY2
|
||
|
||
.LONG S_CREATE_PROCR ;START DAMAGE COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
.LONG 6,63,58,CAMTBLd1,CYCLE16 ;COCTAIL TABLE
|
||
.WORD PID_DAMCC
|
||
.LONG 4,124,117,STUFFB,CYCLE16 ;NEON SIGN
|
||
.WORD 0
|
||
|
||
.LONG S_SET_ZSCROLL ;START MOVING TOWARD DOORS
|
||
.word 0100H
|
||
.word 60
|
||
|
||
.LONG S_CHANGE_ZFAR
|
||
.long 02B19Fh
|
||
|
||
.LONG S_CLR_SCROLL_FLAG
|
||
.LONG -1
|
||
|
||
.LONG S_START_DANIM_DELTAZ ;OPEN DOORS
|
||
.long 8e00h
|
||
|
||
.LONG S_WAIT_FOR_ZABS ;WAIT TIL INSIDE DA BAR
|
||
.long 0FAC4H
|
||
.word 0
|
||
|
||
JAKE_ENTRY:
|
||
.long S_GOTO_POINTZ
|
||
.word 30
|
||
.long 0F7C4H
|
||
.word 0
|
||
|
||
.LONG S_SET_LONG ;SET ENEMY Z RANGE
|
||
.LONG UEP_Z
|
||
.LONG 9A00H
|
||
|
||
.LONG S_SET_WORD ;ACTIVATE ALL ENEMIES
|
||
.LONG OBJENEMIES
|
||
.WORD -1
|
||
|
||
;LA_SCROLL_TEST
|
||
; .LONG S_LOCKOUT_PORTALS
|
||
; .LONG S_CLR_SCROLL_FLAG
|
||
; .LONG -1
|
||
; .LONG S_CHANGE_ZFAR
|
||
; .long 02B19Fh
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 60*3
|
||
|
||
.long S_GOTO_POINTXY ;GO RIGHT, BEHIND THE WALL
|
||
.word 60*10 ; was 60*6
|
||
.word 0498H,0
|
||
.word 0
|
||
|
||
.LONG S_START_UID_DANIM ;RIGHT CURTAIN ENEMIES
|
||
.WORD 2 << 8 + (32-1)
|
||
|
||
.long S_GOTO_POINTZ ;GO FORWARD
|
||
.word 60
|
||
.long 015BC4H
|
||
.word 0
|
||
|
||
.LONG S_SET_LONG ;SET ENEMY Z RANGE
|
||
.LONG UEP_Z
|
||
.LONG 08A00H
|
||
|
||
.LONG S_ALLOW_PORTALS
|
||
|
||
; .long S_GOTO_POINTXY ;GO RIGHT, BEHIND THE WALL
|
||
; .word 60*6
|
||
; .word 0498H-040H,0
|
||
; .word 60
|
||
;
|
||
; .LONG S_ACCEL_TO_POINT
|
||
; .WORD 41
|
||
; .WORD 0498H,0
|
||
; .LONG 0129C4H
|
||
; .WORD 0
|
||
;
|
||
; .LONG S_ACCEL_TO_POINT
|
||
; .WORD 41
|
||
; .WORD 0498H-040H,0
|
||
; .LONG 015BC4H
|
||
; .WORD 0
|
||
;
|
||
; .LONG S_STOP_SCROLL
|
||
|
||
.long S_GOTO_POINTXY ;GO LEFT, 1ST SET OF TABLES
|
||
.word 60*6
|
||
.word 031DH,0
|
||
.word 0
|
||
|
||
.LONG S_START_UID_DANIM ;LEFT CURTAIN ENEMIES
|
||
.WORD 2 << 8 + (31-1)
|
||
|
||
.LONG S_SET_LONG ;SET ENEMY Z RANGE
|
||
.LONG UEP_Z
|
||
.LONG 0AE00H
|
||
|
||
.LONG S_CREATE_PROCR ;FLASH 1ST GITAR ON LEFT SIDE
|
||
.WORD PID_IND
|
||
.LONG 0,0,18,0
|
||
.LONG FLASH_GITAR_PROC
|
||
.WORD 0
|
||
|
||
.long S_GOTO_POINTZ ;GO FORWARD
|
||
.word 60*2
|
||
.long 0192C4H
|
||
.word 0
|
||
|
||
.LONG S_SET_LONG ;SET ENEMY Z RANGE
|
||
.LONG UEP_Z
|
||
.LONG 06B00H
|
||
|
||
.LONG S_JUMP_IF_BIT_CLR ;CONTINUE FORWARD IF FLAG CLEAR
|
||
.LONG GO_ON_L1
|
||
.LONG SCROLL_FLAG
|
||
.WORD 2
|
||
|
||
.long S_GOTO_POINTXY ;GO RIGHT, 2ND SET OF TABLES
|
||
.word 60*6
|
||
.word 0498H,0
|
||
.word 0
|
||
|
||
.LONG GO_ON_R1+M_JUMP
|
||
GO_ON_L1
|
||
.LONG S_CREATE_PROCR ;FLASH 2ND GITAR ON LEFT SIDE
|
||
.WORD PID_IND
|
||
.LONG 0,0,19,0
|
||
.LONG FLASH_GITAR_PROC
|
||
.WORD 0
|
||
|
||
.LONG S_SET_SCROLL_FLAG ;FLAG CURTAIN ANIMATION
|
||
.LONG 080000000H
|
||
|
||
.LONG S_START_UID_DANIM ;LEFT CURTAIN ENEMIES
|
||
.WORD 2 << 8 + (31-1)
|
||
|
||
.long S_GOTO_POINTZ ;GO FORWARD
|
||
.word 60*2
|
||
.long 01EEC4H
|
||
.word 0
|
||
|
||
.LONG S_SET_LONG ;SET ENEMY Z RANGE
|
||
.LONG UEP_Z
|
||
.LONG 012600H
|
||
|
||
.LONG S_JUMP_IF_BIT_CLR ;CONTINUE FORWARD IF FLAG CLEAR
|
||
.LONG GO_ON_L2
|
||
.LONG SCROLL_FLAG
|
||
.WORD 3
|
||
|
||
.long S_GOTO_POINTXY ;GO RIGHT, IN FRONT OF BAR
|
||
.word 60*6
|
||
.word 0498H,0
|
||
.word 0
|
||
|
||
.LONG GO_ON_R2+M_JUMP
|
||
GO_ON_L2
|
||
|
||
;LA_SCROLL_TEST
|
||
; .LONG S_CLR_SCROLL_FLAG
|
||
; .LONG -1
|
||
; .LONG S_CHANGE_ZFAR
|
||
; .long 02B19Fh
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 60*3
|
||
|
||
; .long S_GOTO_POINTZ ;GO TOWARD EXIT
|
||
; .word 60*2
|
||
; .long 02C5ADH
|
||
; .word 0
|
||
|
||
.LONG S_Z_ACCEL_LIMIT ;MOVE TOWARD CURTAINS
|
||
.WORD 07H ;Z ACCEL
|
||
.LONG 0350H ;Z MAX. VELOCITY
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 12
|
||
|
||
.LONG S_SOUND ;MAKE MUSIC
|
||
.LONG SND_EAT_THE_RICH
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG ZBASE
|
||
.LONG 02C5ADH
|
||
.WORD 1
|
||
|
||
.LONG STAGE_LEFT+M_JUMP
|
||
|
||
CX_HallRT
|
||
.LONG S_DISPATCH_HERE ;MAKE SOME RUNNING GUYS
|
||
.LONG WAVE1SUB1C+M_WAIT
|
||
.WORD 0
|
||
|
||
.LONG S_DISPATCH_SOON ;STOP 'EM IN A BIT
|
||
.WORD 90
|
||
.LONG WAVE1END+M_WAIT
|
||
|
||
.LONG S_GOTO_POINTXY ;GO TO RIGHT BAR ENTRANCE
|
||
.WORD 120 ; DURATION
|
||
.WORD 0498H,0
|
||
.WORD 30 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_LOCKOUT_PORTALS
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WAVE_UNIV
|
||
.LONG GXOBOY2
|
||
|
||
.LONG S_CREATE_PROCR ;START DAMAGE COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
.LONG 6,63,58,CAMTBLd1,CYCLE16 ;COCTAIL TABLE
|
||
.WORD PID_DAMCC
|
||
.LONG 4,124,117,STUFFB,CYCLE16 ;NEON SIGN
|
||
.WORD 0
|
||
|
||
.LONG S_SET_ZSCROLL ;START MOVING TOWARD DOORS
|
||
.word 0100H
|
||
.word 60
|
||
|
||
.LONG S_CHANGE_ZFAR
|
||
.long 02B19Fh
|
||
|
||
.LONG S_CLR_SCROLL_FLAG
|
||
.LONG -1
|
||
|
||
.LONG S_START_DANIM_DELTAZ ;OPEN DOORS
|
||
.long 8e00h
|
||
|
||
.LONG S_WAIT_FOR_ZABS ;WAIT TIL INSIDE DA BAR
|
||
.long 0FAC4H
|
||
.word 0
|
||
|
||
.long S_GOTO_POINTZ
|
||
.word 30
|
||
.long 0F7C4H
|
||
.word 0
|
||
|
||
.LONG S_SET_LONG ;SET ENEMY Z RANGE
|
||
.LONG UEP_Z
|
||
.LONG 09A00H
|
||
|
||
.LONG S_SET_WORD ;ACTIVATE ALL ENEMIES
|
||
.LONG OBJENEMIES
|
||
.WORD -1
|
||
|
||
.long S_GOTO_POINTXY ;GO LEFT, BEHIND THE WALL
|
||
.word 60*10 ; was 60*6
|
||
.word 031DH,0
|
||
.word 0
|
||
|
||
.LONG S_START_UID_DANIM ;LEFT CURTAIN ENEMIES
|
||
.WORD 2 << 8 + (31-1)
|
||
|
||
.long S_GOTO_POINTZ ;GO FORWARD
|
||
.word 60
|
||
.long 015BC4H
|
||
.word 0
|
||
|
||
.LONG S_SET_LONG ;SET ENEMY Z RANGE
|
||
.LONG UEP_Z
|
||
.LONG 08A00H
|
||
|
||
.LONG S_ALLOW_PORTALS
|
||
|
||
.long S_GOTO_POINTXY ;GO RIGHT, 1ST SET OF TABLES
|
||
.word 60*6
|
||
.word 0498H,0
|
||
.word 0
|
||
|
||
.LONG S_CREATE_PROCR ;FLASH 1ST GITAR ON RIGHT SIDE
|
||
.WORD PID_IND
|
||
.LONG 0,0,16,0
|
||
.LONG FLASH_GITAR_PROC
|
||
.WORD 0
|
||
|
||
.LONG S_START_UID_DANIM ;RIGHT CURTAIN ENEMIES
|
||
.WORD 2 << 8 + (32-1)
|
||
|
||
.long S_GOTO_POINTZ ;GO FORWARD
|
||
.word 60*2
|
||
.long 0192C4H
|
||
.word 0
|
||
|
||
.LONG S_SET_LONG ;SET ENEMY Z RANGE
|
||
.LONG UEP_Z
|
||
.LONG 06B00H
|
||
|
||
.LONG S_JUMP_IF_BIT_CLR ;CONTINUE FORWARD IF FLAG CLEAR
|
||
.LONG GO_ON_R1
|
||
.LONG SCROLL_FLAG
|
||
.WORD 0
|
||
|
||
.long S_GOTO_POINTXY ;GO LEFT, 2ND SET OF TABLES
|
||
.word 60*6
|
||
.word 031DH,0
|
||
.word 0
|
||
|
||
.LONG GO_ON_L1+M_JUMP
|
||
GO_ON_R1
|
||
.LONG S_CREATE_PROCR ;FLASH 2ND GITAR ON LEFT SIDE
|
||
.WORD PID_IND
|
||
.LONG 0,0,17,0
|
||
.LONG FLASH_GITAR_PROC
|
||
.WORD 0
|
||
|
||
.LONG S_SET_SCROLL_FLAG ;FLAG CURTAIN ANIMATION
|
||
.LONG 080000000H
|
||
|
||
.LONG S_START_UID_DANIM ;RIGHT CURTAIN ENEMIES
|
||
.WORD 2 << 8 + (32-1)
|
||
|
||
.long S_GOTO_POINTZ ;GO FORWARD
|
||
.word 60*2
|
||
.long 01EEC4H
|
||
.word 0
|
||
|
||
.LONG S_SET_LONG ;SET ENEMY Z RANGE
|
||
.LONG UEP_Z
|
||
.LONG 012600H
|
||
|
||
.LONG S_JUMP_IF_BIT_CLR ;CONTINUE FORWARD IF FLAG CLEAR
|
||
.LONG GO_ON_R2
|
||
.LONG SCROLL_FLAG
|
||
.WORD 1
|
||
|
||
; .LONG S_ALLOW_PORTALS
|
||
|
||
.long S_GOTO_POINTXY ;GO LEFT, IN FRONT OF BAR
|
||
.word 60*6
|
||
.word 031DH,0
|
||
.word 0
|
||
|
||
.LONG GO_ON_L2+M_JUMP
|
||
GO_ON_R2
|
||
; .long S_GOTO_POINTZ ;GO TOWARD EXIT
|
||
; .word 60*2
|
||
; .long 02C5ADH
|
||
; .word 0
|
||
|
||
; .long S_GOTO_POINT ;GUARANTEE
|
||
; .word 1
|
||
; .word 0498H,0
|
||
; .long 01EF45H
|
||
; .word 0
|
||
|
||
.LONG S_Z_ACCEL_LIMIT ;MOVE TOWARD CURTAINS
|
||
.WORD 07H ;Z ACCEL
|
||
.LONG 0350H ;Z MAX. VELOCITY
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 12
|
||
|
||
.LONG S_SOUND ;MAKE MUSIC
|
||
.LONG SND_EAT_THE_RICH
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG ZBASE
|
||
.LONG 02C5ADH
|
||
.WORD 1
|
||
|
||
.LONG STAGE_RIGHT+M_JUMP
|
||
|
||
STAGE_LEFT
|
||
.LONG S_SET_VECTOR_TABLE
|
||
.LONG LA_STAGE_VECT_TABLE
|
||
|
||
.LONG S_CREATE_PROC ;DON'T NEED THAT FAR SCAFFOLD
|
||
.WORD PID_IND
|
||
.LONG S_STAGE_ZFAR_PROC
|
||
|
||
.LONG S_CREATE_PROC
|
||
.word PID_IND
|
||
.LONG MAKE_AEROSMITH
|
||
|
||
.LONG S_AT_PORTAL_ENTRANCE
|
||
|
||
.LONG S_SET_PORTAL ; Search For Portal we are centered on
|
||
.WORD 15 ; and store it in a9
|
||
|
||
.LONG S_ENTER_PORTAL ; Set up and enter new universe
|
||
; .long GXSTAGE3+M_EP_DONT_STOP ; name of universe
|
||
.long GXSTG3BT+M_EP_DONT_STOP ; name of universe
|
||
.long -028A23H,-0ED9B00H,05B2800H ; Z, X, Y offsets
|
||
|
||
MUST_BE_IN_THE_FRONT_ROW
|
||
.LONG S_DISPATCH_SOON ;RUN UP AISLE NONBOYS
|
||
.WORD 60*4
|
||
.long WAVE1SUB1F+M_WAIT
|
||
|
||
.LONG S_SET_LONG ;SET ENEMY Z RANGE
|
||
.LONG UEP_Z
|
||
.LONG 06E00H
|
||
|
||
.LONG S_KILL_ALL_PROCS ;KILL ALL DAMAGE CYCLES
|
||
.WORD PID_DAMCC
|
||
|
||
.LONG S_CREATE_PROCR ;DAMAGE COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
.LONG 12,62,61,SPKR1p,CYCLE16 ;SPEAKER LIGHT
|
||
; .WORD PID_DAMCC
|
||
; .LONG 12,62,61,SPKR1pd,CYCLE16 ;DARKER SPEAKER LIGHT
|
||
.WORD PID_DAMCC
|
||
.LONG 12,45,44,NSTMON1p,CYCLE16 ;SPEAKER LIGHT
|
||
.WORD PID_DAMCC
|
||
.LONG 9,63,56,SPKDAM2p,CYCLE16 ;SPEAKER DAMAGE
|
||
.WORD PID_DAMCC
|
||
.LONG 12,62,56,CHRBRN1p,CYCLE16 ;SEATS DAMAGE
|
||
.WORD PID_DAMCC
|
||
.LONG 10,63,58,OBOXDAM1,CYCLE16 ;OPRA BOX DAMAGE
|
||
.WORD PID_DAMCC
|
||
.LONG 10,63,56,pdpal1,CYCLE16 ;PROSCENIUM DAMAGE
|
||
.WORD PID_DAMCC
|
||
.LONG 10,63,58,PILTOP2,CYCLE16 ;PILLAR TOP DAMAGE
|
||
.WORD PID_DAMCC
|
||
.LONG 10,63,58,PILBOT2,CYCLE16 ;PILLAR BOTTOM DAMAGE
|
||
.WORD 0
|
||
|
||
.LONG S_SOUND ;KILL SOUNDS
|
||
.LONG SND_CHAN1_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG S_SOUND
|
||
.LONG SND_CHAN2_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG S_SOUND
|
||
.LONG SND_CHAN3_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
; .LONG S_SOUND ;MAKE MUSIC
|
||
; .LONG SND_AUDITORIUM
|
||
|
||
.LONG S_CLR_SCROLL_FLAG
|
||
.LONG -1
|
||
|
||
.LONG S_Z_DECEL_LIMIT ;SLOW DOWN
|
||
.WORD -0D5H
|
||
.LONG 080H
|
||
|
||
STAGE_SCROLL
|
||
.LONG S_CLR_SCROLL_FLAG ;CLEAR SEATS BITS
|
||
.LONG 0FH
|
||
|
||
.LONG S_SET_ZSCROLL ;SET SCROLL TO STAGE
|
||
.WORD 080H
|
||
.WORD 0
|
||
|
||
.LONG S_SET_YSCROLL
|
||
; .LONG -01580H
|
||
.LONG -01780H
|
||
WAIT_FOR_FLOOR
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
|
||
.LONG S_AT_Z ;JUMP IF ON THE FLOOR
|
||
.LONG STAGE_FLOOR
|
||
.LONG 052B97H
|
||
.WORD 1
|
||
|
||
.LONG S_JUMP_IF_BIT_CLR ;DO WE GO LEFT?
|
||
.LONG CHECK_STAGE_CENTER
|
||
.LONG SCROLL_FLAG
|
||
.WORD 0
|
||
|
||
.LONG S_STOP_SCROLL
|
||
|
||
.LONG S_GOTO_XPOINT ;GO TO THE LEFT
|
||
.WORD 60*2
|
||
.LONG -0EC9B00H
|
||
.word 0
|
||
|
||
.LONG STAGE_SCROLL+M_JUMP
|
||
CHECK_STAGE_CENTER
|
||
.LONG S_JUMP_IF_BIT_CLR ;DO WE GO TO THE CENTER?
|
||
.LONG CHECK_STAGE_RIGHT
|
||
.LONG SCROLL_FLAG
|
||
.WORD 1
|
||
|
||
.LONG S_STOP_SCROLL
|
||
|
||
.LONG S_GOTO_XPOINT ;GO TO THE CENTER
|
||
.WORD 60*2
|
||
.LONG -0250B00H
|
||
.word 0
|
||
|
||
.LONG STAGE_SCROLL+M_JUMP
|
||
CHECK_STAGE_RIGHT
|
||
.LONG S_JUMP_IF_BIT_CLR ;DO WE GO RIGHT?
|
||
.LONG WAIT_FOR_FLOOR
|
||
.LONG SCROLL_FLAG
|
||
.WORD 2
|
||
|
||
.LONG S_STOP_SCROLL
|
||
|
||
.LONG S_GOTO_XPOINT ;GO TO THE RIGHT
|
||
.WORD 60*2
|
||
.LONG 0A37100H
|
||
.word 0
|
||
|
||
.LONG STAGE_SCROLL+M_JUMP
|
||
STAGE_FLOOR
|
||
.long S_GOTO_POINT0 ;GO TO CENTER FLOOR
|
||
.word 60*2
|
||
.word -022H,0
|
||
.long 054B97H
|
||
.word 0
|
||
|
||
.long S_GOTO_POINTZ ;BACK UP SOME!
|
||
.WORD 30
|
||
.long 05336CH
|
||
.word 0
|
||
|
||
.long S_GOTO_POINT
|
||
.word 10
|
||
.word -022H,0
|
||
.long 05336CH
|
||
.word 0
|
||
|
||
.LONG S_SET_ENEMIES ;TURN OFF GENERATORS
|
||
.WORD 0
|
||
|
||
.LONG S_DISPATCH_HERE
|
||
.LONG WAVE1SUB1H+M_WAIT
|
||
.WORD 0
|
||
|
||
LW S_WAIT_HERE, 100
|
||
|
||
LLW S_SET_WORD, BIGBOYS, 1000
|
||
|
||
LW S_WAIT_HERE, 260
|
||
|
||
; .long S_GOTO_POINT0 ;GO TO CENTER FLOOR
|
||
; .word 60*1
|
||
; .word -022H,5BH
|
||
; .long 06276CH
|
||
; .word 0
|
||
|
||
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 18*60
|
||
|
||
; .long S_GOTO_POINT
|
||
; .word 60*1
|
||
; .word -022H,0
|
||
; .long 05336CH
|
||
; .word 0
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 20
|
||
|
||
.LONG S_WAIT_HERE ;QUOTA YET?
|
||
; .WORD 20+M_QUOTA+M_CLEANUP
|
||
.WORD 100+M_QUOTA
|
||
|
||
.LONG S_SET_WORD
|
||
.long BTR_HANG_TIME ; don't stick around
|
||
.word 1h
|
||
|
||
.LONG S_SET_WORD ; make BTR come back
|
||
.long BTR_GONE
|
||
.word 0
|
||
|
||
.long S_WAIT_HERE
|
||
.word 200
|
||
|
||
.LONG S_JUMP_IF_TRUE, NO_BTR_COMEBACK, BTR_DEAD
|
||
|
||
.LONG S_WAIT_UNTIL_TRUE ;IS THE BTR GONE YET?
|
||
.long BTR_GONE
|
||
|
||
NO_BTR_COMEBACK
|
||
LLW S_SET_WORD, BTR_GONE, 0 ;Kill that fukker
|
||
|
||
.long S_GOTO_POINT0 ;Zoom up to see Aerosmith
|
||
.word 60*1
|
||
.word -022H,5BH
|
||
.long 062468H
|
||
.word 0
|
||
|
||
.long S_GOTO_POINT ;INSURANCE
|
||
.word 10
|
||
.word -022H,5BH
|
||
.long 062468H
|
||
.word 0
|
||
|
||
; .if BILL
|
||
;
|
||
;LA_SCROLL_TEST
|
||
;
|
||
; .LONG S_SOUND ;MAKE MUSIC
|
||
; .LONG SND_EAT_THE_RICH2
|
||
;
|
||
; .endif
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG GUNS_OFF
|
||
.WORD 1
|
||
|
||
.long S_CLR_SCROLL_FLAG,-1
|
||
|
||
LW S_AUDIT, AUDLAAERO
|
||
|
||
LW S_WAIT_HERE, 60
|
||
|
||
.LONG S_DISPATCH_HERE
|
||
.LONG ONSTAGE_DISPATCH+M_WAIT
|
||
.WORD 0
|
||
|
||
.long S_WAIT_UNTIL_TRUE,SCROLL_FLAG
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG GUNS_OFF
|
||
.WORD 0
|
||
|
||
; .IF GEORGE
|
||
;LA_SCROLL_TEST
|
||
|
||
; LW S_WAIT_HERE, 60
|
||
; .ENDIF
|
||
|
||
* Put Aerosmith abduction here
|
||
|
||
.LONG S_CREATE_PROC ;MAKE LADDER FALL
|
||
.word PID_IND
|
||
.LONG MAKE_ROPE_LADDER
|
||
|
||
; .LONG S_DISPATCH_HERE ;MAKE SOME MORE BADGUYS
|
||
; .LONG WAVE1SUB1H+M_WAIT
|
||
; .WORD 0
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 60
|
||
|
||
; .long S_GOTO_POINTZ ;GO TO LADDER
|
||
; .word 60
|
||
; .long 05AC1BH-0680H
|
||
; .long 06A01BH-0680H
|
||
; .word 0
|
||
|
||
; .long S_GOTO_POINT0
|
||
; .word 40
|
||
; .word -022H,5BH
|
||
;; .long 05AC1BH-0680H
|
||
; .long 064C64H
|
||
; .word 0
|
||
|
||
.LONG S_SET_LONG, WYBUFFER, 0700000H
|
||
|
||
LWL S_Y_ACCEL_LIMIT,01000H,18000H ;Go up ladder
|
||
|
||
LLLW S_WAIT_FOR_COORD,YBASE,1140000H,1 ;Wait for top
|
||
|
||
LW S_DECEL_TO_STOP,4
|
||
|
||
; .LONG S_SOUND, SND_GURU
|
||
.LONG S_SOUND, SND_EAT_THE_RICH3
|
||
|
||
; .long S_GOTO_POINTXY ;GO UP THE LADDER
|
||
; .word 60*3
|
||
; .word -022H,011CH
|
||
; .word 0
|
||
|
||
; .long S_GOTO_POINT
|
||
; .word 10
|
||
; .word -022H,011CH
|
||
;; .long 05AC1BH-0680H
|
||
; .long 064C64H
|
||
; .word 0
|
||
|
||
|
||
.if BILL
|
||
|
||
;LA_SCROLL_TEST
|
||
; .LONG S_CLR_SCROLL_FLAG
|
||
; .LONG -1
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 60*3
|
||
|
||
.endif
|
||
|
||
.LONG S_Z_ACCEL_LIMIT ;GO TOWARD 2ND CURTAIN
|
||
.WORD 010H
|
||
.LONG 0200H
|
||
|
||
.long S_WAIT_FOR_ZABS ;ARE WE THERE YET?
|
||
.LONG 062CADH
|
||
.WORD 1
|
||
|
||
.LONG ON_SCAFFOLD+M_JUMP ;CONTINUE ON SCAFFOLD
|
||
|
||
; .LONG S_SOUND
|
||
; .LONG SND_GURU
|
||
|
||
|
||
.if WARREN
|
||
WARREN_SCAFF:
|
||
.long S_GOTO_POINTZ
|
||
.word 60*2
|
||
.long 06DC8AH
|
||
.word 0
|
||
.endif
|
||
|
||
GET_DRESSED
|
||
.LONG S_CLR_SCROLL_FLAG
|
||
.LONG -1
|
||
|
||
; .LONG S_CREATE_PROCR
|
||
; .WORD PID_IND
|
||
; .LONG 60,0,[127,255],5,TRACK_FADE_PROC
|
||
; .WORD 0
|
||
|
||
.LONG S_SET_VECTOR_TABLE
|
||
.LONG LA_DRESS_VECT_TABLE
|
||
|
||
.LONG S_AT_PORTAL_ENTRANCE
|
||
|
||
.LONG S_SET_PORTAL ; Search For Portal we are centered on
|
||
.WORD 15 ; and store it in a9
|
||
|
||
.LONG S_ENTER_PORTAL ; Set up and enter new universe
|
||
.long GXDRESS3+M_EP_DONT_STOP ; name of universe
|
||
; .long GXDRESS3 ; name of universe
|
||
.long -3548H,0580000H,0 ; Z, X, Y offsets
|
||
|
||
; .LONG S_ACCEL_TO_POINT
|
||
; .WORD 60
|
||
; .WORD 058H,0
|
||
; .LONG 076F9DH
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_DECEL_TO_POINT
|
||
; .WORD 90
|
||
.WORD 45
|
||
; .LONG S_GOTO_POINT
|
||
; .WORD 30
|
||
.WORD 058H,0
|
||
.LONG 076F9DH-0F00H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINT
|
||
.WORD 10 ; DURATION
|
||
.WORD 058H,0
|
||
.LONG 076F9DH-0F00H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
;LA_SCROLL_TEST
|
||
|
||
.if BILL
|
||
|
||
; .LONG S_CLR_SCROLL_FLAG
|
||
; .LONG -1
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG WXBUFFER
|
||
; .LONG 0400000H
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG WYBUFFER
|
||
; .LONG 0400000H
|
||
;
|
||
; .LONG S_SOUND0 ;MAKE NO MUSIC
|
||
; .LONG SND_EAT_THE_RICH
|
||
;
|
||
; .LONG S_SET_TRACK_VOLUME
|
||
; .BYTE 0
|
||
;; .BYTE 127
|
||
; .BYTE 255
|
||
|
||
.endif
|
||
|
||
.LONG S_KILL_ALL_PROCS ;KILL ALL DAMAGE CYCLES
|
||
.WORD PID_DAMCC
|
||
|
||
.LONG S_CREATE_PROCR ;DAMAGE COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
.LONG 6,63,58,CAMTBLd1,CYCLE16 ;COCTAIL TABLE
|
||
.WORD PID_DAMCC
|
||
.LONG 5,62,56,SPKDAM2p,CYCLE16 ;SPEAKER
|
||
.WORD PID_DAMCC
|
||
.LONG 3,30,24,NGLAMP3p,CYCLE16 ;CEILING LAMP
|
||
.WORD PID_DAMCC
|
||
.LONG 2,7,1,SNOWp,CYCLE16 ;TV SNOW
|
||
.WORD 0
|
||
|
||
LW S_WAIT_HERE,2*60
|
||
|
||
.LONG S_DISPATCH_HERE
|
||
.LONG DSP_LA_DRESS1+M_WAIT
|
||
.WORD 0
|
||
|
||
LW S_WAIT_HERE,120
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG BIGBOYS
|
||
.WORD 1000
|
||
|
||
MIRROR_WAIT
|
||
.LONG S_WAIT_HERE
|
||
.WORD 2
|
||
|
||
.LONG S_JUMP_IF_FALSE
|
||
.long MIRROR_WAIT
|
||
.LONG SCROLL_FLAG
|
||
|
||
.LONG S_DISPATCH_HERE
|
||
.LONG DSP_LA_DRESS2+M_WAIT
|
||
.WORD 0
|
||
|
||
LW S_WAIT_HERE, 30+M_QUOTA+M_CLEANUP ;Wait for quota and clean
|
||
|
||
.LONG S_START_DANIM ;OPEN CURTAINS
|
||
|
||
.LONG S_GOTO_POINT
|
||
.WORD 30 ; DURATION
|
||
.WORD 058H,0
|
||
.LONG 07A0A7H-0F00H
|
||
.WORD 60*5 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_JUMP_IF_FALSE
|
||
.long VIDEO_GO
|
||
.LONG SCROLL_FLAG
|
||
|
||
.LONG S_CALL
|
||
.LONG PUSH_BUTTON
|
||
|
||
.LONG S_CLR_SCROLL_FLAG
|
||
.LONG -1
|
||
|
||
VIDEO_GO
|
||
.LONG S_WAIT_HERE
|
||
.WORD 2
|
||
|
||
.LONG S_JUMP_IF_FALSE
|
||
.long VIDEO_GO
|
||
.LONG SCROLL_FLAG
|
||
|
||
.LONG S_CREATE_PROCR
|
||
.WORD PID_IND
|
||
; .LONG 30,0,[127,63],0,TRACK_FADE_PROC
|
||
.LONG 30,0,[255,63],0,TRACK_FADE_PROC
|
||
.WORD 0
|
||
|
||
.LONG S_GOTO_POINTZ
|
||
.WORD 30 ; DURATION
|
||
.LONG 07609DH
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINT
|
||
.WORD 10 ; DURATION
|
||
.WORD 058H,0
|
||
.LONG 07609DH
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_START_BGND
|
||
.LONG STAR_BGND
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 120
|
||
|
||
.long S_GOTO_POINT
|
||
.word 3
|
||
.word 058H,020H
|
||
.LONG 07609DH
|
||
.word 0
|
||
|
||
.LONG S_CREATE_PROC
|
||
.word PID_IND
|
||
.LONG MAKE_CEILING_DEBRIS
|
||
|
||
.long S_GOTO_POINT
|
||
.word 3
|
||
.word 058H,00H
|
||
.LONG 07609DH
|
||
.word 0
|
||
|
||
.long S_GOTO_POINT
|
||
.word 2
|
||
.word 058H,010H
|
||
.LONG 07609DH
|
||
.word 0
|
||
|
||
.long S_GOTO_POINT
|
||
.word 2
|
||
.word 058H,00H
|
||
.LONG 07609DH
|
||
.word 0
|
||
|
||
.long S_GOTO_POINT
|
||
.word 3
|
||
.word 058H,020H
|
||
.LONG 07609DH
|
||
.word 0
|
||
|
||
.long S_GOTO_POINT
|
||
.word 3
|
||
.word 058H,00H
|
||
.LONG 07609DH
|
||
.word 0
|
||
|
||
.long S_GOTO_POINT
|
||
.word 2
|
||
.word 058H,010H
|
||
.LONG 07609DH
|
||
.word 0
|
||
|
||
.long S_GOTO_POINT
|
||
.word 2
|
||
.word 058H,00H
|
||
.LONG 07609DH
|
||
.word 0
|
||
|
||
.LONG S_DISPATCH_HERE
|
||
.LONG WAVE1SUB1K+M_WAIT
|
||
.WORD 0
|
||
|
||
.long S_GOTO_POINT
|
||
.word 3
|
||
.word 058H,020H
|
||
.LONG 07609DH
|
||
.word 0
|
||
|
||
.long S_GOTO_POINT
|
||
.word 3
|
||
.word 058H,00H
|
||
.LONG 07609DH
|
||
.word 0
|
||
|
||
.long S_GOTO_POINT
|
||
.word 2
|
||
.word 058H,010H
|
||
.LONG 07609DH
|
||
.word 0
|
||
|
||
.long S_GOTO_POINT
|
||
.word 2
|
||
.word 058H,00H
|
||
.LONG 07609DH
|
||
.word 0
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 0+M_QUOTA
|
||
|
||
.LONG S_DISPATCH_HERE
|
||
.LONG WAVE1END+M_WAIT
|
||
.WORD 0
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG ENEMY_HITALL
|
||
.WORD 0
|
||
|
||
; .LONG S_JUMP_IF_TRUE
|
||
; .LONG NO_WAIT
|
||
; .LONG SCROLL_FLAG
|
||
;
|
||
; .LONG S_SET_SCROLL_FLAG
|
||
; .LONG 1
|
||
;
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 120
|
||
;NO_WAIT
|
||
.LONG S_SET_LONG
|
||
.LONG YSACCEL
|
||
.LONG 04000H
|
||
|
||
.LONG S_SOUND
|
||
.LONG SND_BUST_UP
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 20
|
||
|
||
.LONG S_CREATE_PROC
|
||
.word PID_IND
|
||
.LONG MAKE_CEILING_SMOKE
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG YBASE
|
||
.LONG 01F30000H
|
||
.WORD 0
|
||
|
||
.LONG S_STOP_SCROLL
|
||
|
||
*
|
||
* This is the end of the first section. Time to do bonus
|
||
*
|
||
.LONG S_SOUND,SND_SWEET_EMOTION
|
||
|
||
LLW S_SET_WORD, BONUS_DIRECTION, 0
|
||
|
||
LW S_AUDIT, AUDLAEND
|
||
|
||
.LONG S_CREATE_PROC
|
||
.word PID_IND
|
||
.LONG WAVE_END_IMM
|
||
|
||
.LONG S_DIE
|
||
|
||
SCROLL_FLITE
|
||
; .LONG S_SET_VECTOR_TABLE
|
||
; .LONG LA_OUTSIDE2_VECT_TABLE
|
||
|
||
.LONG S_ALLOW_PORTALS
|
||
|
||
; .LONG S_START_UNIVERSE
|
||
; .long GXROOF2 ; name of universe
|
||
; .long 03600000H,078E0000H,-0115F6H ; X, Y, Z
|
||
|
||
|
||
.LONG S_CREATE_PROC
|
||
.word PID_IND
|
||
.LONG MAKE_COPTER_ONTOP_PROC
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 3
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG YSACCEL
|
||
.LONG -08000H
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG YBASE
|
||
; .LONG 02580000H
|
||
.LONG 024A0000H
|
||
.WORD 0
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG YSACCEL
|
||
.LONG 08000H
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG YBASE
|
||
.LONG 02980000H
|
||
.WORD 0
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG YSACCEL
|
||
.LONG -08000H
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG YBASE
|
||
; .LONG 02580000H
|
||
.LONG 024A0000H
|
||
.WORD 0
|
||
|
||
.long S_GOTO_POINTXY
|
||
.word 10
|
||
; .word 0360H,0258H
|
||
.word 0360H,024AH
|
||
.word 0
|
||
|
||
.if BILL
|
||
|
||
;LA_SCROLL_TEST
|
||
|
||
.endif
|
||
|
||
.LONG S_SET_WORD ;ACTIVATE ALL ENEMIES
|
||
.LONG OBJENEMIES
|
||
.WORD -1
|
||
|
||
.LONG S_SET_LONG ;SET ENEMY Z RANGE
|
||
.LONG UEP_Z
|
||
.LONG 014000H
|
||
|
||
.if BILL
|
||
|
||
;LA_SCROLL_TEST
|
||
;
|
||
; .LONG S_CREATE_PROC
|
||
; .WORD PID_IND
|
||
; .LONG MAKE_COPTER_ONTOP_PROC
|
||
;
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 3*60+30
|
||
|
||
.endif
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 60*4
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WXBUFFER
|
||
.LONG 160*08000H
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WYBUFFER
|
||
.LONG 170*08000H
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG UNIVERR
|
||
.WORD 1
|
||
|
||
; .LONG DSS_GO+M_JUMP
|
||
|
||
.LONG S_CREATE_PROC
|
||
.WORD PID_IND
|
||
.LONG COPTER_APPROACH_SND_PROC
|
||
|
||
; .LONG S_SOUND
|
||
; .LONG SND_CHOPPER_APPROACH
|
||
|
||
.long S_GOTO_POINT0
|
||
.word 60*2
|
||
; .word 0334H,024AH
|
||
.word 031DH,0258H
|
||
; .LONG 08780H
|
||
.LONG 0720AH
|
||
.word 0
|
||
|
||
; .LONG DSS_GO+M_JUMP
|
||
|
||
; .LONG S_SOUND
|
||
; .LONG SND_CHOPPER_INTERIOR
|
||
|
||
.LONG S_KILL_ALL_PROCS ;KILL ALL DAMAGE CYCLES
|
||
.WORD PID_DAMCC
|
||
|
||
.LONG S_CREATE_PROCR ;DAMAGE COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
.LONG 16,2,1,PSINE2,CYCLE16 ;PARKVERT
|
||
.WORD PID_DAMCC
|
||
.LONG 10,15,9,MVNPAL1,CYCLE16 ;MVNSINE1
|
||
.WORD PID_DAMCC
|
||
.LONG 20,2,1,CITY7x,CYCLE16 ;CTHEATRSINE1
|
||
.WORD PID_DAMCC
|
||
.LONG 7,8,2,MUD1p,CYCLE16 ;MUDFLAPS
|
||
.WORD PID_DAMCC
|
||
.LONG 10,7,6,RLITEp,CYCLE16 ;REDLITE2
|
||
.WORD 0
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 60
|
||
|
||
; .LONG S_SOUND
|
||
; .LONG SND_FLY_CHASE
|
||
|
||
.LONG S_CLR_SCROLL_FLAG
|
||
.LONG -1
|
||
|
||
.LONG S_DISPATCH_HERE ;MAKE DA COPTER
|
||
.long WAVE1SUB1M+M_WAIT
|
||
.word 0
|
||
|
||
; .LONG ENDLESS_LUPE+M_JUMP
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 60*3
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG XSACCEL
|
||
.LONG 0800H
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG YSCROLL
|
||
.LONG 010000H
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG YBASE
|
||
; .LONG 02B00000H
|
||
; .WORD 0 ;I'M CHEATIN'
|
||
.LONG 02A00000H
|
||
.WORD 1 ;I'M CHEATIN'
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG YSACCEL
|
||
; .LONG -0400H
|
||
.LONG -0860H
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG XSACCEL
|
||
.LONG -0800H
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 30
|
||
|
||
; .LONG S_WAIT_UNTIL_TRUE
|
||
; .LONG SCROLL_FLAG ;FRONT HELICOPTER FLY OFF YET?
|
||
|
||
.LONG S_CREATE_PROC ;MAKE DA SIDE COPTER COME IN
|
||
.word PID_COPTER
|
||
.LONG COPTER_INTRO_2
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 30
|
||
|
||
; .LONG S_STOP_SCROLL
|
||
; .LONG ENDLESS_LUPE+M_JUMP
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG YSACCEL
|
||
.LONG 01C0H
|
||
|
||
.LONG S_WAIT_FOR_VALUE
|
||
; .LONG XBASE
|
||
; .LONG -01080000H
|
||
.LONG YBASE
|
||
.LONG 02D00000H
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG XSACCEL
|
||
.LONG 0
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG YSCROLL
|
||
.LONG 0
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG YSACCEL
|
||
.LONG 0
|
||
|
||
; .LONG S_GOTO_POINTXY
|
||
; .WORD 10 ; DURATION
|
||
; .WORD -0108H,02D0H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINT
|
||
.WORD 10 ; DURATION
|
||
.WORD -0108H,02D0H
|
||
.LONG 08780H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
; .long S_GOTO_POINT0
|
||
; .word 60
|
||
; .word 0314H,026BH
|
||
; .LONG -0973EH
|
||
; .word 30
|
||
;
|
||
; .long S_GOTO_POINT0
|
||
; .word 60*2
|
||
; .word 0E0H,035BH
|
||
; .LONG -0973EH
|
||
; .word 0
|
||
|
||
.LONG FLY_THROUGH_CITY+M_JUMP
|
||
|
||
CX_LEFTZIGZAG
|
||
.LONG S_SET_LONG
|
||
.LONG WXBUFFER
|
||
.LONG 0480000H
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WYBUFFER
|
||
.LONG 0640000H
|
||
|
||
.LONG S_ALLOW_PORTALS
|
||
|
||
.LONG S_CLEAR_CHOICE_COUNT
|
||
.LONG LA_Choice1 ;In this background
|
||
.WORD MDec_Right_Cnt ;No more going right
|
||
|
||
LLW S_SET_WORD, OBJENEMIES, -1 ;ACTIVATE ALL ENEMIES
|
||
|
||
.LONG S_DISPATCH_HERE ;NO MORE ENEMIES FOR NOW
|
||
.LONG WAVE1END+M_WAIT
|
||
.WORD 0
|
||
|
||
.LONG S_GOTO_POINT0
|
||
.WORD 60*3 ; DURATION
|
||
.WORD 02A4H,0
|
||
.LONG -08000H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINT0
|
||
.WORD 60*3 ; DURATION
|
||
.WORD 0495H,092H
|
||
.LONG -0EAF1H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINT0
|
||
.WORD 60*3 ; DURATION
|
||
.WORD 0304H,0F8H
|
||
.LONG -08000H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINT0
|
||
.WORD 60*3 ; DURATION
|
||
.WORD 0495H,018BH
|
||
.LONG -0EAF1H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINTXY
|
||
.WORD 60*3 ; DURATION
|
||
.WORD 0334H,018BH
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINTXY
|
||
.WORD 60*3 ; DURATION
|
||
.WORD 02F6H,0H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_LOCKOUT_PORTALS
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WXBUFFER
|
||
.LONG 0400000H
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WYBUFFER
|
||
.LONG 0400000H
|
||
|
||
.LONG CX_TODOOR+M_JUMP
|
||
|
||
STAGE_RIGHT
|
||
.LONG S_SET_VECTOR_TABLE
|
||
.LONG LA_STAGE_VECT_TABLE
|
||
|
||
.LONG S_CREATE_PROC ;DON'T NEED THAT FAR SCAFFOLD
|
||
.WORD PID_IND
|
||
.LONG S_STAGE_ZFAR_PROC
|
||
|
||
.LONG S_CREATE_PROC
|
||
.word PID_IND
|
||
.LONG MAKE_AEROSMITH
|
||
|
||
.LONG S_AT_PORTAL_ENTRANCE
|
||
|
||
.LONG S_SET_PORTAL ; Search For Portal we are centered on
|
||
.WORD 15
|
||
|
||
.LONG S_ENTER_PORTAL ; Set up and enter new universe
|
||
; .long GXSTAGE3+M_EP_DONT_STOP ; name of universe
|
||
.long GXSTG3BT+M_EP_DONT_STOP ; name of universe
|
||
.long -028A23H,0A1E500H,05B2800H ; Z, X, Y offsets
|
||
|
||
.LONG MUST_BE_IN_THE_FRONT_ROW+M_JUMP
|
||
|
||
SECRET_STAGE_PALS
|
||
.LONG NEWTUN1d, NGLAMP1, ROPLDDR1, RDB2d1, RDB2d2, STEVEKERI
|
||
.LONG T2FIXED, BLUPLAYR, REDPLAYR, YELPLAYR, TEXTPAL, 0
|
||
|
||
BAR_SECRET
|
||
.LONG S_LOCKOUT_PORTALS
|
||
|
||
.LONG S_CLR_SCROLL_FLAG
|
||
.LONG -1
|
||
|
||
.LONG S_DISPATCH_HERE
|
||
.LONG WAVE1END+M_WAIT
|
||
.WORD 0
|
||
|
||
.LONG S_ACCEL_TO_POINT
|
||
.WORD 60 ; DURATION
|
||
.WORD 03DAH,02FH
|
||
; .LONG 024946H
|
||
; .LONG 01EF46H
|
||
.LONG 01C9CDH
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_DEL_ENEMY_NOAUD_OID
|
||
.WORD OID_NONBOY
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG BUYIN_NOFADE
|
||
.LONG SECRET_STAGE_PALS
|
||
|
||
.LONG S_ACCEL_TO_POINT
|
||
.WORD 31 ; DURATION
|
||
.WORD 03DAH,02FH
|
||
.LONG 02F800H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG IRQSKYE
|
||
.WORD 0
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG IRQGNDE
|
||
.WORD 0
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG ZBASE
|
||
.LONG 02F801H
|
||
.WORD 0
|
||
|
||
.LONG S_STOP_SCROLL
|
||
|
||
.LONG S_SET_ENEMIES
|
||
.WORD 0
|
||
|
||
.LONG S_SET_VECTOR_TABLE
|
||
.LONG LA_STAGE_VECT_TABLE
|
||
|
||
.LONG S_SOUND ;KILL SOUNDS
|
||
.LONG SND_CHAN1_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG S_SOUND
|
||
.LONG SND_CHAN2_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG S_SOUND
|
||
.LONG SND_CHAN3_OFF
|
||
|
||
.LONG S_CREATE_PROCR
|
||
.WORD PID_IND
|
||
.LONG 30,0,[63,255],0,TRACK_FADE_PROC
|
||
.WORD 0
|
||
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 30
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WXBUFFER
|
||
.LONG 0
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WYBUFFER
|
||
.LONG 0
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG UNIVERR
|
||
.WORD 1
|
||
|
||
.LONG S_CLR_SCROLL_FLAG
|
||
.LONG -1
|
||
|
||
.LONG S_DEL_ALL_UNIVOBJ_WAIT
|
||
|
||
.LONG S_BLACKOUT
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WXBUFFER
|
||
.LONG 0400000H
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WYBUFFER
|
||
.LONG 0400000H
|
||
|
||
; .LONG ENDLESS_LUPE+M_JUMP
|
||
|
||
.LONG S_START_UNIVERSE0
|
||
; .long GXSTAGE3 ; name of universe
|
||
.long GXSTG3TP ; name of universe
|
||
.long -0220000H,0,02888EH ; X NEW, Y NEW, Z CONTINUOUS
|
||
.LONG 05DE86H ; Z OFFSET
|
||
|
||
.LONG S_KILL_ALL_PROCS ;KILL ALL DAMAGE CYCLES
|
||
.WORD PID_DAMCC
|
||
|
||
;Bar secret
|
||
; .IF GEORGE
|
||
;LA_SCROLL_TEST
|
||
|
||
; LW S_WAIT_HERE, 60
|
||
; .ENDIF
|
||
|
||
.LONG S_CREATE_PROCR ;DAMAGE COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
.LONG 12,62,61,SPKR1p,CYCLE16 ;SPEAKER LIGHT
|
||
; .WORD PID_DAMCC
|
||
; .LONG 12,62,61,SPKR1pd,CYCLE16 ;DARKER SPEAKER LIGHT
|
||
.WORD PID_DAMCC
|
||
.LONG 12,45,44,NSTMON1p,CYCLE16 ;SPEAKER LIGHT
|
||
.WORD PID_DAMCC
|
||
.LONG 9,63,56,SPKDAM2p,CYCLE16 ;SPEAKER DAMAGE
|
||
.WORD PID_DAMCC
|
||
.LONG 12,62,56,CHRBRN1p,CYCLE16 ;SEATS DAMAGE
|
||
.WORD PID_DAMCC
|
||
.LONG 10,63,58,OBOXDAM1,CYCLE16 ;OPRA BOX DAMAGE
|
||
.WORD PID_DAMCC
|
||
.LONG 10,63,56,pdpal1,CYCLE16 ;PROSCENIUM DAMAGE
|
||
.WORD PID_DAMCC
|
||
.LONG 10,63,58,PILTOP2,CYCLE16 ;PILLAR TOP DAMAGE
|
||
.WORD PID_DAMCC
|
||
.LONG 10,63,58,PILBOT2,CYCLE16 ;PILLAR BOTTOM DAMAGE
|
||
.WORD PID_DAMCC
|
||
.LONG 3,30,24,NGLAMP3p,CYCLE16 ;CEILING LAMP
|
||
.WORD 0
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 2
|
||
|
||
; .LONG S_CHANGE_ZFAR
|
||
; .LONG 09000H
|
||
|
||
.LONG S_SET_GRND_COLOR
|
||
.WORD 0
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 10
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 30
|
||
|
||
.LONG S_SOUND0 ;MAKE NO MUSIC
|
||
.LONG SND_EAT_THE_RICH2
|
||
|
||
.LONG S_SET_TRACK_VOLUME
|
||
.BYTE 0
|
||
.BYTE 63
|
||
|
||
.LONG S_SECRET_PALS
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG ENEMY_HITALL
|
||
.WORD 1
|
||
|
||
BLACKOUT_DUDES
|
||
.LONG S_DISPATCH_HERE
|
||
.LONG WAVE1SUB1I+M_WAIT
|
||
.WORD 0
|
||
QUOTA_CLEAR_WAIT
|
||
.LONG S_WAIT_HERE
|
||
.WORD 10
|
||
|
||
.LONG S_JUMP_IF_TRUE
|
||
.LONG QUOTA_CLEAR_WAIT
|
||
.LONG ENEMY_QUOTA
|
||
SWITCH_WAIT
|
||
.LONG S_WAIT_HERE
|
||
.WORD 10
|
||
|
||
.LONG S_JUMP_IF_FALSE
|
||
.LONG BS_LIGHTS_ON
|
||
.LONG BLACKOUT
|
||
|
||
.LONG S_JUMP_IF_TRUE
|
||
.LONG BLACKOUT_DUDES
|
||
.LONG ENEMY_QUOTA
|
||
|
||
.LONG SWITCH_WAIT+M_JUMP
|
||
|
||
BS_LIGHTS_ON
|
||
.LONG S_SET_LONG, BUYIN_NOFADE, 0
|
||
|
||
LW S_WAIT_HERE,M_CLEANUP
|
||
|
||
;ENEMY_LUPE
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 0+M_QUOTA
|
||
|
||
; .LONG S_JUMP_IF_TRUE
|
||
; .LONG GO_UP_NOW
|
||
; .LONG SCROLL_FLAG
|
||
|
||
; .LONG S_DISPATCH_HERE
|
||
; .LONG WAVE1SUB1I+M_WAIT
|
||
; .WORD 0
|
||
|
||
; .LONG ENEMY_LUPE+M_JUMP
|
||
;GO_UP_NOW
|
||
.LONG S_DISPATCH_HERE
|
||
.LONG WAVE1END+M_WAIT
|
||
.WORD 0
|
||
|
||
.LONG S_GOTO_POINTZ
|
||
.WORD 60 ; DURATION
|
||
.LONG 02DA92H-0F00H-0680H
|
||
; .LONG 02B000H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_ZPOINT
|
||
.WORD 10 ; DURATION
|
||
.LONG 02DA92H-0F00H-0680H
|
||
; .LONG 02B000H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG UNIVERR
|
||
.WORD 1
|
||
|
||
.long S_GOTO_POINTXY
|
||
.word 60*3
|
||
.word -022H,011CH
|
||
.word 0
|
||
|
||
.LONG S_GOTO_POINT
|
||
.WORD 10 ; DURATION
|
||
.word -022H,011CH
|
||
.LONG 02DA92H-0F00H-0680H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_CHANGE_ZFAR
|
||
.LONG 070000H
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 30
|
||
|
||
.LONG S_START_UID_DANIM
|
||
.WORD 2 << 8 + 12
|
||
|
||
.LONG S_SET_TRACK_VOLUME
|
||
.BYTE 0
|
||
.BYTE 255
|
||
|
||
LW S_START_UID_DANIM, 1 << 8 + 31
|
||
|
||
LW S_WAIT_HERE, 120
|
||
|
||
.LONG S_DISPATCH_HERE
|
||
.LONG WAVE1SUB1J+M_WAIT
|
||
.WORD 0
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG ENEMY_HITALL
|
||
.WORD 1
|
||
|
||
LW S_WAIT_HERE, 30
|
||
|
||
.LONG S_Z_ACCEL_LIMIT
|
||
.WORD 08H
|
||
.LONG 0200H
|
||
|
||
.long S_WAIT_FOR_ZABS
|
||
.LONG 062CADH
|
||
.WORD 1
|
||
|
||
ON_SCAFFOLD
|
||
LLW S_SET_WORD, ENEMY_HITALL, 1 ;Do it again 'cause entrypoint
|
||
|
||
LLW S_DISPATCH_HERE, DSP_LA_SCAFFOLD2, 0
|
||
|
||
LW S_WAIT_HERE, 2
|
||
|
||
.LONG S_START_UID_DANIM
|
||
.WORD 2 << 8 + 13
|
||
|
||
.long S_DECEL_TO_POINT
|
||
.word 60*3
|
||
.word -022H,011CH
|
||
.long 071FADH-0F00H
|
||
.word 0
|
||
|
||
.LONG S_SET_LONG, WYBUFFER, 0400000H
|
||
|
||
.LONG S_GOTO_POINT
|
||
.WORD 10 ; DURATION
|
||
.word -022H,011CH
|
||
.long 071FADH-0F00H
|
||
.word 0
|
||
|
||
;LA_SCROLL_TEST
|
||
; .LONG S_SET_LONG
|
||
; .LONG UNIV_ZOFF
|
||
; .LONG 0
|
||
; .LONG S_SET_LONG
|
||
; .LONG UNIV_YOFF
|
||
; .LONG 0
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 60
|
||
|
||
.LONG S_CLR_SCROLL_FLAG
|
||
.LONG -1
|
||
|
||
.LONG S_DISPATCH_HERE
|
||
.long WAVE1SUB1L+M_WAIT
|
||
.word 15
|
||
|
||
LW S_WAIT_HERE,30+M_QUOTA
|
||
|
||
.LONG S_DISPATCH_HERE
|
||
.long DSP_LA_SCAFFOLD3+M_WAIT
|
||
.word 1
|
||
|
||
|
||
.LONG S_START_UID_DANIM
|
||
.WORD 2 << 8 + 14
|
||
|
||
STAR_LUPE
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
|
||
SCAFF2_LOOP
|
||
.LONG S_JUMP_ON_SHOOTING_NONBOYS, SCAFF2_WAIT
|
||
|
||
.LONG S_CREATE_PROCR ;Start the drop in Nonboys
|
||
|
||
.WORD PID_NONBOY
|
||
.LONG 077B5BH,-010C4000H,-018C4000H,-0528000H,CREATE_DROP_SHOOTING_NONBOY
|
||
|
||
.WORD PID_NONBOY
|
||
.LONG 077B5BH,-010C4000H,-018C4000H,-0228000H,CREATE_DROP_SHOOTING_NONBOY
|
||
|
||
.WORD PID_NONBOY
|
||
.LONG 077B5BH,-010C4000H,-018C4000H,0D8000H,CREATE_DROP_SHOOTING_NONBOY
|
||
|
||
.WORD 0
|
||
|
||
SCAFF2_WAIT
|
||
LW S_WAIT_HERE,1
|
||
|
||
.LONG S_JUMP_IF_TRUE, SCAFF2_DONE, SCROLL_FLAG
|
||
|
||
LW S_WAIT_HERE,15
|
||
|
||
.LONG SCAFF2_LOOP+M_JUMP
|
||
|
||
SCAFF2_DONE
|
||
|
||
; LW S_WAIT_HERE,30
|
||
|
||
; .LONG S_JUMP_IF_FALSE
|
||
; .LONG STAR_LUPE
|
||
; .LONG SCROLL_FLAG
|
||
|
||
; .LONG S_SOUND
|
||
; .LONG SND_GURU
|
||
|
||
.long S_GOTO_POINTZ
|
||
.word 60*1
|
||
.long 06DC8AH+02104H-0F00H
|
||
.word 0
|
||
|
||
.LONG GET_DRESSED+M_JUMP
|
||
|
||
FLY_THROUGH_CITY
|
||
|
||
.LONG S_START_UNIVERSE
|
||
.long GXFLITE4 ; name of universe
|
||
.long 01860000H,02D00000H,08780H
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG NewGNDCol
|
||
.LONG 0
|
||
|
||
;LA_SCROLL_TEST
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 60
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG XSCROLL
|
||
.LONG -060000H
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG YSCROLL
|
||
; .LONG -025C00H
|
||
.LONG -021000H
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG ZSCROLL
|
||
.LONG -021800H
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 60 << 8 + M_Z << 3 + M_Z + M_Y
|
||
.LONG -07800H ;Z BOUNDARY
|
||
.LONG 0 ;Y TARGET VELOCITY
|
||
.LONG 0 ;Z TARGET VELOCITY
|
||
;1ST TURN
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG XBASE
|
||
.LONG -06000000H
|
||
.WORD 1
|
||
|
||
.LONG S_CREATE_PROC
|
||
.word PID_COPTER
|
||
.LONG COPTER_ATTACK_1
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG XBASE
|
||
.LONG -07000000H
|
||
.WORD 1
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 48 << 8 + M_X << 3 + M_Z + M_Y + M_X
|
||
; .LONG -07960000H ;X BOUNDARY
|
||
.LONG -07A00000H ;X BOUNDARY
|
||
.LONG 0 ;X TARGET VELOCITY
|
||
; .LONG -03C00H ;Y TARGET VELOCITY
|
||
.LONG -05A00H ;Y TARGET VELOCITY
|
||
.LONG 01B600H ;Z TARGET VELOCITY
|
||
; .LONG 0 ;Y TARGET VELOCITY
|
||
; .LONG 010000H ;Z TARGET VELOCITY
|
||
|
||
; .LONG S_SET_LONG
|
||
; .LONG YSACCEL
|
||
; .LONG -0200H
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG ZSACCEL
|
||
; .LONG 08E0H
|
||
;
|
||
; .LONG S_X_DECEL_LIMIT
|
||
; .WORD 02000H
|
||
; .LONG 0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG YSACCEL
|
||
; .LONG 0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG ZSACCEL
|
||
; .LONG 0
|
||
;2ND TURN
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG ZBASE
|
||
.LONG 0
|
||
; .LONG 010000H
|
||
.WORD 1
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 107 << 8 + M_Z << 3 + M_Z + M_Y + M_X
|
||
.LONG 01B000H ;Z BOUNDARY
|
||
.LONG -06B000H ;X TARGET VELOCITY
|
||
.LONG 0 ;Y TARGET VELOCITY
|
||
.LONG 0 ;Z TARGET VELOCITY
|
||
|
||
; .LONG S_SET_LONG
|
||
; .LONG XSACCEL
|
||
; .LONG -01000H
|
||
;
|
||
; .LONG S_XYZ_DECEL_LIMIT
|
||
; .WORD 0,01000H,-010H
|
||
; .LONG 0,0,0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG XSACCEL
|
||
; .LONG 0
|
||
|
||
;3RD TURN
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG XBASE
|
||
.LONG -0A500000H
|
||
.WORD 1
|
||
|
||
.LONG S_CREATE_PROC
|
||
.word PID_COPTER
|
||
.LONG COPTER_ATTACK_2
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG XBASE
|
||
.LONG -0B800000H
|
||
.WORD 1
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 54 << 8 + M_X << 3 + M_Z + M_Y + M_X
|
||
.LONG -0C3F0000H ;X BOUNDARY
|
||
.LONG 0 ;X TARGET VELOCITY
|
||
; .LONG -010800H ;Y TARGET VELOCITY
|
||
.LONG -010300H ;Y TARGET VELOCITY
|
||
.LONG 01E100H ;Z TARGET VELOCITY
|
||
|
||
; .LONG S_SET_LONG
|
||
; .LONG YSACCEL
|
||
; .LONG -0400H
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG ZSACCEL
|
||
; .LONG 0600H
|
||
;
|
||
; .LONG S_X_DECEL_LIMIT
|
||
; .WORD 02000H
|
||
; .LONG 0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG YSACCEL
|
||
; .LONG 0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG ZSACCEL
|
||
; .LONG 0
|
||
|
||
;4TH TURN
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG ZBASE
|
||
.LONG 03F980H
|
||
.WORD 1
|
||
|
||
; .if GEORGE
|
||
|
||
;LA_SCROLL_TEST
|
||
|
||
; .LONG S_SET_LONG, WXBUFFER, 160*08000H
|
||
|
||
; .LONG S_SET_LONG, WYBUFFER, 170*08000H
|
||
|
||
; LW S_WAIT_HERE, 30
|
||
|
||
; .endif
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 67 << 8 + M_Z << 3 + M_Z + M_Y + M_X
|
||
.LONG 04F800H ;Z BOUNDARY
|
||
.LONG -053000H ;X TARGET VELOCITY
|
||
.LONG 0 ;Y TARGET VELOCITY
|
||
.LONG 0 ;Z TARGET VELOCITY
|
||
|
||
; .LONG S_SET_LONG
|
||
; .LONG XSACCEL
|
||
; .LONG -01000H
|
||
;
|
||
; .LONG S_XYZ_DECEL_LIMIT
|
||
; .WORD 0,0800H,-010H
|
||
; .LONG 0,0,0
|
||
;
|
||
; .LONG S_VSET_LONG
|
||
; .LONG XSACCEL
|
||
; .LONG 0
|
||
|
||
; .LONG S_CREATE_PROC
|
||
; .word PID_COPTER
|
||
; .LONG COPTER_FLY_1
|
||
|
||
;5TH TURN
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG XBASE
|
||
.LONG -011800000H
|
||
.WORD 1
|
||
|
||
.LONG S_CREATE_PROC
|
||
.word PID_COPTER
|
||
.LONG COPTER_FLY_1
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 60 << 8 + M_X << 3 + M_Z + M_Y + M_X
|
||
.LONG -01214C79BH ;X BOUNDARY
|
||
.LONG 0 ;X TARGET VELOCITY
|
||
.LONG 09200H ;Y TARGET VELOCITY
|
||
.LONG 013000H ;Z TARGET VELOCITY
|
||
|
||
; .LONG S_SET_LONG
|
||
; .LONG YSACCEL
|
||
; .LONG 0200H
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG ZSACCEL
|
||
; .LONG 0400H
|
||
;
|
||
; .LONG S_X_DECEL_LIMIT
|
||
; .WORD 01800H
|
||
; .LONG 0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG YSACCEL
|
||
; .LONG 0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG ZSACCEL
|
||
; .LONG 0
|
||
|
||
;6TH TURN
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG ZBASE
|
||
.LONG 060000H
|
||
.WORD 1
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 56 << 8 + M_Z << 3 + M_Z + M_Y + M_X
|
||
.LONG 069000H ;Z BOUNDARY
|
||
.LONG -072000H ;X TARGET VELOCITY
|
||
.LONG 0 ;Y TARGET VELOCITY
|
||
.LONG 0 ;Z TARGET VELOCITY
|
||
|
||
; .LONG S_SET_LONG
|
||
; .LONG XSACCEL
|
||
; .LONG -02000H
|
||
;
|
||
; .LONG S_XYZ_DECEL_LIMIT
|
||
; .WORD 0,-0800H,-010H
|
||
; .LONG 0,0,0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG XSACCEL
|
||
; .LONG 0
|
||
|
||
;7TH TURN
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG XBASE
|
||
.LONG -014620000H
|
||
.WORD 1
|
||
|
||
.LONG S_CREATE_PROC
|
||
.word PID_COPTER
|
||
.LONG COPTER_ATTACK_3
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 28 << 8 + M_X << 3 + M_Z + M_Y + M_X
|
||
.LONG -014C2C79BH ;X BOUNDARY
|
||
.LONG 0 ;X TARGET VELOCITY
|
||
.LONG -018400H ;Y TARGET VELOCITY
|
||
.LONG 016800H ;Z TARGET VELOCITY
|
||
|
||
; .LONG S_SET_LONG
|
||
; .LONG YSACCEL
|
||
; .LONG -0C80H
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG ZSACCEL
|
||
; .LONG 0B80H
|
||
;
|
||
; .LONG S_X_DECEL_LIMIT
|
||
; .WORD 04000H
|
||
; .LONG 0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG YSACCEL
|
||
; .LONG 0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG ZSACCEL
|
||
; .LONG 0
|
||
|
||
.if BILL
|
||
|
||
;LA_SCROLL_TEST
|
||
; .LONG S_SET_LONG
|
||
; .LONG WXBUFFER
|
||
; .LONG 150*08000H
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG WYBUFFER
|
||
; .LONG 170*08000H
|
||
;
|
||
; .LONG S_DISPATCH_HERE ;MAKE DA COPTER
|
||
; .long WAVE1SUB1M+M_WAIT
|
||
; .word 0
|
||
;
|
||
; .LONG S_CREATE_PROC
|
||
; .word PID_IND
|
||
; .LONG MAKE_COPTER_ONTOP_PROC
|
||
;
|
||
; .LONG S_CREATE_PROC
|
||
; .word PID_COPTER
|
||
; .LONG MAKE_SIDE_COPTER_PROC
|
||
;
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 60
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG YSCROLL
|
||
; .LONG -018400H
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG ZSCROLL
|
||
; .LONG 016800H
|
||
|
||
.endif
|
||
|
||
;8TH TURN
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG ZBASE
|
||
.LONG 0A2800H
|
||
.WORD 1
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 90 << 8 + M_Z << 3 + M_Z + M_Y + M_X
|
||
.LONG 0B2800H ;Z BOUNDARY
|
||
.LONG 0A2000H ;X TARGET VELOCITY
|
||
.LONG 0C000H ;Y TARGET VELOCITY
|
||
.LONG 0 ;Z TARGET VELOCITY
|
||
|
||
; .LONG S_SET_LONG
|
||
; .LONG XSACCEL
|
||
; .LONG 02000H
|
||
;
|
||
; .LONG S_XYZ_DECEL_LIMIT
|
||
; .WORD 0,0800H,-010H
|
||
; .LONG 0,0,0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG XSACCEL
|
||
; .LONG 0
|
||
;
|
||
; .LONG S_Y_ACCEL_BURST
|
||
; .WORD 02000H
|
||
; .WORD 7
|
||
|
||
.if BILL
|
||
|
||
;LA_SCROLL_TEST
|
||
; .LONG S_SET_LONG
|
||
; .LONG WXBUFFER
|
||
; .LONG 150*08000H
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG WYBUFFER
|
||
; .LONG 170*08000H
|
||
;
|
||
; .LONG S_CREATE_PROC
|
||
; .word PID_COPTER
|
||
; .LONG MAKE_SIDE_COPTER_PROC
|
||
;
|
||
; .LONG S_CREATE_PROC
|
||
; .word PID_COPTER
|
||
; .LONG MAKE_FRONT_COPTER_PROC
|
||
;
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 60
|
||
|
||
.endif
|
||
|
||
; .LONG S_SET_LONG
|
||
; .LONG WXBUFFER
|
||
; .LONG 150*08000H
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG WYBUFFER
|
||
; .LONG 170*08000H
|
||
|
||
.LONG S_CREATE_PROC
|
||
.word PID_COPTER
|
||
.LONG COPTER_FLY_2
|
||
|
||
.if BILL
|
||
|
||
; .LONG S_SET_LONG
|
||
; .LONG XSCROLL
|
||
; .LONG 0A2000H
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG YSCROLL
|
||
; .LONG 0C000H
|
||
|
||
.endif
|
||
|
||
;9TH CLIMB
|
||
; .LONG S_WAIT_FOR_COORD
|
||
; .LONG XBASE
|
||
; .LONG -08924000H
|
||
; .WORD 1
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG XBASE
|
||
.LONG -06000000H
|
||
.WORD 1
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 28 << 8 + M_Y << 3 + M_Y
|
||
.LONG 02128800H ;Y BOUNDARY
|
||
.LONG 0 ;Y TARGET VELOCITY
|
||
|
||
; .LONG S_Y_DECEL_LIMIT
|
||
; .WORD -0200H
|
||
; .LONG 0
|
||
;
|
||
; .LONG S_WAIT_FOR_COORD
|
||
; .LONG XBASE
|
||
; .LONG -054EE800H
|
||
; .WORD 1
|
||
;
|
||
|
||
.LONG S_X_DECEL_LIMIT
|
||
.WORD -0800H
|
||
.LONG 040000H
|
||
|
||
;LA_SCROLL_TEST
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 60
|
||
; .LONG S_SET_LONG
|
||
; .LONG XSCROLL
|
||
; .LONG 040000H
|
||
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG XBASE
|
||
.LONG 0C300000H
|
||
.WORD 1
|
||
|
||
.LONG S_CREATE_PROC
|
||
.word PID_COPTER
|
||
.LONG COPTER_ATTACK_4
|
||
|
||
;10TH TURN
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG XBASE
|
||
.LONG 0D300000H
|
||
.WORD 1
|
||
|
||
;
|
||
; .LONG S_STOP_SCROLL
|
||
; .LONG ENDLESS_LUPE+M_JUMP
|
||
;
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 32 << 8 + M_X << 3 + M_Z + M_Y + M_X
|
||
.LONG 0D7573D0H ;X BOUNDARY
|
||
.LONG 0 ;X TARGET VELOCITY
|
||
.LONG -012000H ;Y TARGET VELOCITY
|
||
.LONG 016000H ;Z TARGET VELOCITY
|
||
|
||
; .LONG S_SET_LONG
|
||
; .LONG YSACCEL
|
||
; .LONG -0B00H
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG ZSACCEL
|
||
; .LONG 0B00H
|
||
;
|
||
; .LONG S_X_DECEL_LIMIT
|
||
; .WORD -02000H
|
||
; .LONG 0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG YSACCEL
|
||
; .LONG 0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG ZSACCEL
|
||
; .LONG 0
|
||
|
||
;11TH TURN
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG ZBASE
|
||
.LONG 0C928CH
|
||
.WORD 1
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 30 << 8 + M_Z << 3 + M_Z + M_Y + M_X
|
||
.LONG 0D128CH ;Z BOUNDARY
|
||
.LONG -048000H ;X TARGET VELOCITY
|
||
.LONG 0 ;Y TARGET VELOCITY
|
||
.LONG 0C000H ;Z TARGET VELOCITY
|
||
;12TH ZOOM
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 73 << 8 + M_Z << 3 + M_Z + M_Y + M_X
|
||
.LONG 0D928CH ;Z BOUNDARY
|
||
.LONG 058000H ;X TARGET VELOCITY
|
||
.LONG -02A00H ;Y TARGET VELOCITY
|
||
.LONG 02000H ;Z TARGET VELOCITY
|
||
|
||
; .LONG S_SET_LONG
|
||
; .LONG XSACCEL
|
||
; .LONG 01000H
|
||
;
|
||
; .LONG S_XYZ_DECEL_LIMIT
|
||
; .WORD 0,01000H,-010H
|
||
; .LONG 0,0,0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG XSACCEL
|
||
; .LONG 0
|
||
;;12TH ZOOM
|
||
; .LONG S_XYZ_ACCEL_BURST
|
||
; .WORD 0,0,028H
|
||
; .WORD 4
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG XBASE
|
||
.LONG 0E000000H
|
||
.WORD 1
|
||
|
||
.LONG S_CREATE_PROC
|
||
.word PID_COPTER
|
||
.LONG COPTER_FLY_2_1
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG XBASE
|
||
.LONG 011FBE800H
|
||
.WORD 1
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 30 << 8 + M_Z << 3 + M_Z + M_Y
|
||
.LONG 0E0A8CH ;Z BOUNDARY
|
||
.LONG 0 ;Y TARGET VELOCITY
|
||
.LONG 0 ;Z TARGET VELOCITY
|
||
|
||
; .LONG S_XYZ_DECEL_LIMIT
|
||
; .WORD 0,0,-010H
|
||
; .LONG 0,0,0
|
||
|
||
;13TH TURN
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG XBASE
|
||
.LONG 014000000H
|
||
.WORD 1
|
||
|
||
; .if GEORGE
|
||
|
||
;LA_SCROLL_TEST
|
||
|
||
; .LONG S_SET_LONG, WXBUFFER, 160*08000H
|
||
|
||
; .LONG S_SET_LONG, WYBUFFER, 170*08000H
|
||
|
||
; LW S_WAIT_HERE, 30
|
||
|
||
; .endif
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 44 << 8 + M_Z << 3 + M_Z + M_Y + M_X
|
||
.LONG 0E929CH ;Z BOUNDARY
|
||
.LONG 0 ;X TARGET VELOCITY
|
||
.LONG -014000H ;Y TARGET VELOCITY
|
||
.LONG 01A200H ;Z TARGET VELOCITY
|
||
;14TH TURN
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 110 << 8 + M_Z << 3 + M_Z + M_Y + M_X
|
||
.LONG 010028CH ;Z BOUNDARY
|
||
; .LONG 069000H ;X TARGET VELOCITY
|
||
.LONG 040000H ;X TARGET VELOCITY
|
||
.LONG 0 ;Y TARGET VELOCITY
|
||
.LONG 0 ;Z TARGET VELOCITY
|
||
|
||
; .LONG S_CREATE_PROC
|
||
; .word PID_COPTER
|
||
; .LONG COPTER_FLY_3
|
||
|
||
.LONG S_CREATE_PROCR ;Start the left side Cogs
|
||
.WORD PID_IND
|
||
.LONG 10B000H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD PID_IND
|
||
.LONG 10F800H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD PID_IND
|
||
.LONG 118800H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD 0
|
||
|
||
|
||
LW S_WAIT_HERE, 30
|
||
|
||
.LONG S_CREATE_PROCR ;Start a second batch
|
||
.WORD PID_IND
|
||
.LONG 10B000H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD PID_IND
|
||
.LONG 10F800H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD PID_IND
|
||
.LONG 114000H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD PID_IND
|
||
.LONG 118800H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD 0
|
||
|
||
LW S_WAIT_HERE, 30
|
||
|
||
.LONG S_CREATE_PROCR ;Start a third batch
|
||
.WORD PID_IND
|
||
.LONG 10B000H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD PID_IND
|
||
.LONG 10F800H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD PID_IND
|
||
.LONG 114000H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD PID_IND
|
||
.LONG 118800H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD 0
|
||
|
||
LW S_WAIT_HERE, 30
|
||
|
||
.LONG S_CREATE_PROCR ;Start a fourth
|
||
|
||
; .WORD PID_IND
|
||
; .LONG 10B000H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD PID_IND
|
||
.LONG 10F800H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD PID_IND
|
||
.LONG 114000H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
; .WORD PID_IND
|
||
; .LONG 118800H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD 0
|
||
|
||
LW S_WAIT_HERE, 30
|
||
|
||
.LONG S_CREATE_PROCR ;Start a fifth batch
|
||
.WORD PID_IND
|
||
.LONG 10B000H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD PID_IND
|
||
.LONG 10F800H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD PID_IND
|
||
.LONG 114000H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
; .WORD PID_IND
|
||
; .LONG 118800H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD 0
|
||
|
||
|
||
LW S_WAIT_HERE, 80
|
||
|
||
.LONG S_CREATE_PROCR ;Start a sixth batch
|
||
.WORD PID_IND
|
||
.LONG 10B000H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD PID_IND
|
||
.LONG 10F800H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
; .WORD PID_IND
|
||
; .LONG 114000H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD PID_IND
|
||
.LONG 118800H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD 0
|
||
|
||
LW S_WAIT_HERE, 30
|
||
|
||
.LONG S_CREATE_PROCR ;Start a seventh batch
|
||
.WORD PID_IND
|
||
.LONG 10B000H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD PID_IND
|
||
.LONG 10F800H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD PID_IND
|
||
.LONG 114000H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
; .WORD PID_IND
|
||
; .LONG 118800H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD 0
|
||
|
||
|
||
LW S_WAIT_HERE, 30
|
||
|
||
.LONG S_CREATE_PROCR ;Start an eighth batch
|
||
.WORD PID_IND
|
||
.LONG 10B000H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD PID_IND
|
||
.LONG 10F800H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
; .WORD PID_IND
|
||
; .LONG 114000H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD PID_IND
|
||
.LONG 118800H,-1250000H,164B0000H,0,PROC_COG_GARAGE_LEFT
|
||
|
||
.WORD 0
|
||
|
||
; .LONG S_SET_LONG
|
||
; .LONG YSACCEL
|
||
; .LONG -01000H
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG ZSACCEL
|
||
; .LONG 0980H
|
||
;
|
||
; .LONG S_X_DECEL_LIMIT
|
||
; .WORD -02000H
|
||
; .LONG 0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG YSACCEL
|
||
; .LONG 0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG ZSACCEL
|
||
; .LONG 0
|
||
;
|
||
;;14TH TURN
|
||
; .LONG S_WAIT_FOR_COORD
|
||
; .LONG ZBASE
|
||
; .LONG 0D0A8CH
|
||
; .WORD 1
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG XSACCEL
|
||
; .LONG 01000H
|
||
;
|
||
; .LONG S_XYZ_DECEL_LIMIT
|
||
; .WORD 0,01000H,-010H
|
||
; .LONG 0,0,0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG XSACCEL
|
||
; .LONG 0
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG XBASE
|
||
.LONG 019481557H
|
||
.WORD 1
|
||
|
||
; .LONG S_CREATE_PROC
|
||
; .word PID_COPTER
|
||
; .LONG COPTER_ATTACK_5
|
||
|
||
;15TH SLOWDOWN SPEEDUP
|
||
; .LONG S_WAIT_FOR_COORD
|
||
; .LONG XBASE
|
||
; .LONG 01AB7B000H
|
||
; .WORD 1
|
||
|
||
; .LONG S_X_DECEL_LIMIT
|
||
; .WORD -02000H
|
||
; .LONG 040000H
|
||
;
|
||
; .LONG S_X_ACCEL_LIMIT
|
||
; .WORD 02000H
|
||
; .LONG 069000H
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG XBASE
|
||
.LONG 01E621557H
|
||
.WORD 1
|
||
|
||
; .LONG S_CREATE_PROC
|
||
; .word PID_COPTER
|
||
; .LONG COPTER_FLY_4
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG XBASE
|
||
.LONG 020B21557H
|
||
.WORD 1
|
||
|
||
; .LONG S_CREATE_PROC
|
||
; .word PID_COPTER
|
||
; .LONG COPTER_ATTACK_6
|
||
|
||
;16TH SLOWDOWN SPEEDUP
|
||
; .LONG S_WAIT_FOR_COORD
|
||
; .LONG XBASE
|
||
; .LONG 022204000H
|
||
; .WORD 1
|
||
|
||
; .LONG S_X_DECEL_LIMIT
|
||
; .WORD -02000H
|
||
; .LONG 040000H
|
||
|
||
; .LONG S_X_ACCEL_LIMIT
|
||
; .WORD 02000H
|
||
; .LONG 069000H
|
||
;17TH TURN
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG XBASE
|
||
; .LONG 027F80000H
|
||
.LONG 028340000H
|
||
.WORD 1
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 48 << 8 + M_X << 3 + M_Z + M_X
|
||
.LONG 028948000H ;X BOUNDARY
|
||
.LONG 0 ;X TARGET VELOCITY
|
||
.LONG 010000H ;Z TARGET VELOCITY
|
||
|
||
; .LONG S_SET_LONG
|
||
; .LONG ZSACCEL
|
||
; .LONG 0480H
|
||
;
|
||
; .LONG S_X_DECEL_LIMIT
|
||
; .WORD -02000H
|
||
; .LONG 0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG ZSACCEL
|
||
; .LONG 0
|
||
|
||
;18TH TURN
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG ZBASE
|
||
.LONG 0D0A8CH
|
||
.WORD 1
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 56 << 8 + M_Z << 3 + M_Z + M_Y
|
||
.LONG 010D0A0H ;Z BOUNDARY
|
||
; .LONG 078000H ;Y TARGET VELOCITY
|
||
.LONG 068000H ;Y TARGET VELOCITY
|
||
.LONG 0 ;Z TARGET VELOCITY
|
||
|
||
; .LONG S_SET_LONG
|
||
; .LONG YSACCEL
|
||
; .LONG 02000H
|
||
;
|
||
; .LONG S_Z_DECEL_LIMIT
|
||
; .WORD -010H
|
||
; .LONG 0
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG YSACCEL
|
||
; .LONG 0
|
||
|
||
.LONG S_CREATE_PROC
|
||
.word PID_COPTER
|
||
.LONG COPTER_ATTACK_FINAL
|
||
|
||
;19TH END
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG YBASE
|
||
.LONG 06600000H
|
||
.WORD 1
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WYBUFFER
|
||
.LONG 0600000H
|
||
|
||
.LONG S_Y_DECEL_LIMIT
|
||
.WORD -02000H
|
||
.LONG 0
|
||
|
||
.if BILL
|
||
|
||
LA_SCROLL_TEST
|
||
.LONG S_SOUND
|
||
.LONG SND_FLY_CHASE
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WXBUFFER
|
||
.LONG 160*08000H
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WYBUFFER
|
||
.LONG 0600000H
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG UNIVERR
|
||
.WORD 1
|
||
|
||
.LONG S_CREATE_PROC
|
||
.WORD PID_IND
|
||
.LONG MAKE_COPTER_ONTOP_PROC
|
||
|
||
.LONG S_DISPATCH_HERE ;MAKE DA COPTER
|
||
.long WAVE1SUB1M+M_WAIT
|
||
.word 0
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 10
|
||
|
||
.LONG S_CREATE_PROC
|
||
.WORD PID_COPTER
|
||
.LONG COPTER_ATTACK_FINAL
|
||
|
||
.endif
|
||
|
||
; .LONG S_GOTO_POINT0 ;GO IN FRONT OF THE DOORS?
|
||
; .WORD 30 ; DURATION
|
||
; .WORD 02893H,0743H
|
||
; .LONG 010D09Ah ;X, Y, Z DESTINATION
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINT0
|
||
.WORD 45
|
||
.WORD 02893H,0743H
|
||
.LONG 010D09Ah ;X, Y, Z DESTINATION
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINT
|
||
.WORD 2
|
||
.WORD 02893H,0743H
|
||
.LONG 010D09Ah ;X, Y, Z DESTINATION
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG SCROLL_FLAG
|
||
.LONG 0
|
||
|
||
.LONG S_CREATE_PROC
|
||
.WORD PID_IND
|
||
.LONG SCROLL_HOVER_PROC
|
||
|
||
LW S_AUDIT, AUDFLHELI
|
||
|
||
.LONG S_LOAD_BOSS_PUNISH
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1+M_QUOTA ;WAIT FOR COPTER TO DIE
|
||
|
||
.LONG S_SOUND, SND_FLY_CHASE ;For good measure
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG SCROLL_FLAG
|
||
.LONG 1
|
||
|
||
STOP_Y_DAMMIT
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
|
||
.LONG S_JUMP_IF_TRUE
|
||
.LONG STOP_Y_DAMMIT
|
||
.LONG SCROLL_FLAG
|
||
|
||
;LA_SCROLL_TEST
|
||
|
||
.if BILL
|
||
|
||
; .LONG S_CREATE_PROC
|
||
; .WORD PID_IND
|
||
; .LONG MAKE_COPTER_ONTOP_PROC
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG WXBUFFER
|
||
; .LONG 0400000H
|
||
;
|
||
; .LONG S_SET_LONG
|
||
; .LONG WYBUFFER
|
||
; .LONG 0400000H
|
||
;
|
||
; .LONG S_SOUND
|
||
; .LONG SND_FLY_CHASE
|
||
;
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 60
|
||
|
||
.endif
|
||
|
||
; .LONG S_CREATE_PROCR
|
||
; .WORD PID_IND
|
||
; .LONG 97,0,[0,255],0,TRACK_FADE_PROC
|
||
; .WORD 0
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
; .WORD 30 << 8 + M_Z << 3 + M_Z + M_Y
|
||
.WORD 30 << 8 + M_Z << 3 + M_Z
|
||
.LONG 012D0A0H ;Z BOUNDARY
|
||
; .LONG 08000H ;Y TARGET VELOCITY
|
||
.LONG 010000H ;Z TARGET VELOCITY
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG ZBASE
|
||
.LONG 0124000H
|
||
.WORD 0
|
||
|
||
; .LONG S_DOZER_ACCEL
|
||
; .WORD 30 << 8 + M_Z << 3 + M_Z + M_Y
|
||
;; .LONG 012D0A0H ;Z BOUNDARY
|
||
; .LONG 0742D050H ;Y BOUNDARY
|
||
; .LONG -010000H ;Y TARGET VELOCITY
|
||
; .LONG 0 ;Z TARGET VELOCITY
|
||
|
||
.LONG S_START_UNIVERSE
|
||
.long GXCARLA1 ; name of universe
|
||
; .long 020000H,0742D050H,-09000H ; X, Y, Z
|
||
.long 020000H,0742D050H,-0B480H ; X, Y, Z
|
||
|
||
; .LONG S_SOUND0 ;MAKE NO MUSIC
|
||
; .LONG SND_SWEET_EMOTION
|
||
|
||
; .LONG S_CREATE_PROCR
|
||
; .WORD PID_IND
|
||
; .LONG 150,0,[25,255],0,TRACK_FADE_PROC
|
||
; .WORD 0
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 180 << 8 + M_Y << 3 + M_Y
|
||
.LONG 03185050H ;Y BOUNDARY
|
||
.LONG -0100000H ;Y TARGET VELOCITY
|
||
|
||
.LONG S_WAIT_FOR_COORD
|
||
.LONG YBASE
|
||
.LONG 03185050H
|
||
.WORD 1
|
||
|
||
.LONG S_DOZER_ACCEL
|
||
.WORD 100 << 8 + M_Y << 3 + M_Y
|
||
.LONG 0 ;Y BOUNDARY
|
||
.LONG 0 ;Y TARGET VELOCITY
|
||
|
||
.LONG S_GOTO_POINT
|
||
.WORD 1
|
||
.WORD 02H,0
|
||
; .LONG -09000H
|
||
.LONG -0B480H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
; .LONG S_SOUND0 ;MAKE NO MUSIC
|
||
; .LONG SND_SWEET_EMOTION
|
||
|
||
; .LONG S_CREATE_PROCR
|
||
; .WORD PID_IND
|
||
; .LONG 30,0,[255,0],0,TRACK_FADE_PROC
|
||
; .WORD 0
|
||
|
||
.LONG S_SOUND,SND_SWEET_EMOTION_X
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 60
|
||
|
||
LWL S_Z_ACCEL_LIMIT, 08H, 080H ;Rev up the Z
|
||
|
||
.LONG S_CALL
|
||
.LONG DELETE_COPTER_FRAME
|
||
|
||
LW S_DECEL_TO_STOP,4
|
||
|
||
LLW S_SET_WORD, GAME_STATE, INGAME
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 60
|
||
|
||
.LONG S_CAR_BEEPER
|
||
|
||
LW S_WAIT_HERE,40
|
||
|
||
.LONG S_START_UID_DANIM
|
||
.WORD 2 << 8 + (8-1)
|
||
|
||
LW S_WAIT_HERE,60
|
||
|
||
.LONG S_START_UID_DANIM
|
||
.WORD 1 << 8 + (7-1)
|
||
|
||
LW S_WAIT_HERE,80
|
||
|
||
; .LONG S_GOTO_POINT
|
||
; .WORD 60
|
||
; .WORD -036H,02H
|
||
; .LONG -03E00H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_XYZ_ACCEL_BURST
|
||
.WORD -01400H, 0CCH, 02FH
|
||
.WORD 10
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 50 ;<55
|
||
|
||
.LONG S_STOP_SCROLL
|
||
|
||
LLW S_SET_WORD, BONUS_DIRECTION, 3
|
||
|
||
LW S_AUDIT, AUDFLEND
|
||
|
||
.LONG S_CREATE_PROC
|
||
.word PID_IND
|
||
.LONG WAVE_END_IMM ;Force the wave to end
|
||
|
||
.LONG S_DIE
|
||
|
||
; .LONG S_FADE_TO_BLACK
|
||
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 20
|
||
|
||
; .LONG S_STOP_SCROLL
|
||
|
||
; .LONG S_CALL
|
||
; .LONG FADEBLAK_TEXT
|
||
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 1
|
||
|
||
; .LONG S_LM_PRINTF
|
||
; .LONG WAVE1_END_MESS
|
||
|
||
; .LONG S_CALL
|
||
; .LONG FADEIN_TEXT
|
||
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 240
|
||
|
||
; .LONG S_CALL
|
||
; .LONG FADEOUT_TEXT
|
||
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 10
|
||
|
||
; .LONG S_DELETE_TEXT
|
||
|
||
; .LONG S_WAIT_HERE
|
||
; .WORD 30
|
||
|
||
; .LONG S_GAME_OVER
|
||
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -05AH,0264H
|
||
; .LONG -0F740H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -0A8CH,0264H
|
||
; .LONG -010740H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -0DB6H,02A0H
|
||
; .LONG -022F40H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -010E0H,0220H
|
||
; .LONG -033740H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -012A2H,0220H
|
||
; .LONG -02BF40H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -01572H,0220H
|
||
; .LONG -01E740H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -017D7H,0293H
|
||
; .LONG -034F40H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -01B75H,0293H
|
||
; .LONG -034F40H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -01C1CH,0293H
|
||
; .LONG -018740H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -01FB7H,02CFH
|
||
; .LONG -036740H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -0233BH,02CFH
|
||
; .LONG -036740H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -0240CH,0202H
|
||
; .LONG -01E740H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -025D3H,0202H
|
||
; .LONG -021740H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -028A3H,023FH
|
||
; .LONG -02A740H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -02865H,019BH
|
||
; .LONG -037F40H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -0343DH,019BH
|
||
; .LONG -030740H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -03767H,019BH
|
||
; .LONG -030740H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -035A5H,01D7H
|
||
; .LONG -025F40H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -03767H,01D7H
|
||
; .LONG -01B740H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -03DBBH,0203H
|
||
; .LONG -01CF40H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -03F7DH,02B7H
|
||
; .LONG -01CF40H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -03F7DH,0203H
|
||
; .LONG -03740H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -03F7DH,01E4H
|
||
; .LONG 01F0C0H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -03F7DH,019FH
|
||
; .LONG 02C4B0H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -03F7DH,01BDH
|
||
; .LONG 042CB0H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
;
|
||
; .LONG S_GOTO_POINT0
|
||
; .WORD 60*3 ; DURATION
|
||
; .WORD -03F7DH,0325H
|
||
; .LONG 057CB0H
|
||
; .WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
**************************************************************************
|
||
* *
|
||
* FleaBagRm: *
|
||
* *
|
||
**************************************************************************
|
||
|
||
FLEAOFF EQU 0C00h
|
||
FLEAREL EQU 5b43h-FLEAOFF ; fudge to turn given numbers into
|
||
; Z RELATIVE values
|
||
|
||
FleaBagRm:
|
||
.LONG S_SET_WORD ;FLAG ENTRANCE TO PORTAL
|
||
.LONG GITTEN_KITTEN
|
||
.WORD 0
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WXBUFFER
|
||
.LONG 0640000H
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WAVE_IPLANE
|
||
.LONG 0
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WAVE_UNIV
|
||
.LONG GXPORTAL
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG SCROLL_FLAG
|
||
.WORD 2 ;2 CHAIRBOYS
|
||
|
||
.LONG S_SET_WORD ;NO ENEMIES YET
|
||
.LONG OBJENEMIES
|
||
.WORD 0
|
||
|
||
.LONG S_GOTO_PORTAL_ENTRANCE
|
||
.word 447h,0ech ;X, Y
|
||
.word 30 ; Ticks to get there
|
||
.word 1 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_CREATE_PROCR
|
||
.WORD PID_IND
|
||
.LONG 02AE4H,0170000H,0220000H,15,MAKE_CHAIRBOY ;CHAIRBOY
|
||
.WORD PID_IND
|
||
.LONG 02AE6H,0128000H,0658000H,-15,MAKE_CHAIRBOY ;CHAIRBOY
|
||
.WORD 0
|
||
|
||
.LONG S_SET_PORTAL ; Search For Portal we are centered on
|
||
.WORD 15 ; and store it in a9
|
||
|
||
.LONG S_ENTER_PORTAL ; Set up and enter new universe
|
||
.long GXPORTAL+M_EP_WAIT ; name of universe
|
||
; .long GXPORTAL+M_EP_DONT_STOP ; name of universe
|
||
.long -4000H,0510000H,0H ; Z, X, Y offsets
|
||
|
||
.LONG S_KILL_ALL_PROCS ;KILL BATHROOM COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
|
||
.LONG S_CREATE_PROCR
|
||
.WORD PID_DAMCC
|
||
.LONG 3,30,24,NGLAMP3p,CYCLE16 ;CEILING LAMP
|
||
.WORD PID_DAMCC
|
||
.LONG 3,42,36,LMPBSE1p,CYCLE16 ;WALL LAMP
|
||
.WORD PID_DAMCC
|
||
.LONG 5,60,53,NONBXdm1p,CYCLE16 ;CRATE
|
||
.WORD 0
|
||
|
||
.LONG S_GOTO_POINT0
|
||
.WORD -60 ; Z is relative to this universe!
|
||
.WORD 051H,0
|
||
.LONG -4800h ;
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_SETUP_DSJ
|
||
.WORD 3*60
|
||
CHAIRS_WAIT
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
|
||
.LONG S_JUMP_IF_FALSE
|
||
.LONG OPEN_DOOR
|
||
.LONG SCROLL_FLAG
|
||
|
||
.LONG S_DSJ
|
||
.LONG CHAIRS_WAIT
|
||
|
||
.LONG FLEABAG_EXIT+M_JUMP
|
||
OPEN_DOOR
|
||
.LONG S_SET_WORD
|
||
.LONG ENEMY_HITALL ;HIT 'EM ALL
|
||
.WORD 1
|
||
|
||
.LONG S_DISPATCH_HERE ;RUN THROUGH HALL NONBOYS
|
||
.long WAVE1SUB1D+M_WAIT
|
||
.word 0
|
||
|
||
.LONG S_SET_WORD ;ACTIVATE ALL ENEMIES
|
||
.LONG OBJENEMIES
|
||
.WORD -1
|
||
|
||
.LONG S_CLR_SCROLL_FLAG
|
||
.LONG -1
|
||
|
||
.LONG S_SETUP_DSJ
|
||
.WORD 10*60
|
||
DOOR_WAIT
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
|
||
.LONG S_JUMP_IF_TRUE
|
||
.LONG GO_TO_HALLWAY
|
||
.LONG SCROLL_FLAG
|
||
|
||
.LONG S_DSJ
|
||
.LONG DOOR_WAIT
|
||
|
||
.LONG FLEABAG_EXIT+M_JUMP
|
||
|
||
GO_TO_HALLWAY
|
||
.LONG S_SET_WORD
|
||
.LONG ENEMY_HITALL ;DON'T HIT 'EM ALL
|
||
.WORD 0
|
||
|
||
.LONG S_CLR_SCROLL_FLAG
|
||
.LONG -1
|
||
|
||
.LONG S_ACCEL_TO_POINT
|
||
.WORD -60
|
||
.WORD 07AH,0
|
||
.LONG 0646AH-FLEAREL
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_DECEL_TO_POINT
|
||
.WORD -40
|
||
.WORD 08DH,0
|
||
.LONG 0916AH-FLEAREL
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINT
|
||
.WORD -30
|
||
.WORD 08DH,0
|
||
.LONG 0916AH-FLEAREL
|
||
.WORD 0
|
||
|
||
.LONG S_ALLOW_PORTALS
|
||
|
||
.LONG S_SETUP_DSJ
|
||
.WORD 60*5
|
||
|
||
SIGN_WAIT
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
|
||
.LONG S_JUMP_IF_TRUE
|
||
.LONG WERE_OUTTA_HERE
|
||
.LONG SCROLL_FLAG
|
||
|
||
.LONG S_DSJ
|
||
.LONG SIGN_WAIT
|
||
WERE_OUTTA_HERE
|
||
.LONG S_LOCKOUT_PORTALS
|
||
|
||
.LONG S_DISPATCH_HERE
|
||
.LONG WAVE1END+M_WAIT
|
||
.WORD 0
|
||
|
||
.LONG S_ACCEL_TO_POINT
|
||
.WORD -60
|
||
.WORD 08DH,0
|
||
.LONG 0746AH-FLEAREL
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_DECEL_TO_POINT
|
||
.WORD -40
|
||
.WORD 051H,0
|
||
.LONG 01F43H-FLEAREL
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG FLEABAG_KILL_CYCLES+M_JUMP
|
||
FLEABAG_EXIT
|
||
.LONG S_LOCKOUT_PORTALS
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG ENEMY_HITALL ;DON'T HIT 'EM ALL
|
||
.WORD 0
|
||
|
||
.LONG S_SET_WORD ;ACTIVATE ALL ENEMIES
|
||
.LONG OBJENEMIES
|
||
.WORD -1
|
||
|
||
.LONG S_DISPATCH_HERE
|
||
.LONG WAVE1END+M_WAIT
|
||
.WORD 0
|
||
FLEABAG_KILL_CYCLES
|
||
.LONG S_KILL_ALL_PROCS ;KILL ALL DAMAGE CYCLES
|
||
.WORD PID_DAMCC
|
||
|
||
.LONG S_CREATE_PROCR ;DAMAGE COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
.LONG 4,124,115,WOODBRN1x,CYCLE16 ;X BOARD UP
|
||
.WORD PID_DAMCC
|
||
.LONG 4,124,117,STUFFB,CYCLE16 ;NEON SIGN
|
||
.WORD 0
|
||
|
||
.LONG S_SOUND ;KILL SOUNDS
|
||
.LONG SND_CHAN1_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG S_SOUND
|
||
.LONG SND_CHAN2_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG S_SOUND
|
||
.LONG SND_CHAN3_OFF
|
||
|
||
.LONG S_EXIT_PORTAL
|
||
.word 1 ; sleep upon exit
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WAVE_UNIV
|
||
.LONG GXCX3
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WXBUFFER
|
||
.LONG 0480000H
|
||
|
||
.LONG S_SET_WORD
|
||
.LONG UNIVERR
|
||
.WORD 1
|
||
|
||
.LONG S_START_BGND
|
||
.LONG STAR_BGND
|
||
|
||
.LONG 0 ;RETURN
|
||
|
||
**************************************************************************
|
||
* *
|
||
* PORTAL_BOYS_ROOM *
|
||
* *
|
||
**************************************************************************
|
||
|
||
PORTAL_BOYS_ROOM
|
||
.LONG S_GOTO_POINTXY
|
||
.WORD 60*3
|
||
.WORD 0199H,0
|
||
.WORD 0
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG SCROLL_FLAG
|
||
.LONG 01AB3DH-FLEAOFF+2c00h
|
||
|
||
.LONG BOYS_ROOM_SUB+M_CALL
|
||
|
||
.LONG S_SET_VECTOR_TABLE
|
||
.LONG LA_OUTSIDE1_VECT_TABLE
|
||
|
||
.LONG S_EXIT_PORTAL ;JUST GO. LEAVE BATHROOM
|
||
.word 1
|
||
|
||
.LONG S_SOUND ;STOP WATER SOUND LOOPS
|
||
.LONG SND_BGND3_OFF
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
|
||
.LONG S_SOUND ;STOP BATHROOM SOUNDS
|
||
.LONG SND_CHAN1_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG S_SOUND
|
||
.LONG SND_CHAN2_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG S_SOUND
|
||
.LONG SND_CHAN3_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
|
||
.LONG S_CREATE_PROCR
|
||
.WORD PID_DAMCC
|
||
.LONG 3,30,24,NGLAMP3p,CYCLE16 ;CEILING LAMP
|
||
.WORD PID_DAMCC
|
||
.LONG 3,42,36,LMPBSE1p,CYCLE16 ;WALL LAMP
|
||
.WORD PID_DAMCC
|
||
.LONG 5,60,53,NONBXdm1p,CYCLE16 ;CRATE
|
||
.WORD 0
|
||
|
||
.LONG S_GOTO_POINTXY ;GO BACK TO LEFT BAR ENTRANCE
|
||
.WORD 60*2 ; DURATION
|
||
.WORD 08DH,0
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_SET_SCROLL_FLAG
|
||
.LONG 1
|
||
|
||
.LONG 0 ;RETURN
|
||
|
||
**************************************************************************
|
||
* *
|
||
* BOYS_ROOM *
|
||
* *
|
||
**************************************************************************
|
||
|
||
BOYS_ROOM
|
||
.LONG S_GOTO_POINTXY ;GO TO BATHROOM DOOR
|
||
.WORD 60*3 ; DURATION
|
||
.WORD 0268H,0
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG SCROLL_FLAG
|
||
.LONG 01849AH
|
||
|
||
.LONG BOYS_ROOM_SUB+M_CALL
|
||
|
||
.LONG S_SET_VECTOR_TABLE
|
||
.LONG LA_LOBBY_BAR_VECT_TABLE
|
||
|
||
.LONG S_EXIT_PORTAL ;JUST GO. LEAVE BATHROOM
|
||
.word 1
|
||
|
||
.LONG S_SOUND ;STOP WATER SOUND LOOPS
|
||
.LONG SND_BGND3_OFF
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
|
||
.LONG S_SOUND ;STOP BATHROOM SOUNDS
|
||
.LONG SND_CHAN1_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG S_SOUND
|
||
.LONG SND_CHAN2_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG S_SOUND
|
||
.LONG SND_CHAN3_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
|
||
.LONG S_KILL_ALL_PROCS ;KILL BATHROOM COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
|
||
.LONG S_GOTO_POINTXY ;GO BACK TO LEFT BAR ENTRANCE
|
||
.WORD 60*2 ; DURATION
|
||
.WORD 031DH,0
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG 0 ;RETURN
|
||
|
||
**************************************************************************
|
||
* *
|
||
* BOYS_ROOM_SUB *
|
||
* *
|
||
**************************************************************************
|
||
|
||
BOYS_ROOM_SUB
|
||
.LONG S_KILL_ALL_PROCS ;KILL BATHROOM COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
|
||
.LONG S_CREATE_PROCR ;CREATE DAMAGE COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
.LONG 12,15,2,SOCYCLE2,CYCLE16 ;SOAPBOX
|
||
.WORD PID_DAMCC
|
||
.LONG 6,61,50,JDORSM1,CYCLE16 ;BOYS STALL DOOR
|
||
.WORD 0
|
||
|
||
.LONG S_SET_VECTOR_TABLE
|
||
.LONG LA_BATHROOM_VECT_TABLE
|
||
|
||
.LONG S_AT_PORTAL_ENTRANCE
|
||
|
||
.LONG S_SET_PORTAL ; Search For Portal we are centered on
|
||
.WORD 15 ; and store it in a9
|
||
|
||
.LONG S_ENTER_PORTAL ; Set up and enter new universe
|
||
.long GXBATHRM+M_EP_DONT_STOP+M_EP_WAIT ; name of universe
|
||
; .long 02000H,-022A800H,0 ; Z, X, Y offsets
|
||
.long 02509H,-022A800H,0 ; Z, X, Y offsets
|
||
|
||
.LONG S_NONBOY_BATHROOM ;PUT NONBOYS IN STALLS
|
||
|
||
.LONG S_CLR_SCROLL_FLAG, -1
|
||
|
||
.LONG S_SOUND ;STOP LOBBY SOUNDS
|
||
.LONG SND_CHAN1_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG S_SOUND
|
||
.LONG SND_CHAN2_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG S_SOUND
|
||
.LONG SND_CHAN3_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
|
||
.LONG S_DECEL_TO_STOP ;STOP AT ENTRANCE
|
||
.WORD 4
|
||
|
||
.LONG S_GOTO_POINT
|
||
; .WORD 30
|
||
.WORD -10
|
||
.WORD -023H,0
|
||
; .LONG 010433H-0509H
|
||
.LONG 040C8H
|
||
.WORD 0
|
||
|
||
.long S_GOTO_POINTXY ;GO LEFT
|
||
.word 60*15
|
||
.WORD -01B4H,0H
|
||
; .word 0
|
||
.word 30
|
||
|
||
.long S_GOTO_POINTXY ;GO RIGHT
|
||
.word 60*10
|
||
.WORD -023H,0
|
||
.word 0
|
||
|
||
.LONG S_SET_SCROLL_FLAG, 1
|
||
|
||
.LONG S_KILL_ALL_PROCS ;KILL BATHROOM COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
|
||
.LONG 0 ;RETURN
|
||
|
||
**************************************************************************
|
||
* *
|
||
* PORTAL_GIRLS_ROOM *
|
||
* *
|
||
**************************************************************************
|
||
|
||
PORTAL_GIRLS_ROOM
|
||
.LONG S_GOTO_POINTXY
|
||
.WORD 60*3
|
||
.WORD -06DH,0
|
||
.WORD 0
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG SCROLL_FLAG
|
||
.LONG 01AB3DH-FLEAOFF+2c00h-1
|
||
|
||
.LONG S_KILL_ALL_PROCS ;KILL BATHROOM COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
|
||
.LONG S_CREATE_PROCR ;CREATE DAMAGE COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
.LONG 12,15,2,SOCYCLE2,CYCLE16 ;SOAPBOX
|
||
.WORD PID_DAMCC
|
||
.LONG 6,61,50,gJDORSM1,CYCLE16 ;GIRLS STALL DOOR
|
||
.WORD 0
|
||
|
||
.LONG S_SET_VECTOR_TABLE
|
||
.LONG LA_BATHROOM_VECT_TABLE
|
||
|
||
.LONG S_AT_PORTAL_ENTRANCE
|
||
|
||
.LONG S_SET_PORTAL ; Search For Portal we are centered on
|
||
.WORD 15 ; and store it in a9
|
||
|
||
.LONG S_ENTER_PORTAL ; Set up and enter new universe
|
||
.long GXBATHGI+M_EP_DONT_STOP+M_EP_WAIT ; Name of universe
|
||
.long 02569H,-02C81800H,0 ; Z, X, Y offsets
|
||
|
||
.IF AUSTRALIA
|
||
|
||
.LONG S_NONBOY_BATHROOM ;PUT NONBOYS IN STALLS
|
||
|
||
.ELSE
|
||
|
||
.LONG S_KERRI_BATHROOM ;PUT KERRIS IN STALLS
|
||
|
||
.ENDIF
|
||
|
||
.LONG GIRLS_ROOM_SUB+M_CALL
|
||
|
||
.LONG S_SET_VECTOR_TABLE
|
||
.LONG LA_OUTSIDE1_VECT_TABLE
|
||
|
||
.LONG S_EXIT_PORTAL ;JUST GO. LEAVE BATHROOM
|
||
.word 1
|
||
|
||
.LONG S_SOUND ;STOP WATER SOUND LOOPS
|
||
.LONG SND_BGND3_OFF
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
|
||
.LONG S_SOUND ;STOP BATHROOM SOUNDS
|
||
.LONG SND_CHAN1_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG S_SOUND
|
||
.LONG SND_CHAN2_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG S_SOUND
|
||
.LONG SND_CHAN3_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
|
||
.LONG S_CREATE_PROCR
|
||
.WORD PID_DAMCC
|
||
.LONG 3,30,24,NGLAMP3p,CYCLE16 ;CEILING LAMP
|
||
.WORD PID_DAMCC
|
||
.LONG 3,42,36,LMPBSE1p,CYCLE16 ;WALL LAMP
|
||
.WORD PID_DAMCC
|
||
.LONG 5,60,53,NONBXdm1p,CYCLE16 ;CRATE
|
||
.WORD 0
|
||
|
||
.LONG S_GOTO_POINTXY ;GO BACK TO RIGHT BAR ENTRANCE
|
||
.WORD 60*2 ; DURATION
|
||
.WORD 08DH,0
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_SET_SCROLL_FLAG
|
||
.LONG 1
|
||
|
||
.LONG 0 ;RETURN
|
||
|
||
**************************************************************************
|
||
* *
|
||
* GIRLS_ROOM *
|
||
* *
|
||
**************************************************************************
|
||
|
||
GIRLS_ROOM
|
||
.LONG S_GOTO_POINTXY ;GO TO BATHROOM DOOR
|
||
.WORD 60*3 ; DURATION
|
||
.WORD 054AH,0
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG SCROLL_FLAG
|
||
.LONG 01849AH-1
|
||
|
||
.LONG S_KILL_ALL_PROCS ;KILL BATHROOM COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
|
||
.LONG S_CREATE_PROCR ;CREATE DAMAGE COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
.LONG 12,15,2,SOCYCLE2,CYCLE16 ;SOAPBOX
|
||
.WORD PID_DAMCC
|
||
.LONG 6,61,50,gJDORSM1,CYCLE16 ;GIRLS STALL DOOR
|
||
.WORD 0
|
||
|
||
.LONG S_SET_VECTOR_TABLE
|
||
.LONG LA_BATHROOM_VECT_TABLE
|
||
|
||
.LONG S_AT_PORTAL_ENTRANCE
|
||
|
||
.LONG S_SET_PORTAL ; Search For Portal we are centered on
|
||
.WORD 15 ; and store it in a9
|
||
|
||
.LONG S_ENTER_PORTAL ; Set up and enter new universe
|
||
.long GXBATHGI+M_EP_DONT_STOP+M_EP_WAIT ; Name of universe
|
||
.long 02569H,-02C81800H,0 ; Z, X, Y offsets
|
||
|
||
; .LONG S_KERRI_BATHROOM ;PUT KERRIS IN STALLS
|
||
.LONG S_NONBOY_BATHROOM ;PUT NONBOYS IN STALLS
|
||
|
||
.LONG GIRLS_ROOM_SUB+M_CALL
|
||
|
||
.LONG S_SET_VECTOR_TABLE
|
||
.LONG LA_LOBBY_BAR_VECT_TABLE
|
||
|
||
.LONG S_EXIT_PORTAL ;JUST GO. LEAVE BATHROOM
|
||
.word 1
|
||
|
||
.LONG S_SOUND ;STOP WATER SOUND LOOPS
|
||
.LONG SND_BGND3_OFF
|
||
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
|
||
.LONG S_SOUND ;STOP BATHROOM SOUNDS
|
||
.LONG SND_CHAN1_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG S_SOUND
|
||
.LONG SND_CHAN2_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG S_SOUND
|
||
.LONG SND_CHAN3_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
|
||
.LONG S_KILL_ALL_PROCS ;KILL BATHROOM COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
|
||
.LONG S_GOTO_POINTXY ;GO BACK TO RIGHT BAR ENTRANCE
|
||
.WORD 60*2 ; DURATION
|
||
.WORD 0498H,0
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG 0 ;RETURN
|
||
|
||
**************************************************************************
|
||
* *
|
||
* GIRLS_ROOM_SUB *
|
||
* *
|
||
**************************************************************************
|
||
|
||
GIRLS_ROOM_SUB
|
||
.LONG S_CLR_SCROLL_FLAG, -1
|
||
|
||
.LONG S_SOUND ;STOP LOBBY SOUNDS
|
||
.LONG SND_CHAN1_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG S_SOUND
|
||
.LONG SND_CHAN2_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG S_SOUND
|
||
.LONG SND_CHAN3_OFF
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
|
||
.LONG S_DECEL_TO_STOP ;STOP AT ENTRANCE
|
||
.WORD 4
|
||
|
||
.LONG S_GOTO_POINT
|
||
.WORD -10
|
||
.WORD -02C8H,0
|
||
; .LONG 0FD63H
|
||
.LONG 03F61H
|
||
.word 0
|
||
|
||
.long S_GOTO_POINTXY ;GO RIGHT
|
||
.word 60*15
|
||
.WORD -0FAH,0H
|
||
.word 30
|
||
|
||
.long S_GOTO_POINTXY ;GO LEFT
|
||
.word 60*10
|
||
.WORD -02C8H,0
|
||
.word 0
|
||
|
||
.LONG S_SET_SCROLL_FLAG, 1
|
||
|
||
.LONG S_KILL_ALL_PROCS ;KILL BATHROOM COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
|
||
.LONG 0 ;RETURN
|
||
|
||
**************************************************************************
|
||
* *
|
||
* Kerri's Bedroom - OOOOOO La La! *
|
||
* *
|
||
**************************************************************************
|
||
OOLALA_ROOM
|
||
.LONG S_GOTO_PORTAL_ENTRANCE
|
||
; .word -0EF3h,1D8h ;X, Y
|
||
.word -0EF3h,0203H ;X, Y
|
||
.word 90 ; Ticks to get there
|
||
.word 0 ; SLEEP UPON ARRIVAL
|
||
|
||
LW S_SET_PORTAL, 15 ; Search For Portal we are centered on
|
||
|
||
.LONG S_ENTER_PORTAL ; Set up and enter new universe
|
||
.long GXBEDRM+M_EP_WAIT ; name of universe
|
||
.long -02000H,0510000H,0H ; Z, X, Y offsets
|
||
|
||
.LONG S_CLR_SCROLL_FLAG, -1
|
||
|
||
.LONG S_GOTO_POINT0
|
||
.WORD 60
|
||
.WORD 051H,0
|
||
.LONG 05E800H
|
||
.WORD 5 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINT0
|
||
.WORD 10
|
||
.WORD 051H,0
|
||
.LONG 060A00H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINT0
|
||
.WORD 10
|
||
.WORD 051H,0
|
||
.LONG 05E800H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINT0
|
||
.WORD 10
|
||
.WORD 051H,0
|
||
.LONG 060A00H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINT0
|
||
.WORD 10
|
||
.WORD 051H,0
|
||
.LONG 05E800H
|
||
.WORD 5 ; SLEEP UPON ARRIVAL
|
||
|
||
LW S_START_UID_DANIM, 1 << 8 + 31
|
||
|
||
LW S_WAIT_HERE, 100
|
||
|
||
.LONG S_GOTO_POINT0
|
||
.WORD 60
|
||
.WORD 051H,0
|
||
.LONG 060A00H
|
||
.WORD 10 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_GOTO_POINT0
|
||
.WORD 10
|
||
.WORD 051H,0
|
||
.LONG 05E800H
|
||
.WORD 0 ; SLEEP UPON ARRIVAL
|
||
|
||
.LONG S_SET_LONG, WAVE_IPLANE, STAR_BGND
|
||
|
||
.LONG S_LOCKOUT_PORTALS
|
||
|
||
LW S_EXIT_PORTAL,15
|
||
|
||
.LONG 0 ;RETURN
|
||
|
||
**************************************************************************
|
||
* *
|
||
* DSS_TEST *
|
||
* *
|
||
**************************************************************************
|
||
|
||
DSS_TEST
|
||
.LONG S_SET_LONG
|
||
.LONG ZFAR
|
||
.LONG 070000H
|
||
.LONG S_SET_WORD
|
||
.LONG UNIVERR
|
||
.WORD 1
|
||
DSS_GO
|
||
.LONG S_SET_WORD
|
||
.LONG DSSON
|
||
.WORD 1
|
||
DSS_TEST_LUPE
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG DSS_TEST_LUPE+M_JUMP
|
||
|
||
**************************************************************************
|
||
* *
|
||
* SECRET_TEST *
|
||
* *
|
||
**************************************************************************
|
||
|
||
SECRET_TEST
|
||
.LONG S_ALLOW_PORTALS
|
||
.LONG S_SET_LONG
|
||
.LONG ZFAR
|
||
.LONG 070000H
|
||
.LONG S_SET_WORD
|
||
.LONG UNIVERR
|
||
.WORD 1
|
||
|
||
.LONG ENDLESS_LUPE+M_JUMP
|
||
|
||
**************************************************************************
|
||
* *
|
||
* ENDLESS_LUPE *
|
||
* *
|
||
**************************************************************************
|
||
|
||
ENDLESS_LUPE
|
||
.LONG S_WAIT_HERE
|
||
.WORD 1
|
||
.LONG ENDLESS_LUPE+M_JUMP
|
||
|
||
*
|
||
* ATTRACT MODE SETUP
|
||
*
|
||
|
||
ATTRACT1
|
||
.LONG S_CREATE_PROCR ;START DAMAGE COLOR CYCLES
|
||
.WORD PID_DAMCC
|
||
.LONG 6,63,58,CAMTBLd1,CYCLE16 ;COCTAIL TABLE
|
||
.WORD PID_DAMCC
|
||
.LONG 4,124,117,STUFFB,CYCLE16 ;NEON SIGN
|
||
.WORD 0
|
||
|
||
.LONG S_CHANGE_ZFAR
|
||
.long 02B19Fh
|
||
|
||
.LONG S_SOUND, SND_RAVE ;Here we goooooo
|
||
|
||
.LONG JAKE_ENTRY+M_JUMP
|
||
|
||
ATTRACT4
|
||
.LONG S_SET_LONG
|
||
.LONG WYBUFFER
|
||
.LONG 0600000H
|
||
|
||
.LONG S_SET_LONG
|
||
.LONG WXBUFFER
|
||
.LONG 0400000H
|
||
|
||
.LONG S_CREATE_PROC
|
||
.word PID_IND
|
||
.LONG MAKE_AEROSMITH_2
|
||
|
||
LW S_WAIT_HERE, 10000
|
||
|
||
.end
|
||
|