wwf-wrestlemania/DNKSEQ1.ASM

626 lines
13 KiB
NASM
Executable File
Raw Permalink Blame History

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

**************************************************************
*
* Software: Jamie Rivett
* Initiated: 10/12/93
*
* COPYRIGHT (C) 1992 WILLIAMS ELECTRONICS GAMES, INC.
*
**************************************************************
.file "dnkseq1.asm"
.title "Krusty the Clown animation sequences"
.width 132
.option b,d,l,t
.mnolist
.include "macros.h"
.include "mproc.equ" ;Mproc equates
.include "sys.equ"
.include "game.equ"
.include "plyr.equ"
.include "anim.equ"
.include "sound.h"
.include "doinkimg.h"
.include "display.equ" ;Display proc equates
.include "ring.equ"
******************************************************************************
* EXTERNAL REFERENCES
.REF SMALL_RUN
.REF MAYBE_BOUNCE_ROPE
******************************************************************************
* SYMBOLS DEFINED IN THIS FILE
******************************************************************************
* EQUATES FOR THIS FILE
TSEC equ 53
#*****************************************************************************
*
* STANDS
SUBR dnk_zip_anim
WL TSEC*60,D2ST2B+FR3
.word ANI_END
SUBR dnk_stand2_anim
SUBR dnk_stand8_anim
.word ANI_SETMODE,MODE_NORMAL
.word ANI_SETSPEED,100h
WL 6,D2ST2B+FR3
WL 6,D2ST2B+FR4
WL 6,D2ST2B+FR5
WL 6,D2ST2B+FR6
WL 6,D2ST2B+FR5
WL 6,D2ST2B+FR4
.word ANI_REPEAT
SUBR dnk_stand4_anim
SUBR dnk_stand6_anim
.word ANI_SETMODE,MODE_NORMAL
.word ANI_SETSPEED,100h
WL 6,D4ST4E+FR3
WL 6,D4ST4E+FR4
WL 6,D4ST4E+FR5
WL 6,D4ST4E+FR6
WL 6,D4ST4E+FR5
WL 6,D4ST4E+FR4
.word ANI_REPEAT
#*****************************************************************************
*
* WALKING TORSOS
SUBR dnk_torso2_anim
SUBR dnk_torso8_anim
WL 4,D2TW2B+FR1
WL 4,D2TW2B+FR2
WL 4,D2TW2B+FR3
WL 4,D2TW2B+FR4
WL 4,D2TW2B+FR3
WL 4,D2TW2B+FR2
.word ANI_REPEAT
SUBR dnk_torso4_anim
SUBR dnk_torso6_anim
WL 4,D4TW4B+FR1
WL 4,D4TW4B+FR2
WL 4,D4TW4B+FR3
WL 4,D4TW4B+FR4
WL 4,D4TW4B+FR3
WL 4,D4TW4B+FR2
.word ANI_REPEAT
SUBR dnk_holdoh_anim
WL 999,D4TH4A+FR1
.word ANI_REPEAT
#*****************************************************************************
*
* WALKS FACING #2
SUBR dnk_walk1_f2_anim
WL 2,D2WL1A+FR1
WL 2,D2WL1A+FR2
WL 2,D2WL1A+FR3
WL 2,D2WL1A+FR4
WL 2,D2WL1A+FR5
WL 2,D2WL1A+FR6
WL 2,D2WL1A+FR7
WL 2,D2WL1A+FR8
WL 2,D2WL1A+FR9
WL 2,D2WL1A+FR10
WL 2,D2WL1A+FR11
WL 2,D2WL1A+FR12
WL 2,D2WL1A+FR13
WL 2,D2WL1A+FR14
WL 2,D2WL1A+FR15
WL 2,D2WL1A+FR16
WL 2,D2WL1A+FR17
WL 2,D2WL1A+FR18
.word ANI_REPEAT
SUBR dnk_walk2_f2_anim
WL 2,D2WL2A+FR1
WL 2,D2WL2A+FR2
WL 2,D2WL2A+FR3
WL 2,D2WL2A+FR4
WL 2,D2WL2A+FR5
WL 2,D2WL2A+FR6
WL 2,D2WL2A+FR7
WL 2,D2WL2A+FR8
WL 2,D2WL2A+FR9
WL 2,D2WL2A+FR10
WL 2,D2WL2A+FR11
WL 2,D2WL2A+FR12
WL 2,D2WL2A+FR13
WL 2,D2WL2A+FR14
WL 2,D2WL2A+FR15
WL 2,D2WL2A+FR16
WL 2,D2WL2A+FR17
.word ANI_REPEAT
SUBR dnk_walk4_f2_anim
WL 2,D2WL4B+FR1
WL 2,D2WL4B+FR2
WL 2,D2WL4B+FR3
WL 2,D2WL4B+FR4
WL 2,D2WL4B+FR5
WL 2,D2WL4B+FR6
WL 2,D2WL4B+FR7
WL 2,D2WL4B+FR8
WL 2,D2WL4B+FR9
WL 2,D2WL4B+FR10
WL 2,D2WL4B+FR11
WL 2,D2WL4B+FR12
WL 2,D2WL4B+FR13
WL 2,D2WL4B+FR14
WL 2,D2WL4B+FR15
WL 2,D2WL4B+FR16
WL 2,D2WL4B+FR17
WL 2,D2WL4B+FR18
.word ANI_REPEAT
SUBR dnk_walk5_f2_anim
WL 2,D2WL1A+FR18
WL 2,D2WL1A+FR17
WL 2,D2WL1A+FR16
WL 2,D2WL1A+FR15
WL 2,D2WL1A+FR14
WL 2,D2WL1A+FR13
WL 2,D2WL1A+FR12
WL 2,D2WL1A+FR11
WL 2,D2WL1A+FR10
WL 2,D2WL1A+FR9
WL 2,D2WL1A+FR8
WL 2,D2WL1A+FR7
WL 2,D2WL1A+FR6
WL 2,D2WL1A+FR5
WL 2,D2WL1A+FR4
WL 2,D2WL1A+FR3
WL 2,D2WL1A+FR2
WL 2,D2WL1A+FR1
.word ANI_REPEAT
SUBR dnk_walk6_f2_anim
WL 2,D2WL2A+FR17
WL 2,D2WL2A+FR16
WL 2,D2WL2A+FR15
WL 2,D2WL2A+FR14
WL 2,D2WL2A+FR13
WL 2,D2WL2A+FR12
WL 2,D2WL2A+FR11
WL 2,D2WL2A+FR10
WL 2,D2WL2A+FR9
WL 2,D2WL2A+FR8
WL 2,D2WL2A+FR7
WL 2,D2WL2A+FR6
WL 2,D2WL2A+FR5
WL 2,D2WL2A+FR4
WL 2,D2WL2A+FR3
WL 2,D2WL2A+FR2
WL 2,D2WL2A+FR1
.word ANI_REPEAT
SUBR dnk_walk8_f2_anim
WL 2,D2WL4B+FR18
WL 2,D2WL4B+FR17
WL 2,D2WL4B+FR16
WL 2,D2WL4B+FR15
WL 2,D2WL4B+FR14
WL 2,D2WL4B+FR13
WL 2,D2WL4B+FR12
WL 2,D2WL4B+FR11
WL 2,D2WL4B+FR10
WL 2,D2WL4B+FR9
WL 2,D2WL4B+FR8
WL 2,D2WL4B+FR7
WL 2,D2WL4B+FR6
WL 2,D2WL4B+FR5
WL 2,D2WL4B+FR4
WL 2,D2WL4B+FR3
WL 2,D2WL4B+FR2
WL 2,D2WL4B+FR1
.word ANI_REPEAT
#*****************************************************************************
*
* WALKS FACING #4
SUBR dnk_walk1_f4_anim
WL 2,D4WL5A+FR18
WL 2,D4WL5A+FR17
WL 2,D4WL5A+FR16
WL 2,D4WL5A+FR15
WL 2,D4WL5A+FR14
WL 2,D4WL5A+FR13
WL 2,D4WL5A+FR12
WL 2,D4WL5A+FR11
WL 2,D4WL5A+FR10
WL 2,D4WL5A+FR9
WL 2,D4WL5A+FR8
WL 2,D4WL5A+FR7
WL 2,D4WL5A+FR6
WL 2,D4WL5A+FR5
WL 2,D4WL5A+FR4
WL 2,D4WL5A+FR3
WL 2,D4WL5A+FR2
WL 2,D4WL5A+FR1
.word ANI_REPEAT
SUBR dnk_walk2_f4_anim
WL 2,D4WL2A+FR1
WL 2,D4WL2A+FR2
WL 2,D4WL2A+FR3
WL 2,D4WL2A+FR4
WL 2,D4WL2A+FR5
WL 2,D4WL2A+FR6
WL 2,D4WL2A+FR7
WL 2,D4WL2A+FR8
WL 2,D4WL2A+FR9
WL 2,D4WL2A+FR10
WL 2,D4WL2A+FR11
WL 2,D4WL2A+FR12
WL 2,D4WL2A+FR13
WL 2,D4WL2A+FR14
WL 2,D4WL2A+FR15
WL 2,D4WL2A+FR16
WL 2,D4WL2A+FR17
WL 2,D4WL2A+FR18
.word ANI_REPEAT
SUBR dnk_walk4_f4_anim
WL 2,D4WL4A+FR1
WL 2,D4WL4A+FR2
WL 2,D4WL4A+FR3
WL 2,D4WL4A+FR4
WL 2,D4WL4A+FR5
WL 2,D4WL4A+FR6
WL 2,D4WL4A+FR7
WL 2,D4WL4A+FR8
WL 2,D4WL4A+FR9
WL 2,D4WL4A+FR10
WL 2,D4WL4A+FR11
WL 2,D4WL4A+FR12
WL 2,D4WL4A+FR13
WL 2,D4WL4A+FR14
WL 2,D4WL4A+FR15
WL 2,D4WL4A+FR16
WL 2,D4WL4A+FR17
WL 2,D4WL4A+FR18
.word ANI_REPEAT
SUBR dnk_walk5_f4_anim
WL 2,D4WL5A+FR1
WL 2,D4WL5A+FR2
WL 2,D4WL5A+FR3
WL 2,D4WL5A+FR4
WL 2,D4WL5A+FR5
WL 2,D4WL5A+FR6
WL 2,D4WL5A+FR7
WL 2,D4WL5A+FR8
WL 2,D4WL5A+FR9
WL 2,D4WL5A+FR10
WL 2,D4WL5A+FR11
WL 2,D4WL5A+FR12
WL 2,D4WL5A+FR13
WL 2,D4WL5A+FR14
WL 2,D4WL5A+FR15
WL 2,D4WL5A+FR16
WL 2,D4WL5A+FR17
WL 2,D4WL5A+FR18
.word ANI_REPEAT
SUBR dnk_walk6_f4_anim
WL 2,D4WL2A+FR18
WL 2,D4WL2A+FR17
WL 2,D4WL2A+FR16
WL 2,D4WL2A+FR15
WL 2,D4WL2A+FR14
WL 2,D4WL2A+FR13
WL 2,D4WL2A+FR12
WL 2,D4WL2A+FR11
WL 2,D4WL2A+FR10
WL 2,D4WL2A+FR9
WL 2,D4WL2A+FR8
WL 2,D4WL2A+FR7
WL 2,D4WL2A+FR6
WL 2,D4WL2A+FR5
WL 2,D4WL2A+FR4
WL 2,D4WL2A+FR3
WL 2,D4WL2A+FR2
WL 2,D4WL2A+FR1
.word ANI_REPEAT
SUBR dnk_walk8_f4_anim
WL 2,D4WL4A+FR18
WL 2,D4WL4A+FR17
WL 2,D4WL4A+FR16
WL 2,D4WL4A+FR15
WL 2,D4WL4A+FR14
WL 2,D4WL4A+FR13
WL 2,D4WL4A+FR12
WL 2,D4WL4A+FR11
WL 2,D4WL4A+FR10
WL 2,D4WL4A+FR9
WL 2,D4WL4A+FR8
WL 2,D4WL4A+FR7
WL 2,D4WL4A+FR6
WL 2,D4WL4A+FR5
WL 2,D4WL4A+FR4
WL 2,D4WL4A+FR3
WL 2,D4WL4A+FR2
WL 2,D4WL4A+FR1
.word ANI_REPEAT
;2 TICKS = 1
#*****************************************************************************
*
* TURNS (STANDS)
SUBR dnk_2_to_4_turn_anim
SUBR dnk_8_to_6_turn_anim
.word ANI_SETMODE,MODE_INTURN|MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL 3,D1TT5Z+FR2 ;2.5
WL 3,D1TT5Z+FR3 ;3.5
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR dnk_4_to_2_turn_anim
SUBR dnk_6_to_8_turn_anim
.word ANI_SETMODE,MODE_INTURN|MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL 3,D1TT5Z+FR3 ;3.5
WL 3,D1TT5Z+FR2 ;2.5
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR dnk_4_to_6_turn_anim
SUBR dnk_6_to_4_turn_anim
.word ANI_SETMODE,MODE_INTURN|MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL 3,D1TT5Z+FR4 ;4.5
.word ANI_XFLIP
WL 3,D1TT5Z+FR4 ;4.5
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR dnk_2_to_8_turn_anim
SUBR dnk_8_to_2_turn_anim
.word ANI_SETMODE,MODE_INTURN|MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL 3,D1TT5Z+FR1 ;1.5
.word ANI_XFLIP
WL 3,D1TT5Z+FR1 ;1.5
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR dnk_4_to_8_turn_anim
SUBR dnk_6_to_2_turn_anim
.word ANI_SETMODE,MODE_INTURN|MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL 3,D1TT5Z+FR3 ;3.5
WL 3,D1TT5Z+FR2 ;2.5
WL 3,D1TT5Z+FR1 ;1.5
.word ANI_XFLIP
WL 3,D1TT5Z+FR1 ;1.5
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR dnk_2_to_6_turn_anim
SUBR dnk_8_to_4_turn_anim
.word ANI_SETMODE,MODE_INTURN|MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL 3,D1TT5Z+FR2 ;2.5
WL 3,D1TT5Z+FR3 ;3.5
WL 3,D1TT5Z+FR4 ;4.5
.word ANI_XFLIP
WL 3,D1TT5Z+FR4 ;4.5
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
#*****************************************************************************
*
* TURNS (TORSOS)
SUBR dnk_2_to_4_turn2_anim
SUBR dnk_8_to_6_turn2_anim
.word ANI_SETMODE,MODE_INTURN|MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL 3,D1TR5Z+FR2 ;2.5
.word ANI_SETFACING ;ANI_XFLIP <- not primary anim
WL 3,D1TR5Z+FR3 ;3.5
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR dnk_4_to_2_turn2_anim
SUBR dnk_6_to_8_turn2_anim
.word ANI_SETMODE,MODE_INTURN|MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL 3,D1TR5Z+FR3 ;3.5
.word ANI_SETFACING ;ANI_XFLIP <- not primary anim
WL 3,D1TR5Z+FR2 ;2.5
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR dnk_4_to_6_turn2_anim
SUBR dnk_6_to_4_turn2_anim
.word ANI_SETMODE,MODE_INTURN|MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL 3,D1TR5Z+FR4 ;4.5
.word ANI_SETFACING ;ANI_XFLIP <- not primary anim
WL 3,D1TR5Z+FR4 ;4.5
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR dnk_2_to_8_turn2_anim
SUBR dnk_8_to_2_turn2_anim
.word ANI_SETMODE,MODE_INTURN|MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL 3,D1TR5Z+FR1 ;1.5
.word ANI_SETFACING ;ANI_XFLIP <- not primary anim
WL 3,D1TR5Z+FR1 ;1.5
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR dnk_4_to_8_turn2_anim
SUBR dnk_6_to_2_turn2_anim
.word ANI_SETMODE,MODE_INTURN|MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL 3,D1TR5Z+FR4 ;4.5
.word ANI_SETFACING ;ANI_XFLIP <- not primary anim
WL 3,D1TR5Z+FR4 ;4.5
WL 3,D1TR5Z+FR3 ;3.5
.word ANI_SETFACING
WL 3,D1TR5Z+FR2 ;2.5
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR dnk_2_to_6_turn2_anim
SUBR dnk_8_to_4_turn2_anim
.word ANI_SETMODE,MODE_INTURN|MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL 3,D1TR5Z+FR2 ;2.5
.word ANI_SETFACING
WL 3,D1TR5Z+FR3 ;3.5
WL 3,D1TR5Z+FR4 ;4.5
.word ANI_SETFACING ;ANI_XFLIP <- not primary anim
WL 3,D1TR5Z+FR4 ;4.5
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
#*****************************************************************************
*
* RUNNING IN #3
SUBR dnk_run2_anim
.word ANI_SETMODE,MODE_NORMAL
.word ANI_SETSPEED,100h
;I'm turning on an attack box for the entire run sequence.
;I never turn it off.
.word ANI_ATTACK_ON,AMODE_RUN,-3,29,16,71 ;mode,x,y,w,h
WL ANI_GOTO,#run2
SUBR dnk_run_anim
.word ANI_SETMODE,MODE_UNINT ;uninterruptable
.word ANI_SETSPEED,100h
.word ANI_ATTACK_ON,AMODE_RUN,-3,29,16,71 ;mode,x,y,w,h
#lp1
WL 1,D3RN3B+FR1
; .word ANI_SOUND,run_snd
WL ANI_CODE,SMALL_RUN
WL 1,D3RN3B+FR1
WL 3,D3RN3B+FR2
WL 2,D3RN3B+FR3
WL 3,D3RN3B+FR4
WL 2,D3RN3B+FR5
#run2
.word ANI_SETMODE,MODE_NORMAL ;clear UNINT bit
.word ANI_ATTACK_ON,AMODE_RUN,-3,29,16,71 ;mode,x,y,w,h
WL 2,D3RN3B+FR6
; .word ANI_SOUND,run_snd
WL ANI_CODE,SMALL_RUN
WL 1,D3RN3B+FR6
WL 2,D3RN3B+FR7
WL 3,D3RN3B+FR8
WL 2,D3RN3B+FR9
WL 3,D3RN3B+FR10
WL 2,D3RN3B+FR11
WL ANI_GOTO,#lp1
#*****************************************************************************
*
* BOUNCE OFF ROPES
SUBR dnk_bounce_anim
.word ANI_SETMODE,MODE_UNINT|MODE_OVERLAP|MODE_NOAUTOFLIP| MODE_NOCONFINE ;uninterruptable
WL ANI_CODE,fix_bnc_flip
WL ANI_CODE,MAYBE_BOUNCE_ROPE
.word ANI_ZEROVELS
.word ANI_SETSPEED,100h
WL 2,D3BO3B+FR2
.word ANI_BOUNCEROPE,0
WL 1,D3BO3B+FR2
WL 2,D3BO3B+FR3
.word ANI_BOUNCEROPE,1
WL ANI_CODE,SMALL_RUN
; .word ANI_SOUND,run_snd
WL 1,D3BO3B+FR3
WL 2,D3BO3B+FR4
.word ANI_BOUNCEROPE,2
WL 1,D3BO3B+FR4
WL 2,D3BO3B+FR5
.word ANI_BOUNCEROPE,3
WL 1,D3BO3B+FR5
.word ANI_ZEROVELS
WL 2,D3BO3B+FR6
.word ANI_BOUNCEROPE,4
WL 1,D3BO3B+FR6
WL 3,D3BO3B+FR7
WL 2,D3BO3B+FR8
.word ANI_BOUNCEROPE,0
WL 1,D3BO3B+FR8
WL 2,D3BO3B+FR9
.word ANI_BOUNCEROPE,-1
WL ANI_CODE,SMALL_RUN
; .word ANI_SOUND,run_snd
WL 1,D3BO3B+FR9
WL 3,D3BO3B+FR10
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
******************************************************************************
SUBR fix_bnc_flip
;Check to see if I'm against ropes
move *a13(OBJ_XPOSINT),a14
cmpi RING_X_CENTER,a14
jrlt #onlft
;On right side
move *a13(OBJ_CONTROL),a14
andni M_FLIPH,a14
move a14,*a13(OBJ_CONTROL)
rets
#onlft
move *a13(OBJ_CONTROL),a14
ori M_FLIPH,a14
move a14,*a13(OBJ_CONTROL)
rets
******************************************************************************
.end