************************************************************** * * Software: Jamie Rivett * Initiated: 2/1/94 * * COPYRIGHT (C) 1992 WILLIAMS ELECTRONICS GAMES, INC. * ************************************************************** .file "rzrseq2.asm" .title "Razor Ramon 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 "display.equ" .include "ring.equ" .include "razorimg.h" .include "damage.equ" ****************************************************************************** * EXTERNAL REFERENCES ;BRET .ref H3RN3A,H4YR3A ;BAM BAM .ref B3RN3A,B4YR3A ;DOINK .ref D3RN3B,D4YR3B ;LEX .ref L3RN3B,L4YR3B ;RAZOR .ref rzr_facedown_getup_anim,rzr_faceup_getup_anim .ref rzr_faceup_getup2_anim ;SHAWN .ref S3RN3A,S4YR3A ;TAKER .ref U3RN3A,U4YR3B ;YOKO .ref Y3RN3C,Y4YR3A ;MISC .ref start_run_anim,SET_DIR_FACE,start_run_flung,CALL_MISSES .ref ckzpos,HIT_THE_MAT,SMALL_BOUNCE,win_announce .ref grnd_hit,no_bk_xvel,check_xvel,hit_nearest .ref DO_OTHERNONO,DO_COMBO_MESS,FIND_AND_KILL_ENDLESS .ref DO_CROWD_CHEER,choose_2or4,am_I_dead,DO_GRUNT .ref rzr_combo_pile_driver_anim,set_tbukl_confine .ref rzr_combo_rugshake_anim,set_tbukl_airmode .ref rzr_combo_hiptoss_anim,check_raisearm_bit .ref CALL_ANI_AVERAGE_MOVE .ref CALL_OTHER_AVERAGE .ref MOVE_NAME_ANNC .ref skick_delay #***************************************************************************** * * NORMAL #2 PUNCH SUBR rzr_2_punch_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R2PU3A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R2PU3A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R2PU3A+FR2 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim .word ANI_STARTATTACK,AT_PUNCH,6 WL 1,R2PU3A+FR2 WL 2,R2PU3A+FR3 .word ANI_ATTACK_ON,AMODE_PUNCH,23,95,56,11 ;mode,x,y,w,h WL 3,R2PU3A+FR4 .word ANI_ATTACK_OFF WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit ;this looks and sounds bogus ! WL ANI_SET_YVEL,38000h #no_hit WL 2,R2PU3A+FR4 WL 2,R2PU3A+FR5 WL 2,R2PU3A+FR6 WL 2,R2PU3A+FR7 .word ANI_WAITHITGND .word ANI_ZEROVELS WL 2,R2PU3A+FR8 .word ANI_SETMODE,MODE_NORMAL .word ANI_END ***************************************************************************** SUBR rzr_combo_punch_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .WORD ANI_CLEAR_COMBO WL 2,R2PU3A+FR1 .word ANI_STARTATTACK,AT_PUNCH,6 WL 2,R2PU3A+FR2 WL 2,R2PU3A+FR3 .WORD ANI_INC_COMBO .word ANI_ATTACK_ON,AMODE_PUNCH,23,35,76,61 ;mode,x,y,w,h WL 2,R2PU3A+FR4 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#no_hit2c WL ANI_IFBLOCKED,#no_hit2c .WORD ANI_INC_COMBO WL ANI_SET_YVEL,18000h WLLL ANI_SETOPPVELS,0,10000h,0h ;x,y,z vels WL 2,R2PU3A+FR4 WL 2,R2PU3A+FR5 WL 2,R2PU3A+FR6 WL 2,R2PU3A+FR7 .word ANI_WAITHITGND .word ANI_ZEROVELS WL 2,R2PU3A+FR8 WL 2,R4PU3A+FR1 .word ANI_STARTATTACK,AT_PUNCH,6 WL 2,R4PU3A+FR2 WL 2,R4PU3A+FR3 .word ANI_ATTACK_ON,AMODE_PUNCH,23,35,76,61 ;mode,x,y,w,h WL 2,R4PU3A+FR4 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#no_hit4c WL ANI_IFBLOCKED,#no_hit4c .WORD ANI_INC_COMBO WL ANI_SET_YVEL,18000h WLLL ANI_SETOPPVELS,0,10000h,0h ;x,y,z vels WL 2,R4PU3A+FR4 WL 2,R4PU3A+FR5 WL 2,R4PU3A+FR6 WL 2,R4PU3A+FR7 .word ANI_WAITHITGND .word ANI_ZEROVELS WL 3,R4PU3A+FR8 .word ANI_SET_RPTCOUNT,2 ;5 times #punch_loop_c .word ANI_CLR_BUTCOUNT WL 2,R2PU3A+FR1 .word ANI_STARTATTACK,AT_PUNCH,6 WL 1,R2PU3A+FR2 WL 1,R2PU3A+FR3 .word ANI_ATTACK_ON,AMODE_PUNCH,23,35,76,61 ;mode,x,y,w,h WL 1,R2PU3A+FR4 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#no_hit2c WL ANI_IFBLOCKED,#no_hit2c .WORD ANI_INC_COMBO WL ANI_SET_YVEL,18000h WLLL ANI_SETOPPVELS,0,10000h,0h ;x,y,z vels WL 1,R2PU3A+FR5 WL 1,R2PU3A+FR6 WL 1,R2PU3A+FR7 .word ANI_ZEROVELS WL 1,R2PU3A+FR8 WL 2,R4PU3A+FR1 .word ANI_STARTATTACK,AT_PUNCH,6 WL 1,R4PU3A+FR2 WL 1,R4PU3A+FR3 .word ANI_ATTACK_ON,AMODE_PUNCH,23,35,76,61 ;mode,x,y,w,h WL 1,R4PU3A+FR4 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#no_hit4c WL ANI_IFBLOCKED,#no_hit4c .WORD ANI_INC_COMBO WL ANI_SET_YVEL,18000h WLLL ANI_SETOPPVELS,0,10000h,0h ;x,y,z vels ; WL 1,R4PU3A+FR4 WL 1,R4PU3A+FR5 WL 1,R4PU3A+FR6 WL 1,R4PU3A+FR7 ; .word ANI_WAITHITGND .word ANI_ZEROVELS WL 1,R4PU3A+FR8 .word ANI_DEC_RPTCOUNT WL ANI_IF_RPTCOUNT,#punch_loop_c WWWL ANI_IF_BUTCOUNT_LT,KICKB_COUNT,1,#NEXT_CHECK_2 WL ANI_CHANGEANIM,rzr_combo_knee_fall_anim #NEXT_CHECK_2 WWWL ANI_IF_BUTCOUNT_LT,SKICKB_COUNT,1,#NEXT_CHECK_3 WL ANI_CHANGEANIM,rzr_combo_flying_kick_anim #NEXT_CHECK_3 WWWL ANI_IF_BUTCOUNT_LT,PUNCHB_COUNT,1,#exit_move WL ANI_CHANGEANIM,rzr_combo_super_kick_anim #exit_move .word ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO .word ANI_SETMODE,MODE_NORMAL .word ANI_END #no_hit2c .word ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO WL 3,R2PU3A+FR4 WL 3,R2PU3A+FR5 WL 3,R2PU3A+FR6 WL 3,R2PU3A+FR7 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #no_hit4c .word ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO WL 3,R4PU3A+FR4 WL 3,R4PU3A+FR5 WL 3,R4PU3A+FR6 WL 3,R4PU3A+FR7 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #************ * * NORMAL #4 PUNCH SUBR rzr_4_punch_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R4PU3A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R4PU3A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R4PU3A+FR2 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim .word ANI_STARTATTACK,AT_PUNCH,6 WL 1,R4PU3A+FR2 WL 2,R4PU3A+FR3 .word ANI_ATTACK_ON,AMODE_PUNCH,23,95,56,11 ;mode,x,y,w,h WL 3,R4PU3A+FR4 .word ANI_ATTACK_OFF WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit WL ANI_SET_YVEL,38000h #no_hit WL 2,R4PU3A+FR4 WL 2,R4PU3A+FR5 WL 2,R4PU3A+FR6 WL 2,R4PU3A+FR7 .word ANI_WAITHITGND .word ANI_ZEROVELS WL 2,R4PU3A+FR8 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #4 pummel - MK style SUBR rzr_4_pummel_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_STARTATTACK,AT_PUNCH,8 WL 1,R1TT5Z+FR3 WL 1,R1TT5Z+FR2 SUBR rzr_2_pummel_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_STARTATTACK,AT_PUNCH,6 .WORD ANI_ADD_MOVE,MOVE_C_5,2,2 .word ANI_SET_RPTCOUNT,3 ;rpt 2 times ; ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff ; LEAPATOPP 05h,999,4ah,50,90000h,TGT_HEAD,65,90,10 ; WL ANI_SET_YVEL,0h WL 2,R2PU3A+FR1 #rpt .word ANI_CLR_BUTCOUNT WL 2,R2PU3A+FR2 WL 2,R2PU3A+FR3 .word ANI_ATTACK_ON,AMODE_PUNCH2,32,87,49,16 ;mode,x,y,w,h WL 2,R2PU3A+FR4 .word ANI_ATTACK_OFF WL 2,R2PU3A+FR5 WL 2,R2PU3A+FR6 WWWL ANI_IF_BUTCOUNT_LT,SPUNCHB_COUNT,1,#ex2 .word ANI_CLR_BUTCOUNT WL 2,R2MK3A+FR3 .word ANI_ATTACK_ON,AMODE_PUNCH2,29,89,45,14 ;mode,x,y,w,h WL 2,R2MK3A+FR3 .word ANI_ATTACK_OFF WL 2,R2MK3A+FR4 WL 2,R2MK3A+FR5 WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit2 WL ANI_SET_YVEL,40000h WL 1,R2MK3A+FR5 .word ANI_WAITHITGND .word ANI_ZEROVELS WL ANI_GOTO,#missed #no_hit2 WL ANI_IFNOTSTATUS,#missed WL ANI_IFBLOCKED,#missedb ;Yes, I hit blocker WL 2,R2MK3A+FR6 WWWL ANI_IF_BUTCOUNT_LT,SPUNCHB_COUNT,2,#ex .word ANI_DEC_RPTCOUNT WL ANI_IF_RPTCOUNT,#rpt .word ANI_DRAW_NAME,32 .ref rzr_2_hiptoss_anim WL ANI_CHANGEANIM,rzr_2_hiptoss_anim #ex .word ANI_OFFSET,15,0,0 WL ANI_CHANGEANIM,rzr_4_uprcut_anim #ex2 .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_FACEUP .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END #missedb WLLL ANI_SETOPPVELS,50000h,18000h,0h ;x,y,z vels ; WL 2,R2MK3A+FR6 #missed WL 2,R2MK3A+FR6 .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_FACEUP .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END #****************************************************************************** SUBR rzr_combo_slash_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP .word ANI_ZEROVELS .word ANI_STARTATTACK,AT_PUNCH,13 WL 2,R3RD3D+FR1 WL 2,R3RD3D+FR2 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 8,999,56,56,90000h,TGT_HEAD,87,100,20 WL 4,R3RD3D+FR3 .word ANI_SOUND,013h WL 2,R3RD3D+FR4 WL 2,R3RD3D+FR5 WL 4,R3RD3D+FR6 ; .word ANI_WAITHITGND .word ANI_ZEROVELS .WORD ANI_CLR_STATUS .word ANI_ATTACK_ON,AMODE_RSLASH,-64,28,177,137 WL 2,R3RD3D+FR7 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#misseddcx .WORD ANI_INC_COMBO .word ANI_ZEROVELS WLLL ANI_SETOPPVELS,18000h,10000h,0h ;x,y,z vels WL 3,R3RD3D+FR8 WL 2,R3RD3D+FR9 WL 3,R3RD3D+FR11 WLLL ANI_SETOPPVELS,0h,0h,0h ;x,y,z vels .word ANI_STARTATTACK,AT_PUNCH,12 WL 1,R3RZ3S+FR2 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 8,999,56,56,90000h,TGT_HEAD,87,100,20 WL 2,R3RZ3S+FR2 WL 2,R3RZ3S+FR3 .word ANI_SOUND,014h WL 4,R3RZ3S+FR4 ; .word ANI_WAITHITGND .word ANI_ZEROVELS .WORD ANI_CLR_STATUS .word ANI_ATTACK_ON,AMODE_RSLASH,35,29,67,121 WL 2,R3RZ3S+FR5 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#misseducx .word ANI_ZEROVELS .WORD ANI_INC_COMBO WLLL ANI_SETOPPVELS,18000h,10000h,0h ;x,y,z vels WL 2,R3RZ3S+FR6 WL 2,R3RZ3S+FR7 WL 2,R3RZ3S+FR8 WLLL ANI_SETOPPVELS,0h,0h,0h ;x,y,z vels WL 3,R3RZ3S+FR9 WL 2,R3RZ3S+FR10 WL 3,R3RZ3S+FR12 .word ANI_SET_RPTCOUNT,3 ;5 times #slash_loop .word ANI_CLR_BUTCOUNT .word ANI_STARTATTACK,AT_PUNCH,13 WL 1,R3RD3D+FR1 WL 2,R3RD3D+FR2 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 5,999,56,56,70000h,TGT_HEAD,87,100,20 WL 1,R3RD3D+FR3 .word ANI_SOUND,013h WL 1,R3RD3D+FR4 WL 2,R3RD3D+FR5 WL 1,R3RD3D+FR6 ; .word ANI_WAITHITGND .word ANI_ZEROVELS .WORD ANI_CLR_STATUS .word ANI_ATTACK_ON,AMODE_RSLASH,-64,28,177,137 WL 1,R3RD3D+FR7 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#misseddcx .WORD ANI_INC_COMBO .word ANI_ZEROVELS WLLL ANI_SETOPPVELS,18000h,10000h,0h ;x,y,z vels WL 1,R3RD3D+FR8 WL 2,R3RD3D+FR9 WL 1,R3RD3D+FR11 WLLL ANI_SETOPPVELS,0h,0h,0h ;x,y,z vels .word ANI_STARTATTACK,AT_PUNCH,12 WL 1,R3RZ3S+FR2 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 5,999,56,56,70000h,TGT_HEAD,87,100,20 WL 1,R3RZ3S+FR2 WL 1,R3RZ3S+FR3 .word ANI_SOUND,014h WL 2,R3RZ3S+FR4 ; .word ANI_WAITHITGND .word ANI_ZEROVELS .WORD ANI_CLR_STATUS .word ANI_ATTACK_ON,AMODE_RSLASH,35,29,67,121 WL 1,R3RZ3S+FR5 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#misseducx .word ANI_ZEROVELS .WORD ANI_INC_COMBO WLLL ANI_SETOPPVELS,18000h,10000h,0h ;x,y,z vels WL 1,R3RZ3S+FR6 WL 2,R3RZ3S+FR7 WL 1,R3RZ3S+FR8 WLLL ANI_SETOPPVELS,0h,0h,0h ;x,y,z vels WL 1,R3RZ3S+FR9 WL 1,R3RZ3S+FR10 .word ANI_DEC_RPTCOUNT WL ANI_IF_RPTCOUNT,#slash_loop WWWL ANI_IF_BUTCOUNT_LT,SPUNCHB_COUNT,1,#NEXT_CHECK_2 WL ANI_CHANGEANIM,rzr_combo_pile_driver_anim #NEXT_CHECK_2 WWWL ANI_IF_BUTCOUNT_LT,SKICKB_COUNT,1,#exit_move WL ANI_CHANGEANIM,rzr_combo_rugshake_anim #exit_move .word ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END #misseddcx .word ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO WL 3,R3RD3D+FR8 WL 3,R3RD3D+FR9 WL 3,R3RD3D+FR11 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END #misseducx .word ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO WL 2,R3RZ3S+FR6 WL 3,R3RZ3S+FR7 WL 2,R3RZ3S+FR8 WL 3,R3RZ3S+FR9 WL 2,R3RZ3S+FR10 WL 3,R3RZ3S+FR12 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END #************ * * #3 BLADE DOWN-SLASH SUBR rzr_3_dslash_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_STARTATTACK,AT_PUNCH,13 WL ANI_CODE,spunch_delay WL ANI_IFNOTSTATUS,#none0 WL 3,R3RD3D+FR1 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 14,999,80-5,56,90000h,TGT_HEAD,67,100,20 WL 3,R3RD3D+FR2 WL 3,R3RD3D+FR3 .word ANI_SOUND,013h WL 3,R3RD3D+FR4 WL 3,R3RD3D+FR5 WL 3,R3RD3D+FR6 .word ANI_ZERO_XZVELS .word ANI_ATTACK_ON,AMODE_RSLASH,-64,28,177,137 WL 3,R3RD3D+FR7 .word ANI_ATTACK_OFF .WORD ANI_ADD_MOVE,MOVE_C_8,2,2 WL ANI_IFBLOCKED,#cont WWL ANI_SLIDE_BACK,30h,-70000h,#nox WL ANI_SET_YVEL,40000h #nox WL 4,R3RD3D+FR8 WL 4,R3RD3D+FR9 WL 4,R3RD3D+FR11 .word ANI_WAITHITGND .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END #none0 WL 2,R3RD3D+FR1 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 8,999,80,56,90000h,TGT_HEAD,67,100,20 WL 2,R3RD3D+FR2 WL 2,R3RD3D+FR3 .word ANI_SOUND,013h WL 2,R3RD3D+FR4 WL 2,R3RD3D+FR5 WL 2,R3RD3D+FR6 ; .word ANI_WAITHITGND ; .word ANI_ZEROVELS .word ANI_ZERO_XZVELS .word ANI_ATTACK_ON,AMODE_RSLASH,-64,28,177,137 WL 2,R3RD3D+FR7 .word ANI_ATTACK_OFF .WORD ANI_ADD_MOVE,MOVE_C_8,2,2 WL ANI_IFBLOCKED,#cont WWL ANI_SLIDE_BACK,30h,-70000h,#no WL ANI_SET_YVEL,40000h #no WL 2,R3RD3D+FR8 WL 2,R3RD3D+FR9 WL 2,R3RD3D+FR11 .word ANI_WAITHITGND .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END #cont WL 2,R3RD3D+FR8 WL 10,R3RD3D+FR9 WL 3,R3RD3D+FR11 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END #************ * * #3 BLADE DOWN-SLASH TO HEAD SUBR rzr_dslash_to_head_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_DETACH .word ANI_STARTATTACK,AT_PUNCH,13 WL 2,R3RD3D+FR1 WL 2,R3RD3D+FR2 WL 3,R3RD3D+FR3 .word ANI_SOUND,013h WL 2,R3RD3D+FR4 WL 2,R3RD3D+FR5 WL 2,R3RD3D+FR6 .word ANI_ATTACK_ON,AMODE_RSLASH,-64,28,177,137 WL 3,R3RD3D+FR7 .word ANI_ATTACK_OFF WL 3,R3RD3D+FR8 WL 3,R3RD3D+FR9 WL 3,R3RD3D+FR11 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #************ * * #3 BLADE UP-SLASH SUBR rzr_3_uslash_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_ZEROVELS .word ANI_STARTATTACK,AT_PUNCH,12 .WORD ANI_ADD_MOVE,MOVE_C_5,2,2 .ref spunch_delay WL ANI_CODE,spunch_delay WL ANI_IFNOTSTATUS,#none WL 3,R3RZ3S+FR2 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 12,999,55-5,52,90000h,TGT_HEAD,67,100,20 WL 6,R3RZ3S+FR2 WL 2,R3RZ3S+FR3 .word ANI_SOUND,014h WL 2,R3RZ3S+FR4 .word ANI_WAITHITGND .word ANI_ZEROVELS .word ANI_ATTACK_ON,AMODE_RSLASH,35,29,67,121 WL 3,R3RZ3S+FR5 .word ANI_ATTACK_OFF WWL ANI_SLIDE_BACK,38h,-70000h,#no_hit WL ANI_SET_YVEL,40000h #no_hit WL 3,R3RZ3S+FR6 WL 4,R3RZ3S+FR7 WL 3,R3RZ3S+FR8 WL 4,R3RZ3S+FR9 WL 3,R3RZ3S+FR10 WL 4,R3RZ3S+FR12 .word ANI_ZEROVELS .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END #none WL 2,R3RZ3S+FR2 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 10,999,55,52,90000h,TGT_HEAD,67,100,20 WL 6,R3RZ3S+FR2 WL 2,R3RZ3S+FR3 .word ANI_SOUND,014h WL 2,R3RZ3S+FR4 .word ANI_WAITHITGND .word ANI_ZEROVELS .word ANI_ATTACK_ON,AMODE_RSLASH,35,29,67,121 WL 3,R3RZ3S+FR5 .word ANI_ATTACK_OFF WWL ANI_SLIDE_BACK,38h,-70000h,#no_hita WL ANI_SET_YVEL,40000h #no_hita WL 3,R3RZ3S+FR6 WL 3,R3RZ3S+FR7 WL 3,R3RZ3S+FR8 WL 3,R3RZ3S+FR9 WL 3,R3RZ3S+FR10 WL 3,R3RZ3S+FR12 .word ANI_ZEROVELS .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END #************ * * #3 BLADE UP-SLASH TO HEAD SUBR rzr_uslash_to_head_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_ZEROVELS .word ANI_DETACH .word ANI_STARTATTACK,AT_PUNCH,10 WL 6,R3RZ3S+FR2 WL 2,R3RZ3S+FR3 .word ANI_SOUND,014h WL 2,R3RZ3S+FR4 .word ANI_ATTACK_ON,AMODE_RSLASH,35,29,67,121 WL 4,R3RZ3S+FR5 .word ANI_ATTACK_OFF WL 2,R3RZ3S+FR6 WL 3,R3RZ3S+FR7 WL 2,R3RZ3S+FR8 WL 3,R3RZ3S+FR9 WL 2,R3RZ3S+FR10 WL 3,R3RZ3S+FR12 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #4 UPPERCUT SUBR rzr_combo_uppercut_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_ZEROVELS .word ANI_STARTATTACK,AT_UPRCUT,9 WL 3,R4UP3C+FR1 WL 3,R4UP3C+FR2 WL 3,R4UP3C+FR3 .word ANI_ATTACK_ON,AMODE_UPRCUT,30,77-20,42,65+20 .word ANI_ZEROVELS WL 5,R4UP3C+FR4 .word ANI_ATTACK_OFF WWL ANI_SLIDE_BACK,30h,-70000h,#no_hitc WL ANI_SET_YVEL,38000h WL ANI_GOTO,#AVOID #no_hitc ; .word ANI_SET_ATTACH WL ANI_CODE,SET_OPP_GRAV_LOW WLLL ANI_SETOPPVELS,0000H,100000h,0h ;x,y,z vels .WORD ANI_INC_COMBO #AVOID WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO .word ANI_DETACH WL 50,R4UP3C+FR4 WL 4,R4UP3C+FR5 WL 4,R4UP3C+FR6 WL ANI_CODE,SET_OPP_GRAV_NORM WL 3,R4UP3C+FR7 WL 3,R4UP3C+FR8 .word ANI_SETMODE,MODE_NORMAL .word ANI_END SET_OPP_GRAV_NORM MOVE *A13(WHOIHIT),A10,L MOVI GRAVITY,A0 MOVE A0,*A10(OBJ_GRAVITY),L RETS SET_OPP_GRAV_LOW MOVE *A13(WHOIHIT),A10,L MOVI GRAVITY-1000H,A0 MOVE A0,*A10(OBJ_GRAVITY),L RETS ***************************************************************************** SUBR rzr_4_uprcut_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_STARTATTACK,AT_UPRCUT,6 WLW ANI_SET_XVEL,30000h,AM_FACE_REL WL 2,R4UP3C+FR1 WL 2,R4UP3C+FR2 WL 2,R4UP3C+FR3 .word ANI_ATTACK_ON,AMODE_UPRCUT,30,77-20,42,65+20 .word ANI_ZEROVELS WL 5,R4UP3C+FR4 .word ANI_ATTACK_OFF .WORD ANI_ADD_MOVE,MOVE_C_5,2,2 WL ANI_IFNOTSTATUS,#no_hit WL ANI_IFBLOCKED,#no_hit .word ANI_SHAKER,30 .word ANI_SET_ATTACH .word ANI_DEBRISAT,400,1,10,50,0 ;%chance, tbl index, x,y,z off .word ANI_DETACH .ref impact_sound WL ANI_CODE,impact_sound WL ANI_CODE,CALL_OTHER_AVERAGE WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit WL ANI_SET_YVEL,38000h #no_hit WL 12,R4UP3C+FR4 WL 3,R4UP3C+FR5 WL 3,R4UP3C+FR6 WL 3,R4UP3C+FR7 WL 3,R4UP3C+FR8 .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #2 HEADBUTT SUBR rzr_2_butt_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_ZEROVELS WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R2BC3B+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R2BC3B+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R2BC3B+FR2 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim .word ANI_STARTATTACK,AT_HDBUTT,5 WL 1,R2BC3B+FR2 WL 2,R2BC3B+FR3 WL 2,R2BC3B+FR4 .word ANI_ATTACK_ON,AMODE_HDBUTT,19,87,23,22 WL 3,R2BC3B+FR5 .word ANI_ATTACK_OFF WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit WL ANI_SET_YVEL,38000h #no_hit WL 3,R2BC3B+FR6 WL 3,R2BC3B+FR7 .word ANI_WAITHITGND .word ANI_ZEROVELS WL 3,R2BC3B+FR8 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #************ * * #4 HEADBUTT SUBR rzr_combo_butt_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_ZEROVELS WLW ANI_SET_XVEL,40000h,AM_FACE_REL WL 2,R4BC3A+FR1 WL 2,R4BC3A+FR2 .word ANI_STARTATTACK,AT_HDBUTT,4 WL 2,R4BC3A+FR3 WL 2,R4BC3A+FR4 WLW ANI_SET_XVEL,0h,AM_FACE_REL .word ANI_ATTACK_ON,AMODE_HDBUTT,29,53,33,39 WL 1,R4BC3A+FR5 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#no_hitc .word ANI_INC_COMBO ; .word ANI_SET_ATTACH WLLL ANI_SETOPPVELS,0h,10000h,0h ;x,y,z vels WL ANI_SET_YVEL,10000h WL 2,R4BC3A+FR5 WL 2,R4BC3A+FR6 WL 2,R4BC3A+FR7 .word ANI_WAITHITGND .word ANI_ZEROVELS WL 2,R4BC3A+FR8 .word ANI_SET_RPTCOUNT,4 ;5 times #butt_loop .word ANI_CLR_BUTCOUNT WLW ANI_SET_XVEL,20000h,AM_FACE_REL WL 1,R4BC3A+FR1 WL 1,R4BC3A+FR2 WL 1,R4BC3A+FR2 .word ANI_STARTATTACK,AT_HDBUTT,4 WL 1,R4BC3A+FR3 WL 1,R4BC3A+FR4 WLW ANI_SET_XVEL,0h,AM_FACE_REL .word ANI_ATTACK_ON,AMODE_HDBUTT,29,53,43,39 WL 1,R4BC3A+FR5 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#no_hitc .word ANI_INC_COMBO ; .word ANI_SET_ATTACH WLLL ANI_SETOPPVELS,0h,10000h,0h ;x,y,z vels WL ANI_SET_YVEL,10000h WL 1,R4BC3A+FR6 WL 1,R4BC3A+FR7 WL 1,R4BC3A+FR8 .word ANI_WAITHITGND .word ANI_ZEROVELS .word ANI_DEC_RPTCOUNT WL ANI_IF_RPTCOUNT,#butt_loop WWWL ANI_IF_BUTCOUNT_LT,PUNCHB_COUNT,1,#check_3 WL ANI_CHANGEANIM,rzr_combo_flying_kick_anim #check_3 WWWL ANI_IF_BUTCOUNT_LT,SKICKB_COUNT,1,#NEXT_CHECK_2 WL ANI_CHANGEANIM,rzr_combo_knee_fall_anim #NEXT_CHECK_2 WWWL ANI_IF_BUTCOUNT_LT,KICKB_COUNT,1,#NO_SLASHING WL ANI_CHANGEANIM,rzr_combo_slash_anim #NO_SLASHING WWWL ANI_IF_BUTCOUNT_LT,SPUNCHB_COUNT,1,#exit_move WL ANI_CHANGEANIM,rzr_combo_hiptoss_anim #exit_move .word ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO .word ANI_SETMODE,MODE_NORMAL .word ANI_END #no_hitc .word ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO WL 3,R4BC3A+FR6 WL 3,R4BC3A+FR7 .word ANI_WAITHITGND .word ANI_ZEROVELS WL 3,R4BC3A+FR8 .word ANI_SETMODE,MODE_NORMAL .word ANI_END ************ SUBR rzr_4_butt_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_ZEROVELS WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R4BC3A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R4BC3A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R4BC3A+FR2 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim .word ANI_STARTATTACK,AT_HDBUTT,5 WL 1,R4BC3A+FR2 WL 2,R4BC3A+FR3 WL 2,R4BC3A+FR4 .word ANI_ATTACK_ON,AMODE_HDBUTT,29,93,23,19 WL 3,R4BC3A+FR5 .word ANI_ATTACK_OFF WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit WL ANI_SET_YVEL,38000h #no_hit WL 3,R4BC3A+FR6 WL 3,R4BC3A+FR7 .word ANI_WAITHITGND .word ANI_ZEROVELS WL 3,R4BC3A+FR8 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * NORMAL KICK SUBR rzr_combo_kick_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .WORD ANI_CLEAR_COMBO WL 2,R4KM3A+FR1 WL 1,R4KM3A+FR2 WL 1,R4KM3A+FR2 .word ANI_STARTATTACK,AT_KICK,4 WL 2,R4KM3A+FR3 WL 2,R4KM3A+FR4 .word ANI_INC_COMBO .word ANI_ATTACK_ON,AMODE_KICK,8,35,75,55 ;mode,x,y,w,h WL 1,R4KM3A+FR5 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#missed .word ANI_INC_COMBO WLLL ANI_SETOPPVELS,0h,10000h,0h ;x,y,z vels WL ANI_SET_YVEL,18000h WL 6,R4KM3A+FR5 .word ANI_WAITHITGND .word ANI_ZEROVELS WL 2,R4KM3A+FR6 WL 2,R4KM3A+FR7 WL 2,R4KM3A+FR8 .word ANI_SET_RPTCOUNT,3 ;5 times #kick_loop .word ANI_CLR_BUTCOUNT WL 1,R4KM3A+FR1 WL 1,R4KM3A+FR2 WL 1,R4KM3A+FR2 .word ANI_STARTATTACK,AT_KICK,4 WL 1,R4KM3A+FR3 WL 1,R4KM3A+FR4 .word ANI_ATTACK_ON,AMODE_KICK,8,35,75,55 ;mode,x,y,w,h WL 2,R4KM3A+FR5 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#missed .word ANI_INC_COMBO ; .word ANI_SET_ATTACH WLLL ANI_SETOPPVELS,0h,10000h,0h ;x,y,z vels WL ANI_SET_YVEL,10000h WL 1,R4KM3A+FR5 WL 1,R4KM3A+FR6 WL 1,R4KM3A+FR7 WL 1,R4KM3A+FR8 .word ANI_ZEROVELS .word ANI_DEC_RPTCOUNT WL ANI_IF_RPTCOUNT,#kick_loop WWWL ANI_IF_BUTCOUNT_LT,KICKB_COUNT,1,#check_3 WL ANI_CHANGEANIM,rzr_combo_flying_kick_anim #check_3 WWWL ANI_IF_BUTCOUNT_LT,SKICKB_COUNT,1,#NEXT_CHECK_2 WL ANI_CHANGEANIM,rzr_combo_knee_fall_anim #NEXT_CHECK_2 WWWL ANI_IF_BUTCOUNT_LT,PUNCHB_COUNT,1,#end_in_4c WL ANI_CHANGEANIM,rzr_combo_butt_anim #missed WL 3,R4KM3A+FR6 WL 3,R4KM3A+FR7 WL 3,R4KM3A+FR8 #end_in_4c .word ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO WL 3,R4KM3A+FR9 WL 3,R4KM3A+FR10 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END ***************************************************************************** SUBR rzr_4_kick2_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP WL 1,R4KM3A+FR1 WL ANI_GOTO,#cont2a SUBR rzr_2_kick_anim SUBR rzr_4_kick_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R4KM3A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R4KM3A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R4KM3A+FR2 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim #cont2a .word ANI_STARTATTACK,AT_KICK,5 WL 1,R4KM3A+FR2 WL 2,R4KM3A+FR3 WL 1,R4KM3A+FR4 WL ANI_SET_YVEL,20000h .word ANI_ATTACK_ON,AMODE_KICK,8,35,75,55 ;mode,x,y,w,h WL 2,R4KM3A+FR5 .word ANI_ATTACK_OFF WWL ANI_SLIDE_BACK,30h,-70000h,#no_slide WL ANI_SET_YVEL,30000h #no_slide WL 3,R4KM3A+FR5 .word ANI_WAITHITGND .word ANI_ZEROVELS WL 2,R4KM3A+FR6 WL 2,R4KM3A+FR7 WL 2,R4KM3A+FR8 WL ANI_CODE,choose_2or4 WL ANI_IFSTATUS,#end_in_4 #end_in_2 WL 2,R2KM3X+FR9 .word ANI_FACEUP .word ANI_SETMODE,MODE_NORMAL .word ANI_END #end_in_4 WL 2,R4KM3A+FR9 WL 2,R4KM3A+FR10 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #2 SUPER KICK SUBR rzr_combo_super_kick_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_ZEROVELS WL 2,R4KM3A+FR1 .word ANI_OFFSET,5,0,0 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 12,999,80,40,90000h,TGT_CHEST,64,0,20 WL ANI_SET_YVEL,48000h WL ANI_CODE,no_bk_xvel WL 4,R4KM3A+FR2 WL 2,R4KM3A+FR3 WL 2,R4KM3A+FR4 .word ANI_ATTACK_ON,AMODE_KICK,8,35,75,55 ;mode,x,y,w,h WL 2,R4KM3A+FR5 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#missedcx WL ANI_IFBLOCKED,#missedbcx .WORD ANI_INC_COMBO WLLL ANI_SETOPPVELS,20000h,10000h,0h ;x,y,z vels .word ANI_ZERO_XZVELS WL ANI_SET_YVEL,30000h WL 2,R4KM3A+FR5 WL 2,R4KM3A+FR6 WLLL ANI_SETOPPVELS,0h,0h,0h ;x,y,z vels WL 2,R4KM3A+FR7 WL 2,R4KM3A+FR8 .word ANI_WAITHITGND .word ANI_ZEROVELS .word ANI_SET_RPTCOUNT,3 ;5 times #skick_loop .word ANI_CLR_BUTCOUNT WL 1,R4KM3A+FR1 .word ANI_OFFSET,5,0,0 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 5,999,80,40,90000h,TGT_CHEST,64,0,20 WL ANI_SET_YVEL,28000h WL ANI_CODE,no_bk_xvel WL 2,R4KM3A+FR2 WL 1,R4KM3A+FR3 WL 1,R4KM3A+FR4 .word ANI_ATTACK_ON,AMODE_KICK,8,35,75,55 ;mode,x,y,w,h WL 1,R4KM3A+FR5 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#missedcx WL ANI_IFBLOCKED,#missedbcx .WORD ANI_INC_COMBO WLLL ANI_SETOPPVELS,18000h,10000h,0h ;x,y,z vels .word ANI_ZERO_XZVELS WL ANI_SET_YVEL,10000h WL 1,R4KM3A+FR5 WL 1,R4KM3A+FR6 WL 1,R4KM3A+FR7 WL 1,R4KM3A+FR8 WLLL ANI_SETOPPVELS,0h,0h,0h ;x,y,z vels .word ANI_WAITHITGND .word ANI_ZEROVELS .word ANI_DEC_RPTCOUNT WL ANI_IF_RPTCOUNT,#skick_loop WWWL ANI_IF_BUTCOUNT_LT,SKICKB_COUNT,1,#NEXT_CHECK_2 WL ANI_CHANGEANIM,rzr_combo_knee_fall_anim #NEXT_CHECK_2 WWWL ANI_IF_BUTCOUNT_LT,KICKB_COUNT,1,#NEXT_CHECK_3 WL ANI_CHANGEANIM,rzr_combo_slash_anim #NEXT_CHECK_3 WWWL ANI_IF_BUTCOUNT_LT,SPUNCHB_COUNT,1,#NEXT_CHECK_4 WL ANI_CHANGEANIM,rzr_combo_hiptoss_anim #NEXT_CHECK_4 WWWL ANI_IF_BUTCOUNT_LT,PUNCHB_COUNT,1,#exitc WL ANI_SET_YVEL,40000h WL ANI_CHANGEANIM,rzr_combo_flying_kick_anim #missedcx WL ANI_CODE,CALL_MISSES WL ANI_GOTO,#missed_waitcx #missedbcx WL ANI_CODE,#blocked_vels #missed_waitcx WL 1,R4KM3A+FR5 .word ANI_WAITHITGND .word ANI_ZEROVELS WL 3,R4KM3A+FR6 WL 3,R4KM3A+FR7 WL 3,R4KM3A+FR8 #exitc .word ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO .word ANI_CLR_STATUS WL ANI_CODE,choose_2or4 WL ANI_IFSTATUS,#end_in_4c #end_in_2c WL 3,R2KM3X+FR9 .word ANI_FACEUP .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END #end_in_4c WL 3,R4KM3A+FR9 WL 3,R4KM3A+FR10 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END ***************************************************************************** SUBR rzr_2_super_kick_anim SUBR rzr_4_super_kick_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_STARTATTACK,AT_KICK,15 WL 3,R4KM3A+FR1 .word ANI_OFFSET,5,0,0 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 10,999,80-10,40,90000h,TGT_CHEST,64,0,20 WL ANI_SET_YVEL,48000h WL ANI_CODE,no_bk_xvel WL 4,R4KM3A+FR2 WL 3,R4KM3A+FR3 WL 3,R4KM3A+FR4 .word ANI_ATTACK_ON,AMODE_SUPER_KICK,8,35,75,55 ;mode,x,y,w,h WL 3,R4KM3A+FR5 .word ANI_ATTACK_OFF .WORD ANI_ADD_MOVE,MOVE_C_3,2,2 WL ANI_IFNOTSTATUS,#missed WL ANI_IFBLOCKED,#missedb WL ANI_CODE,CALL_ANI_AVERAGE_MOVE .word ANI_ZERO_XZVELS WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit WL ANI_SET_YVEL,30000h WLW ANI_SET_ZVEL,-28000h,AM_ABS WL ANI_GOTO,#vels_set #missed WL ANI_CODE,CALL_MISSES WL ANI_GOTO,#missed_wait #missedb WL ANI_CODE,#blocked_vels #missed_wait WL 1,R4KM3A+FR5 .word ANI_WAITHITGND .word ANI_ZEROVELS WL 3,R4KM3A+FR6 WL 3,R4KM3A+FR7 WL 3,R4KM3A+FR8 WL ANI_GOTO,#jump #no_hit WLW ANI_SET_XVEL,-20000h,AM_FACE_REL WLW ANI_SET_ZVEL,-28000h,AM_ABS WL ANI_SET_YVEL,20000h #vels_set WL 4,R4KM3A+FR5 WL ANI_CODE,skick_delay WL ANI_IFNOTSTATUS,#none .word ANI_WAITHITGND .word ANI_ZEROVELS WL 15,R4KM3A+FR5 #none WL 3,R4KM3A+FR6 WL 3,R4KM3A+FR7 WL 2,R4KM3A+FR8 .word ANI_WAITHITGND .word ANI_ZEROVELS #jump ; WL ANI_CODE,skick_delay ; WL ANI_IFNOTSTATUS,#none ; WL 20,R4KM3A+FR8 ;#none .word ANI_CLR_STATUS WL ANI_CODE,choose_2or4 WL ANI_IFSTATUS,#end_in_4 #end_in_2 WL 2,R2KM3X+FR9 .word ANI_FACEUP .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END #end_in_4 WL 2,R4KM3A+FR9 WL 2,R4KM3A+FR10 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END SUBRP #blocked_vels movi [3,0],a14 move a14,*a13(OBJ_YVEL),L move *a13(OBJ_XVEL),a14,L sra 1,a14 neg a14 move a14,*a13(OBJ_XVEL),L rets #***************************************************************************** SUBR rzr_kick_TB_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_SETPLYRMODE,MODE_INAIR2 .word ANI_STARTATTACK,AT_LEAPING,12 WL 2,R4KM3A+FR1 .word ANI_OFFSET,5,0,0 WL ANI_SET_YVEL,70000h WLW ANI_SET_XVEL,-20000h,AM_FACE_REL WL 2,R4KM3A+FR2 WL 2,R4KM3A+FR3 WL 2,R4KM3A+FR4 .word ANI_ATTACK_ON,AMODE_SPINKICK,8,35,75,55 ;mode,x,y,w,h WL 11,R4KM3A+FR5 .word ANI_ATTACK_OFF .word ANI_WAITHITGND .word ANI_ZEROVELS .word ANI_SETPLYRMODE,MODE_NORMAL WL 2,R4KM3A+FR6 WL 2,R4KM3A+FR7 WL 2,R4KM3A+FR8 WL 2,R4KM3A+FR9 WL 2,R4KM3A+FR10 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #4 KNEE SUBR rzr_2_knee_anim SUBR rzr_4_knee_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R4NM3C+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R4NM3C+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R4NM3C+FR2 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim .word ANI_STARTATTACK,AT_KNEE,7 WL 1,R4NM3C+FR2 WL 2,R4NM3C+FR3 WL 2,R4NM3C+FR4 WL 2,R4NM3C+FR5 .word ANI_ATTACK_ON,AMODE_KNEE,22,35,68,67 ;mode,x,y,w,h WL 3,R4NM3C+FR6 .word ANI_ATTACK_OFF WWL ANI_SLIDE_BACK,30h,-70000h,#no_slide WL ANI_SET_YVEL,30000h #no_slide WL 4,R4NM3C+FR6 .word ANI_WAITHITGND .word ANI_ZEROVELS WL 3,R4NM3C+FR7 WL 3,R4NM3C+FR8 WL 3,R4NM3C+FR9 WL 3,R4NM3C+FR10 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #4 KNEE SUBR rzr_combo_knee_fall_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_STARTATTACK,AT_KNEE,4 WL 2,R4NM3C+FR1 WL 2,R4NM3C+FR5 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 8,999,86,20,90000h,TGT_CHEST,26,74,0 .word ANI_ATTACK_ON,AMODE_BIGKNEE,22,55,38,27 ;mode,x,y,w,h WL 3,R4NM3C+FR6 .word ANI_ATTACK_OFF WLW ANI_SET_ZVEL,-20000h,AM_ABS WWL ANI_SLIDE_BACK,30h,-70000h,#no_hitc WL ANI_SET_YVEL,60000h WL ANI_GOTO,#finishc #no_hitc .WORD ANI_INC_COMBO .word ANI_ZERO_XZVELS #finishc .word ANI_WAITHITGND .word ANI_ZEROVELS .word ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO WL 3,R4NM3C+FR7 WL 3,R4NM3C+FR8 WL 3,R4NM3C+FR9 WL 3,R4NM3C+FR10 .word ANI_SETMODE,MODE_NORMAL .word ANI_END ***************************************************************************** SUBR rzr_4_knee_fall_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_STARTATTACK,AT_KNEE,4 WL 2,R4NM3C+FR1 WL 2,R4NM3C+FR5 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 15,999,86,20,90000h,TGT_CHEST,26,74,0 .word ANI_ATTACK_ON,AMODE_BIGKNEE,22,55,38,27 ;mode,x,y,w,h WL 3,R4NM3C+FR6 .word ANI_ATTACK_OFF WLW ANI_SET_ZVEL,-20000h,AM_ABS WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit WL ANI_SET_YVEL,60000h WL ANI_GOTO,#finish #no_hit .word ANI_ZERO_XZVELS #finish .word ANI_WAITHITGND .word ANI_ZEROVELS WL 3,R4NM3C+FR7 WL 3,R4NM3C+FR8 WL 3,R4NM3C+FR9 WL 3,R4NM3C+FR10 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #2 PUNCH FALLEN OPPONENT SUBR rzr_2_ground_punch_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP .word ANI_ZEROVELS .word ANI_SETSPEED,100h WL 2,R2PF2B+FR2 .word ANI_ATTACK_ON_Z,AMODE_HITCHECK,8,0,-40,16,43,50 WL 1,R2PF2B+FR2 .word ANI_ATTACK_OFF WL ANI_IFSTATUS,#no_leapat ;leapat... .word ANI_TARGET,TGT_KNEES,TGT_CHEST,ATM_CLOSEST ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 12,999,160,140,90000h,TGT_USER,19,0,-40 WL ANI_CODE,no_bk_xvel .word ANI_STARTATTACK,AT_LBDROP,12 WL 4,R2PF2B+FR3 WL 4,R2PF2B+FR5 .word ANI_WAITHITGND .word ANI_ZEROVELS WL ANI_CODE,SMALL_BOUNCE WL ANI_GOTO,#common #no_leapat .word ANI_STARTATTACK,AT_LBDROP,14 WL 3,R2PF2B+FR3 WL 3,R2PF2B+FR5 #common WL 3,R2PF2B+FR6 WL 3,R2PF2B+FR7 .word ANI_ATTACK_ON_Z,AMODE_LBOWDROP,8,0,-50,16,43,60 WL 5,R2PF2B+FR8 .word ANI_ATTACK_OFF .WORD ANI_ADD_MOVE,MOVE_C_2,2,2 WL ANI_IFNOTSTATUS,#missed WL ANI_CODE,SMALL_BOUNCE .word ANI_SHAKER,15 .word ANI_SHAKEALL,1 WL 2,R2PF2B+FR9 WL 2,R2PF2B+FR10 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #missed WL ANI_CODE,CALL_MISSES WL 3,R2PF2B+FR9 WL 3,R2PF2B+FR10 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #************ * * #4 PUNCH FALLEN OPPONENT SUBR rzr_4_ground_punch_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP .word ANI_ZEROVELS .word ANI_SETSPEED,100h WL 2,R4PF4B+FR2 .word ANI_ATTACK_ON_Z,AMODE_HITCHECK,0,-1,-10,22,30,50 WL 1,R4PF4B+FR2 .word ANI_ATTACK_OFF WL ANI_IFSTATUS,#no_leapat ;leapat... .word ANI_TARGET,TGT_KNEES,TGT_CHEST,ATM_CLOSEST ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 12,999,160,140,90000h,TGT_USER,13,0,40 WL ANI_CODE,no_bk_xvel .word ANI_STARTATTACK,AT_LBDROP,12 WL 3,R4PF4B+FR3 WL 3,R4PF4B+FR4 .word ANI_WAITHITGND .word ANI_ZEROVELS WL ANI_CODE,SMALL_BOUNCE WL ANI_GOTO,#common #no_leapat .word ANI_STARTATTACK,AT_LBDROP,14 WL 3,R4PF4B+FR3 WL 3,R4PF4B+FR4 #common WL 3,R4PF4B+FR5 WL 3,R4PF4B+FR7 .word ANI_ATTACK_ON_Z,AMODE_LBOWDROP,0,-1,-10,22,30,60 WL 1,R4PF4B+FR8 .word ANI_ATTACK_OFF .WORD ANI_ADD_MOVE,MOVE_C_2,2,2 WL ANI_IFNOTSTATUS,#missed WL ANI_CODE,SMALL_BOUNCE .word ANI_SHAKER,15 .word ANI_SHAKEALL,1 WL 4,R4PF4B+FR8 WL 3,R4PF4B+FR9 WL 3,R4PF4B+FR10 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #missed WL ANI_CODE,CALL_MISSES WL 4,R4PF4B+FR8 WL 3,R4PF4B+FR9 WL 3,R4PF4B+FR10 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #3 FLYING KICK #yoff equ 52 SUBR rzr_combo_flying_kick_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_SETSPEED,100h .word ANI_STARTATTACK,AT_LEAPING,25 WL 3,R3DC3C+FR2 .word ANI_OFFSET,0,#yoff,0 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 10,999,145,65,90000h,TGT_HEAD,65,41,0 WL ANI_CODE,no_bk_xvel .word ANI_SETPLYRMODE,MODE_INAIR WL 6,R3DC3C+FR4 WL 6,R3DC3C+FR5 WL 2,R3DC3C+FR6 .word ANI_ATTACK_ON,AMODE_FLYKICK,30,11,56,39 WL 6,R3DC3C+FR7 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#no_hitc .WORD ANI_INC_COMBO #no_hitc WL 4,R3DC3C+FR8 .word ANI_WAITHITGND .word ANI_ZEROVELS WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO WL ANI_CODE,HIT_THE_MAT WL 3,R3DC3C+FR9 WL 3,R3DC3C+FR10 .word ANI_XFLIP WL 3,R3RL1B+FR6 WL ANI_CHANGEANIM,rzr_facedown_getup_anim ***************************************************************************** SUBR rzr_flying_kick_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_STARTATTACK,AT_LEAPING,17 WL 3,R3DC3C+FR2 .word ANI_OFFSET,0,#yoff,0 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 17,999,155,65,90000h,TGT_HEAD,52,41,0 WL ANI_CODE,no_bk_xvel .word ANI_SETPLYRMODE,MODE_INAIR WL 5,R3DC3C+FR4 WL 5,R3DC3C+FR5 WL 2,R3DC3C+FR6 .word ANI_ATTACK_ON,AMODE_FLYKICK,30,11,56,39 WL 6,R3DC3C+FR7 .word ANI_ATTACK_OFF WL 4,R3DC3C+FR8 .WORD ANI_ADD_MOVE,MOVE_C_1,2,2 .word ANI_WAITHITGND .word ANI_ZEROVELS WL ANI_CODE,HIT_THE_MAT WL 3,R3DC3C+FR9 WL 3,R3DC3C+FR10 .word ANI_XFLIP WL 3,R3RL1B+FR6 WL ANI_CHANGEANIM,rzr_facedown_getup_anim #***************************************************************************** * * GRAB & THROW SUBR rzr_grab_throw_anim .word ANI_END #***************************************************************************** * * #2 STOMP ON FALLEN OPPONENT SUBR rzr_2_stomp_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_SETSPEED,100h .word ANI_ZEROVELS WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R2MP2A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R2MP2A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R2MP2A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim .word ANI_STARTATTACK,AT_STOMP,15 WL 3,R2MP2A+FR2 WL 2,R2MP2A+FR3 ;if we're going to miss, do a leapat .word ANI_ATTACK_ON_Z,AMODE_HITCHECK,0,-1,-40,17,32,50 WL 1,R2MP2A+FR3 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#leapat_stomp WL 2,R2MP2A+FR4 WL 2,R2MP2A+FR5 WL 2,R2MP2A+FR6 .word ANI_ATTACK_ON_Z,AMODE_STOMP,-4,-5,-40,25,40,50 WL 3,R2MP2A+FR7 .word ANI_ATTACK_OFF WL ANI_IFSTATUS,#hit WL ANI_CODE,CALL_MISSES #hit WL 3,R2MP2A+FR8 WL 3,R2MP2A+FR9 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #leapat_stomp .word ANI_TARGET,TGT_GROIN,TGT_CHEST,ATM_CLOSEST ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 14,999,160,140,90000h,TGT_USER,12,0,-40 WL ANI_CODE,no_bk_xvel .word ANI_STARTATTACK,AT_STOMP,14 WL 3,R2MP2A+FR4 WL 3,R2MP2A+FR5 WL 3,R2MP2A+FR6 .word ANI_WAITHITGND .word ANI_ZEROVELS .word ANI_ATTACK_ON_Z,AMODE_STOMP,-4,-5,-40,25,40,50 WL 3,R2MP2A+FR7 .word ANI_ATTACK_OFF WL ANI_IFSTATUS,#leapat_hit WL ANI_CODE,CALL_MISSES #leapat_hit WL 2,R2MP2A+FR8 WL 3,R2MP2A+FR9 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #4 STOMP ON FALLEN OPPONENT SUBR rzr_4_stomp_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_SETSPEED,100h .word ANI_ZEROVELS WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R4MP4D+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R4MP4D+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,R4MP4D+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim .word ANI_STARTATTACK,AT_STOMP,20 WL 3,R4MP4D+FR2 ;if we're going to miss, do a leapat .word ANI_ATTACK_ON_Z,AMODE_HITCHECK,9,-11,-10,19,36,50 WL 1,R4MP4D+FR2 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#leapat_stomp WL 2,R4MP4D+FR3 WL 2,R4MP4D+FR4 WL 2,R4MP4D+FR5 WL 2,R4MP4D+FR6 .word ANI_ATTACK_ON_Z,AMODE_STOMP,5,-15,-10,27,44,50 WL 3,R4MP4D+FR7 .word ANI_ATTACK_OFF WL ANI_IFSTATUS,#hit WL ANI_CODE,CALL_MISSES #hit WL 3,R4MP4D+FR8 WL 3,R4MP4D+FR9 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #leapat_stomp .word ANI_TARGET,TGT_GROIN,TGT_CHEST,ATM_CLOSEST ;too far. leap at the chest. ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 14,999,160,140,90000h,TGT_USER,16,0,40 WL ANI_CODE,no_bk_xvel .word ANI_STARTATTACK,AT_STOMP,14 WL 3,R4MP4D+FR3 WL 3,R4MP4D+FR4 WL 3,R4MP4D+FR5 WL 3,R4MP4D+FR6 .word ANI_WAITHITGND .word ANI_ZEROVELS .word ANI_ATTACK_ON_Z,AMODE_STOMP,5,-15,-10,27,44,50 WL 3,R4MP4D+FR7 .word ANI_ATTACK_OFF WL ANI_IFSTATUS,#leapat_hit WL ANI_CODE,CALL_MISSES #leapat_hit WL 3,R4MP4D+FR8 WL 3,R4MP4D+FR9 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #3 RUNNING ELBOW DROP #yoff equ 40 SUBR rzr_flying_elbow_anim .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP .word ANI_SETSPEED,100h .word ANI_STARTATTACK,AT_STOMP,36 WL 2,R4PJ4B+FR1 WL 2,R4PJ4B+FR2 .word ANI_TARGET,TGT_GROIN,TGT_HEAD,ATM_CLOSEST ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 30,999,160,140,90000h,TGT_USER,-39,0,30 WL ANI_CODE,no_bk_xvel .word ANI_SETPLYRMODE,MODE_INAIR .word ANI_OFFSET,0,#yoff,0 WL 3,R4PJ4B+FR3 WL 3,R4PJ4B+FR4 WL 3,R4PJ4B+FR5 .word ANI_WAITHITGND .word ANI_ZEROVELS WL ANI_CODE,HIT_THE_MAT .word ANI_SETPLYRMODE,MODE_ONGROUND .word ANI_ATTACK_ON_Z,AMODE_LBOWDROP,-49,-7,-10,46,31,50 WL 1,R4PJ4B+FR6 .word ANI_ATTACK_OFF WL ANI_SET_YVEL,40000h .word ANI_SHAKER,45 .word ANI_SHAKEROPES,2 .WORD ANI_ADD_MOVE,MOVE_C_4,2,2 WL ANI_IFSTATUS,#hit WL ANI_CODE,CALL_MISSES WL ANI_GOTO,#AVOID_HIT_CALL #hit WL ANI_CODE,CALL_OTHER_AVERAGE #AVOID_HIT_CALL WL 7,R4PJ4B+FR6 .word ANI_WAITHITGND .word ANI_ZEROVELS .word ANI_XFLIP WL 4,R3GU4A+FR3 WL ANI_CHANGEANIM,rzr_faceup_getup2_anim #***************************************************************************** * * TURNBUCKLE ELBOW #yoff equ 40 SUBR rzr_tbukl_elbow_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP|MODE_NOCONFINE|MODE_NOGRAVITY .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING .word ANI_SET_WRESTLER_XFLIP .word ANI_SCROLL_CTRL,SC_RESTORE .word ANI_STARTATTACK,AT_BSTOMP,39 WL 3,R4PJ4B+FR1 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff ; LEAPATOPP 36,190,190,190,90000h,TGT_GROIN,-15,#yoff,40 LEAPATOPP 36,210,210,210,90000h,TGT_CHEST,-15,#yoff,50 WL ANI_CODE,check_xvel ; .word ANI_SETPLYRMODE,MODE_INAIR2 WL ANI_CODE,set_tbukl_airmode .word ANI_GRAVITY_ON .word ANI_SHAKECORNER WL 3,R4PJ4B+FR2 .word ANI_OFFSET,0,#yoff,0 WL 3,R4PJ4B+FR3 WL 3,R4PJ4B+FR4 WL 1,R4PJ4B+FR5 WL ANI_CODE,set_tbukl_confine .word ANI_ATTACK_ON_Z,AMODE_BSTOMP,-78,0,-10,140,32,70 WWL ANI_IFOPPMODE,MODE_ONGROUND,#opp_onground WWL ANI_IFOPPMODE,MODE_DEAD,#opp_onground .word ANI_ATTACK_ON_Z,AMODE_BSTOMP,-68,28,-10,120,32,70 #opp_onground .word ANI_WAITHITGND .word ANI_ZEROVELS WL ANI_CODE,HIT_THE_MAT .word ANI_ATTACK_OFF .WORD ANI_ADD_MOVE,MOVE_C_5,2,2 WL ANI_IFSTATUS,#hit .word ANI_SHAKER,30 .word ANI_SHAKEALL,1 WL ANI_CODE,CALL_MISSES ; WL ANI_CODE,tbukl_miss_damage .word ANI_BOUNCE,5 .word ANI_SETPLYRMODE,MODE_INAIR WL 7,R4PJ4B+FR6 .word ANI_WAITHITGND .word ANI_ZEROVELS .word ANI_SETPLYRMODE,MODE_ONGROUND .word ANI_XFLIP .word ANI_FACEDOWN WL 4,R3GU4A+FR3 WL ANI_CHANGEANIM,rzr_faceup_getup2_anim #hit .word ANI_DRAW_NAME,18 WL ANI_SET_YVEL,50000h WLW ANI_SET_ZVEL,-10000h,AM_ABS WL ANI_CODE,ckzpos .word ANI_SETMODE,MODE_INAIR WL ANI_CODE,CALL_ANI_AVERAGE_MOVE .word ANI_SHAKER,45 .word ANI_SHAKEALL,2 WL 1,R4PJ4B+FR6 .word ANI_WAITHITGND .word ANI_ZEROVELS .word ANI_SETPLYRMODE,MODE_ONGROUND WL ANI_CODE,HIT_THE_MAT WL 4,R4PJ4B+FR6 .word ANI_XFLIP .word ANI_FACEDOWN WL 4,R3GU4A+FR3 WL ANI_CHANGEANIM,rzr_faceup_getup2_anim #***************************************************************************** * * SECOND WIND SUBR rzr_2ndwind_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP WL 3,R4SW4Z+FR1 WL 3,R4SW4Z+FR2 WL 3,R4SW4Z+FR3 WL 3,R4SW4Z+FR4 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * GRAB & FLING OPPONENT (INTO A RUN) SUBR rzr_2_grabfling_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_STARTATTACK,AT_PUPPET,10 WL 2,R1TT5Z+FR2 WL 2,R1TT5Z+FR3 WL ANI_GOTO,#cont SUBR rzr_4_grabfling_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_STARTATTACK,AT_PUPPET,8 #cont ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 8,50,20,40,90000h,TGT_CHEST,40,0,25 WL ANI_SET_YVEL,0000h WL 5,R4GF3B+FR1 .word ANI_ATTACK_ON,AMODE_PUPPET_NOFLAIL,31h,56,44,18 ;mode,x,y,w,h WWL ANI_WAITHITOPP,6,R4GF3B+FR2 .word ANI_ZERO_XZVELS WWL ANI_WAITHITOPP,2,R4GF3B+FR3 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#missedb .WORD ANI_ADD_MOVE,MOVE_C_8,2,2 WL ANI_IFBLOCKED,#missedb ;got him WL ANI_CODE,DO_GRUNT .ref CALL_SETUP WL ANI_CODE,CALL_SETUP .word ANI_ATTACHZ,0,0,10 ;x & y don't matter. .word ANI_SETOPPMODE,MODE_GHOST .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP|MODE_KEEPATTACHED ; attacker sequence WWLLW ANI_SUPERSLAVE2,10,R4GF3B+FR3,#puppet_tbl,0 WWLLW ANI_SUPERSLAVE2,5,R4GF3B+FR4,#puppet_tbl,1 WWLLW ANI_SUPERSLAVE2,3,R4GF3B+FR5,#puppet_tbl,2 WWLLW ANI_SUPERSLAVE2,3,R4GF3B+FR6,#puppet_tbl,3 WWLLW ANI_SUPERSLAVE2,3,R4GF3B+FR7,#puppet_tbl,4 WWLLW ANI_SUPERSLAVE2,3,R4GF3B+FR8,#puppet_tbl,5 WL ANI_SLAVEANIM,#strt_run_tbl .word ANI_CLROPPMODE,MODE_GHOST .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP .word ANI_DETACH WL 6,R4GF3B+FR9 WL 4,R4GF3B+FR10 .word ANI_OFFSET,-10,0,0 ;x,y,z .word ANI_SETFACING .word ANI_SETMODE,MODE_NORMAL .word ANI_END #missedb .ref fling_delay WL ANI_CODE,fling_delay WL ANI_IFNOTSTATUS,#missed WL 25,R4GF3B+FR3 #missed WL ANI_CODE,CALL_MISSES WL 6,R4GF3B+FR3 WL 3,R4GF3B+FR2 WL 3,R4GF3B+FR1 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END #puppet_tbl .long #Bret .long #Razor .long #Taker .long #Yokozuna .long #Shawn .long #BamBam .long #Doink .long #Adam .long #Lex #Bret LWWW H4YR3A+FR1,68,7,1 LWWW H4YR3A+FR2,60,5,1 LWWW H4YR3A+FR3,52,-1,1 LWWW H4YR3A+FR5,27,1,1 LWWW H3RN3A+FR1,3,-2,0 LWWW H3RN3A+FR2,-1,-2,0 #Razor LWWW R4YR3A+FR1,53,17,0 LWWW R4YR3A+FR2,34,14,0 LWWW R4YR3A+FR3,14,3,0 LWWW R4YR3A+FR4,-10,0,0 LWWW R3RN3D+FR11,-7,11,0 LWWW R3RN3D+FR12,-6,9,0 #Taker LWWW U4YR3B+FR2,48,18,0 LWWW U4YR3B+FR3,44,11,0 LWWW U4YR3B+FR4,21,10,0 LWWW U4YR3B+FR5,5,10,0 LWWW U3RN3A+FR2,-13,10,0 LWWW U3RN3A+FR2,-15,7,0 #Yokozuna LWWW Y4YR3A+FR1,68,11,1 LWWW Y4YR3A+FR4,40,9,1 LWWW Y4YR3A+FR5,24,1,1 LWWW Y4YR3A+FR7,-8,-9,1 LWWW Y3RN3C+FR7,19,8,0 LWWW Y3RN3C+FR8,20,4,0 #Shawn LWWW S4YR3A+FR2,41,5,1 LWWW S4YR3A+FR3,52,-7,1 LWWW S4YR3A+FR5,15,0,1 LWWW S4YR3A+FR6,6,-4,1 LWWW S3RN3A+FR2,19,5,0 LWWW S3RN3A+FR3,0,4,0 #BamBam LWWW B4YR3A+FR3,36,13,0 LWWW B4YR3A+FR4,46,5,0 LWWW B4YR3A+FR5,46,0,0 LWWW B4YR3A+FR7,-3,-7,0 LWWW B3RN3A+FR1,16,8,0 LWWW B3RN3A+FR2,17,7,0 #Doink LWWW D4YR3B+FR1,74,13,1 LWWW D4YR3B+FR2,62,13,1 LWWW D4YR3B+FR3,43,6,1 LWWW D4YR3B+FR4,19,5,1 LWWW D3RN3B+FR3,19,12,0 LWWW D3RN3B+FR4,-8,8,0 #Adam .long 0 #Lex LWWW L4YR3B+FR1,67,11,1 LWWW L4YR3B+FR2,47,2,1 LWWW L4YR3B+FR3,27,-2,1 LWWW L4YR3B+FR4,-31,-4,1 LWWW L3RN3B+FR2,-2,10,0 LWWW L3RN3B+FR3,8,3,0 #strt_run_tbl .long start_run_flung,start_run_flung,start_run_flung .long start_run_flung,start_run_flung,start_run_flung .long start_run_flung,start_run_flung,start_run_flung .long start_run_flung,start_run_flung,start_run_flung #***************************************************************************** * * HELD OVERHEAD ANIMATION SUBR rzr_heldoh_anim .word ANI_SETPLYRMODE,MODE_ATTACHED .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_NOGRAVITY .word ANI_SETSPEED,100h .word ANI_SETWORD,USR_VAR1,0 ;loop count WL ANI_CODE,DO_OTHERNONO #loop WL 3,R4MF4B+FR1 WL 3,R4MF4B+FR2 WL 3,R4MF4B+FR3 WL 3,R4MF4B+FR4 WL 3,R4MF4B+FR5 WL 3,R4MF4B+FR6 WL 3,R4MF4B+FR7 WL 3,R4MF4B+FR8 WL 3,R4MF4B+FR9 WL ANI_CODE,#inc_loop WL ANI_IFNOTSTATUS,#loop ;Fall out of overhead hold by reversing thru pickup frames .word ANI_DETACH .word ANI_SETMODE,MODE_NORMAL|MODE_OVERLAP .word ANI_SETPLYRMODE,MODE_INAIR WL ANI_CODE,FIND_AND_KILL_ENDLESS WL ANI_SET_YVEL,10000h WLW ANI_SET_XVEL,-40000h,AM_HIT_REL WLW ANI_SET_ZVEL,10000h,AM_ABS .word ANI_FRICTION,3000h WL 2,R4MF4B+FR6 .word ANI_OFFSET,-20,-50,0 ;x,y,z WL 4,R3MS3Z+FR4 WL 4,R3MS3Z+FR3 WL 4,R3MS3Z+FR2 WL 4,R3MS3Z+FR1 .word ANI_WAITHITGND WL 2,R2ST2C+FR3 .word ANI_FACEUP .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END ;Loop 4 times, then break out! #inc_loop move *a13(USR_VAR1),a0 inc a0 move a0,*a13(USR_VAR1) cmpi 3,a0 jrgt #breakout ; move *a13(ATTACH_PROC),a0,L ; jrz #breakout move *a13(ANIMODE),a1 andni MODE_STATUS,a1 move a1,*a13(ANIMODE) rets #breakout move *a13(ANIMODE),a1 ori MODE_STATUS,a1 move a1,*a13(ANIMODE) rets #***************************************************************************** * * #4 PUSH SUBR rzr_4_push_anim .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP WL ANI_SETFLAG,M_PUSH .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_STARTATTACK,AT_PUSH,18 WL 3,R4PS3A+FR3 WL 3,R4PS3A+FR5 WL 3,R4PS3A+FR6 .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ATTACK_ON, AMODE_PUSH,25,98,68,14 WL 3,R4PS3A+FR7 .word ANI_ATTACK_OFF WWL ANI_SLIDE_BACK,40h,-70000h,#no_hit ;range,vel,addr WL 15,R4PS3A+FR7 #no_hit WL 3,R4PS3A+FR7 WL ANI_IFSTATUS,#hit ;If missed on push, hold a little longer WL 5,R4PS3A+FR7 #hit WL 2,R4PS3A+FR7 WL 3,R4PS3A+FR8 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #4 BIG BOOT SUBR rzr_4_bigboot_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_STARTATTACK,AT_BIGBOOT,10 WL 2,R4KM3A+FR1 WL 2,R4KM3A+FR2 WL 2,R4KM3A+FR3 WL 2,R4KM3A+FR4 WL ANI_CODE,#clrcnt .word ANI_ATTACK_ON,AMODE_BIGBOOT,8,35,75,55 ;mode,x,y,w,h WWL ANI_WAITHITOPP,15,R4KM3A+FR5 #lp .word ANI_STARTATTACK,AT_BIGBOOT,5 WL 2,R4KM3A+FR5 WL ANI_CODE,#holdup WL ANI_IFSTATUS,#lp .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#missed .word ANI_DRAW_NAME,27 #missed WL 3,R4KM3A+FR6 WL 3,R4KM3A+FR7 WL 3,R4KM3A+FR8 WL ANI_CODE,choose_2or4 WL ANI_IFSTATUS,#end_in_4 #end_in_2 WL 3,R2KM3X+FR9 .word ANI_FACEUP .word ANI_SETMODE,MODE_NORMAL .word ANI_END #end_in_4 WL 3,R4KM3A+FR9 WL 3,R4KM3A+FR10 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END #clrcnt ;We are re-using BUT_COUNT in the player process clr a0 move a0,*a13(BUT_COUNT) rets #holdup move *a13(BUT_COUNT),a0 inc a0 move a0,*a13(BUT_COUNT) ;Max time to hold up in air (*2 ticks) cmpi 25,a0 jrgt #button_up move *a13(BUT_VAL_CUR),a0 btst PLAYER_SKICK_BIT,a0 ;still down? jrz #button_up ;Still holding... move *a13(ANIMODE),a1 ori MODE_STATUS,a1 move a1,*a13(ANIMODE) rets #button_up move *a13(ANIMODE),a1 andni MODE_STATUS,a1 move a1,*a13(ANIMODE) rets #***************************************************************************** SUBR rzr_roll_frames .word 7 ;speed .long 50000h ;z velocity .long 10000h*10/255 ;inv multiply (0-255 -> 0-10) .long R3RL1B+FR1 ;0 .long R3RL1B+FR2 ;1 .long R3RL1B+FR3 ;2 .long R3RL1B+FR4 ;3 .long R3RL1B+FR5 ;4 .long R3RL1B+FR6 ;5 .long R3RL1B+FR7 ;6 .long R3RL1B+FR8 ;7 .long R3RL1B+FR9 ;8 .long R3RL1B+FR10 ;9 .long R3RL1B+FR11 ;10 .long 0,0,0,0,0,0 ;FIX!! Make throw out of ring if close to ropes #***************************************************************************** * * FLIP/FALL FROM HIPTOSS SUBR rzr_tossed_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP .word ANI_SETSPEED,100h .word ANI_SETPLYRMODE,MODE_ONGROUND WL ANI_CODE,ckzpos .word ANI_GETUP,STAY_TIME WL ANI_CODE,HIT_THE_MAT WLW ANI_SET_XVEL,20000h,AM_HIT_REL WL ANI_SET_YVEL,50000h WL 4,R3AM3D+FR2 WL 4,R3AM3D+FR3 WL 4,R3AM3D+FR4 WL 4,R3AM3D+FR5 WL 4,R3AM3D+FR6 WL 4,R3AM3D+FR7 .word ANI_WAITHITGND WL ANI_CODE,SMALL_BOUNCE .word ANI_ZEROVELS WL 1,R3AM3D+FR1 .word ANI_WAITROLL WL ANI_CHANGEANIM,rzr_faceup_getup_anim ; .word ANI_END ;FIX!! Make throw out of ring if close to ropes #***************************************************************************** * * FLIP/FALL FROM BAM BAM DUCK TOSS SUBR rzr_tossed2_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP .word ANI_SETSPEED,100h WL ANI_CODE,ckzpos WLW ANI_SET_XVEL,60000h,AM_HIT_REL WL ANI_SET_YVEL,30000h .word ANI_OFFSET,20,20,0 ;x,y,z WL 4,R3TD3A+FR7 .word ANI_WAITHITGND .word ANI_ZEROVELS WL ANI_CODE,HIT_THE_MAT .word ANI_SHAKEALL,2 .word ANI_SHAKER,30 .word ANI_GETUP,STAY_TIME .word ANI_DAMAGE,D_HIPTOSS WL 4,R3TD3A+FR8 .WORD ANI_XFLIP WL 3,R3GU2A+FR1 WLW ANI_SET_XVEL,20000h,AM_HIT_REL WL ANI_SET_YVEL,50000h WL 4,R3AM3D+FR2 WL 4,R3AM3D+FR3 WL 4,R3AM3D+FR4 WL 4,R3AM3D+FR5 WL 4,R3AM3D+FR6 WL 4,R3AM3D+FR7 .word ANI_WAITHITGND WL ANI_CODE,SMALL_BOUNCE .word ANI_ZEROVELS WL 1,R3AM3D+FR1 .word ANI_WAITROLL WL ANI_CHANGEANIM,rzr_faceup_getup_anim ; .word ANI_END ****************************************************************************** * SUBR rzr_climbthru_side_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_NOCONFINE|MODE_NOCOLLIS .word ANI_SETSPEED,100h .word ANI_ZEROVELS WL ANI_CODE,SET_DIR_FACE .word ANI_SETFACING .WORD ANI_SET_WRESTLER_XFLIP WLW ANI_SET_XVEL,2c00h,AM_FACE_REL WL 3,R3CR3A+FR1 .word ANI_OFFSET,5,0,0 WL 2,R3CR3A+FR2 .word ANI_BENDROPE,0 .word ANI_OFFSET,5,0,0 ;***** WL 2,R3CR3A+FR3 .word ANI_BENDROPE,2 .word ANI_OFFSET,5,0,0 ;***** WL 2,R3CR3A+FR4 .word ANI_ROPE_Z,R_TOP,RZ_HIGH .word ANI_OFFSET,5,0,0 ;***** WL 3,R3CR3A+FR5 .word ANI_ROPE_Z,R_MIDDLE,RZ_HIGH .word ANI_ROPE_Z,R_BOTTOM,RZ_HIGH .word ANI_OFFSET,3,0,0 ;***** WL 3,R3CR3A+FR6 .word ANI_BENDROPE,2 .word ANI_OFFSET,3,0,0 ;***** WL 2,R3CR3A+FR7 .word ANI_ROPE_Z,R_MIDDLE,RZ_NORM .word ANI_ROPE_Z,R_BOTTOM,RZ_NORM .word ANI_OFFSET,4,0,0 ;***** WL 2,R3CR3A+FR8 .word ANI_BENDROPE,3 .word ANI_OFFSET,5,0,0 ;***** WL 2,R3CR3A+FR9 .word ANI_OFFSET,5,0,0 ;***** WL 3,R3CR3A+FR10 .word ANI_ROPE_Z,R_MIDDLE,RZ_HIGH .word ANI_ROPE_Z,R_BOTTOM,RZ_HIGH .word ANI_BENDROPE,-1 .word ANI_OFFSET,10,-3,0 .word ANI_ZEROVELS WL 2,R3CR3A+FR11 .word ANI_OFFSET,2,0,0 ;***** WL 2,R3CR3A+FR12 ;now jump off... ; WL 3,R4JD4A+FR1 ;D4FM4A+FR1 ; WL 3,R4JD4A+FR2 WL 3,R4JD4A+FR3 ; WL 3,R4JD4A+FR4 .word ANI_SET_IDIOT WWL ANI_SETLONG,OBJ_GRAVITY,0E000h WL ANI_SET_YVEL,60000h WLW ANI_SET_XVEL,30000h,AM_FACE_REL WL 2,R4JD4A+FR4 .word ANI_WAITHITGND WWL ANI_SETLONG,OBJ_GRAVITY,GRAVITY .word ANI_ROPE_Z,R_TOP,RZ_NORM .word ANI_ROPE_Z,R_MIDDLE,RZ_NORM .word ANI_ROPE_Z,R_BOTTOM,RZ_NORM .word ANI_ZEROVELS WL 2,R4JD4A+FR5 WL 2,R4JD4A+FR6 WL 2,R4JD4A+FR7 WL 4,R4JD4A+FR8 .word ANI_FACEDOWN .word ANI_CLEAR_CLIMB .word ANI_SETMODE,MODE_NOCONFINE .word ANI_END #***************************************************************************** SUBR rzr_climbin_side_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_NOCONFINE|MODE_OVERLAP|MODE_NOCOLLIS .word ANI_SETSPEED,100h .word ANI_ZEROVELS WL ANI_CODE,SET_DIR_FACE .word ANI_SETFACING .WORD ANI_SET_WRESTLER_XFLIP ; ;jump in ; WL 3,R4JD4A+FR1 ; WL 3,R4JD4A+FR2 WL 3,R4JD4A+FR3 WWL ANI_SETLONG,OBJ_GRAVITY,0E000h WL ANI_CODE,#set_trgt ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff .word ANI_LEAPATPOS,14h,200,0,0,0 ;#ticks,dist,xoff,yoff,zoff WL 3,R4JD4A+FR4 WL 4,R4JD4A+FR5 .word ANI_WAITHITGND .word ANI_ZEROVELS WWL ANI_SETLONG,OBJ_GRAVITY,GRAVITY .word ANI_ROPE_Z,R_TOP,RZ_HIGH .word ANI_ROPE_Z,R_MIDDLE,RZ_HIGH .word ANI_ROPE_Z,R_BOTTOM,RZ_HIGH WL 2,R4JD4A+FR6 WL 2,R4JD4A+FR7 .word ANI_OFFSET,5,0,0 ;***** WL 2,R4JD4A+FR8 .word ANI_ROPE_Z,R_MIDDLE,RZ_NORM .word ANI_ROPE_Z,R_BOTTOM,RZ_NORM WLW ANI_SET_XVEL,2c00h,AM_FACE_REL ;climb through .word ANI_BENDROPE,0 WL 3,R3CR3A+FR1 .word ANI_OFFSET,2,0,0 ;***** WL 2,R3CR3A+FR2 .word ANI_OFFSET,2,0,0 ;***** WL 2,R3CR3A+FR3 .word ANI_OFFSET,2,0,0 ;***** WL 2,R3CR3A+FR4 .word ANI_BENDROPE,2 .word ANI_OFFSET,2,0,0 ;***** WL 3,R3CR3A+FR5 .word ANI_OFFSET,3,0,0 ;***** WL 2,R3CR3A+FR6 .word ANI_BENDROPE,2 .word ANI_OFFSET,4,0,0 ;***** WL 2,R3CR3A+FR7 .word ANI_OFFSET,6,0,0 ;***** WL 2,R3CR3A+FR8 .word ANI_BENDROPE,3 .word ANI_OFFSET,8,0,0 ;***** WL 3,R3CR3A+FR9 .word ANI_OFFSET,8,0,0 ;***** WL 2,R3CR3A+FR10 .word ANI_BENDROPE,-1 .word ANI_OFFSET,8,0,0 WL 2,R3CR3A+FR11 .word ANI_OFFSET,16,0,0 ;***** WL 3,R3CR3A+FR12 .word ANI_ZEROVELS ; WL ANI_CODE,clr_climb .word ANI_CLEAR_CLIMB ;done .word ANI_ROPE_Z,R_TOP,RZ_NORM .word ANI_ROPE_Z,R_MIDDLE,RZ_NORM .word ANI_ROPE_Z,R_BOTTOM,RZ_NORM .word ANI_SETMODE,MODE_NOCONFINE .word ANI_END #set_trgt movi RING_X_CENTER-0f8h-60,a0 ;Jump onto left side apron move *a13(OBJ_XPOSINT),a14 cmpi RING_X_CENTER,a14 jrlt #onlft ;On right side movi RING_X_CENTER+0f8h+60,a0 ;Jump onto right side apron #onlft move a0,*a13(TGT_XOFF) movi RING_Z_CENTER,a0 move a0,*a13(TGT_ZOFF) movi MAT_Y,a0 move a0,*a13(TGT_YOFF) rets #***************************************************************************** SUBR rzr_climbthru_bot_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_NOCONFINE|MODE_OVERLAP|MODE_NOCOLLIS .word ANI_SETSPEED,100h .word ANI_ZEROVELS ;Must rotate toward ropes! ;Do a different sequence ;lie down WL ANI_CODE,#ckspin WL ANI_IFSTATUS,#dir4 ;Facing #2, spin first! WL 3,R1TT5Z+FR2 WL 3,R1TT5Z+FR3 #dir4 WL 3,R3GU4A+FR10 WL 3,R3GU4A+FR9 WL 3,R3GU4A+FR8 WL 3,R3GU4A+FR7 WL 3,R3GU4A+FR6 WL 3,R3GU4A+FR5 WL 3,R3GU4A+FR4 ;roll over once WLW ANI_SET_ZVEL,90000h,AM_ABS WL 3,R3RL1B+FR1 WL 3,R3RL1B+FR2 WL 3,R3RL1B+FR3 WL 3,R3RL1B+FR4 WL 3,R3RL1B+FR5 WL 3,R3RL1B+FR6 WL 3,R3RL1B+FR7 .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_NOCONFINE|MODE_OVERLAP|MODE_NOSHADOW|MODE_NOCOLLIS .word ANI_SETFACING .word ANI_SET_IDIOT ;climb through .WORD ANI_XFLIP WL 3,R3DC3C+FR5 .word ANI_OFFSET,0,-70,0 ;x,y,z WL 3,R2MP2A+FR3 WL 3,R2MP2A+FR2 .WORD ANI_XFLIP .word ANI_FACEUP .word ANI_CLEAR_CLIMB .word ANI_SETMODE,MODE_NOCONFINE .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END #ckspin move *a13(FACING_DIR),a14 btst 0,a14 jrnz #faceup move *a13(ANIMODE),a0 ori MODE_STATUS,a0 move a0,*a13(ANIMODE) RETS #faceup move *a13(ANIMODE),a0 ANDI 0FFFFH-MODE_STATUS,a0 move a0,*a13(ANIMODE) rets #***************************************************************************** SUBR rzr_climbin_bot_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_NOCONFINE|MODE_OVERLAP|MODE_NOCOLLIS .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_SETSPEED,100h .word ANI_ZEROVELS ;climb in .word ANI_GRAVITY_OFF WL 3,R2MP2A+FR2 WL 3,R2MP2A+FR3 .word ANI_OFFSET,0,70,16 WL 3,R3DC3C+FR5 .WORD ANI_XFLIP ;roll WLW ANI_SET_ZVEL,-70000h,AM_ABS .word ANI_FRICTION,3000h WL 3,R3RL1B+FR6 WL 3,R3RL1B+FR5 WL 3,R3RL1B+FR4 WL 3,R3RL1B+FR3 WL 3,R3RL1B+FR2 WL 3,R3RL1B+FR1 .word ANI_ZEROVELS .word ANI_GRAVITY_ON ;get up WL 3,R3GU4A+FR3 WL 3,R3GU4A+FR4 WL 3,R3GU4A+FR5 WL 3,R3GU4A+FR6 WL 3,R3GU4A+FR7 WL 3,R3GU4A+FR8 WL 3,R3GU4A+FR9 WL 3,R3GU4A+FR10 ; WL ANI_CODE,clr_climb .word ANI_CLEAR_CLIMB .word ANI_FACEDOWN .word ANI_ZEROVELS .word ANI_SETMODE,MODE_NOCONFINE .word ANI_END #***************************************************************************** SUBR rzr_climbthru_top_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_NOCONFINE|MODE_OVERLAP|MODE_NOCOLLIS .word ANI_SETSPEED,100h .word ANI_ZEROVELS ;lie down WL ANI_CODE,#set_zvel1 WL ANI_IFSTATUS,#dir4 ;Facing #2 WL 3,R1TT5Z+FR2 WL 3,R1TT5Z+FR3 #dir4 WL 3,R3GU4A+FR10 WL 3,R3GU4A+FR9 WL 3,R3GU4A+FR8 WL 3,R3GU4A+FR7 WL 3,R3GU4A+FR6 WL 3,R3GU4A+FR5 WL 3,R3GU4A+FR4 WL 3,R3GU4A+FR3 ;roll over once WL ANI_CODE,#set_zvel2 WL 3,R3RL1B+FR11 WL 3,R3RL1B+FR10 .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_NOCONFINE|MODE_OVERLAP|MODE_NOSHADOW|MODE_NOCOLLIS WL 3,R3RL1B+FR9 WL 3,R3RL1B+FR8 WL 3,R3RL1B+FR7 .word ANI_SET_IDIOT ;climb through .word ANI_OFFSET,0,-61,0 .word ANI_ZEROVELS WL 3,R4AM4B+FR4 WL 3,R4AM4B+FR3 WL 3,R4AM4B+FR2 .word ANI_ZERO_XZVELS .word ANI_CLEAR_CLIMB .word ANI_SETMODE,MODE_NOCONFINE .word ANI_END #set_zvel1 move *a13(FACING_DIR),a14 btst 0,a14 jrz #facedwn move *a13(ANIMODE),a0 ANDI 0FFFFH-MODE_STATUS,a0 move a0,*a13(ANIMODE) rets #facedwn move *a13(ANIMODE),a0 ori MODE_STATUS,a0 move a0,*a13(ANIMODE) rets #set_zvel2 movi -50000h,a0 move a0,*a13(OBJ_ZVEL),L rets #***************************************************************************** SUBR rzr_rollthru_top_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_NOCONFINE|MODE_OVERLAP|MODE_NOCOLLIS .word ANI_SETSPEED,100h .word ANI_ZEROVELS ;roll over once WLW ANI_SET_ZVEL,-50000h,AM_ABS WL 3,R3RL1B+FR11 WL 3,R3RL1B+FR10 .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_NOCONFINE|MODE_OVERLAP|MODE_NOSHADOW|MODE_NOCOLLIS WL 3,R3RL1B+FR9 WL 3,R3RL1B+FR8 WL 3,R3RL1B+FR7 ;climb through .word ANI_OFFSET,0,-61,0 .word ANI_ZEROVELS WL 3,R4AM4B+FR4 WL 3,R4AM4B+FR3 WL 3,R4AM4B+FR2 .word ANI_ZERO_XZVELS .word ANI_SETMODE,MODE_NOCONFINE .word ANI_END #***************************************************************************** SUBR rzr_climbin_top_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_NOCONFINE|MODE_OVERLAP|MODE_NOCOLLIS .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_SETSPEED,100h .word ANI_ZEROVELS ;climb in WL 3,R4AM4B+FR2 WL 3,R4AM4B+FR3 WL 3,R4AM4B+FR4 .word ANI_OFFSET,0,61,0 ;roll over WL ANI_CODE,#set_zvel2 WL 3,R3RL1B+FR7 WL 3,R3RL1B+FR8 WL 3,R3RL1B+FR9 WL 3,R3RL1B+FR10 .word ANI_ZEROVELS ;get up WL 3,R3GU4A+FR3 WL 3,R3GU4A+FR4 WL 3,R3GU4A+FR5 WL 3,R3GU4A+FR6 WL 3,R3GU4A+FR7 WL 3,R3GU4A+FR8 WL 3,R3GU4A+FR9 WL 3,R3GU4A+FR10 ; WL ANI_CODE,clr_climb .word ANI_CLEAR_CLIMB .word ANI_SETMODE,MODE_NOCONFINE .word ANI_END #set_zvel2 movi 52000h,a0 move a0,*a13(OBJ_ZVEL),L rets #***************************************************************************** SUBR rzr_knockdwn_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETPLYRMODE,MODE_ONGROUND .word ANI_SETSPEED,100h .word ANI_XFLIP WL 2,R3GU4A+FR10 WL 2,R3GU4A+FR8 WL 2,R3GU4A+FR5 WL ANI_SET_YVEL,39000h WL 3,R3AM3D+FR3 WL 3,R3AM3D+FR4 WL 3,R3AM3D+FR5 WL 3,R3AM3D+FR6 WL 3,R3AM3D+FR7 WL 6,R3AM3D+FR1 WL ANI_CODE,am_I_dead ;If I'm dead, goto fall back WL ANI_IFNOTSTATUS,#nodead .word ANI_SETPLYRMODE,MODE_DEAD .word ANI_END #nodead .word ANI_WAITROLL WL ANI_CHANGEANIM,rzr_faceup_getup_anim #***************************************************************************** * * PIN OPPONENT AND RAISE ARM IN VICTORY ;Need to have this guy walk toward fallen opponent so he ;can get closer! ;This pin must be started only when opponent is on the ground! SUBR rzr_2_pin_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP .word ANI_ZEROVELS .word ANI_SETSPEED,100h ;Rotate! WL 3,R1TT5Z+FR2 WL 3,R1TT5Z+FR3 SUBR rzr_4_pin_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP .word ANI_ZEROVELS .word ANI_SETSPEED,100h ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 22,999,80h,50h,90000h,TGT_CHEST|TGT_GROUND,0,57,-15 WL ANI_CODE,hit_nearest WL 3,R3PN5A+FR1 WL 3,R3PN5A+FR2 WL 3,R3PN5A+FR3 .word ANI_OFFSET,0,45,0 ;x,y,z WL 13,R3PN5A+FR4 ; .word ANI_WAITHITGND ; .word ANI_ATTACK_ON_Z,AMODE_STOMP,-40,-8,0,76,20,30 ;mode,x,y,z,w,h,d .word ANI_ZEROVELS ; WLW ANI_ATTCHIMAGE,D4PN5L+FR4,10 ;image, zoff (priority) WL 3,R3PN5A+FR5 WL ANI_CODE,DO_CROWD_CHEER ; .word ANI_ATTACK_OFF WL ANI_CODE,grnd_hit WL ANI_CODE,HIT_THE_MAT .word ANI_SHAKEALL,2 .word ANI_BOUNCE,2 ; WLW ANI_ATTCHIMAGE,D4PN5L+FR5,10 ;image, zoff (priority) WL 4,R3PN5A+FR6 .word ANI_WAITHITGND WL ANI_CODE,SMALL_BOUNCE .word ANI_OFFSET,0,0,20 ;x,y,z WL 4,R3PN5A+FR5 WL ANI_CODE,win_announce ; WLW ANI_ATTCHIMAGE,0,0 ;Turn it off ; .word ANI_SET_ATTACH ; .word ANI_ATTACHZ,0,0,10 ;x & y don't matter. WL 40,R3PN5A+FR5 .word ANI_LOOP ;Do another ground hit on opponent WL ANI_CODE,grnd_hit WL ANI_SET_YVEL,42000h WLW ANI_SET_ZVEL,22000h,AM_ABS WL 4,R5RV5A+FR2 WL 4,R5RV5A+FR3 .word ANI_WAITHITGND .word ANI_ZEROVELS WL 7,R5RV5A+FR4 WL 7,R5RV5A+FR5 WL 2,R5RV5A+FR6 .word ANI_SOUND,4Ah WL 5,R5RV5A+FR6 WL 7,R5RV5A+FR7 WL 7,R5RV5A+FR8 WL 7,R5RV5A+FR9 WL 2,R5RV5A+FR10 .word ANI_SOUND,4Ah WL 5,R5RV5A+FR10 WL 7,R5RV5A+FR11 WL 7,R5RV5A+FR12 WL 7,R5RV5A+FR13 WL 2,R5RV5A+FR14 .word ANI_SOUND,4Ah WL 5,R5RV5A+FR14 WL 30,R5RV5A+FR15 WL 6,R5RV5A+FR16 WL 6,R5RV5A+FR17 #floop WL 1000,R5RV5A+FR18 WL ANI_GOTO,#floop .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END ****************************************************************************** * RAISE ARM IN VICTORY FROM A STANCE SUBR rzr_2_raise_arm_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP .word ANI_ZEROVELS .word ANI_SETSPEED,100h WL ANI_CODE,DO_CROWD_CHEER WL ANI_CODE,win_announce WL 3,R1TT5Z+FR2 WL 3,R1TT5Z+FR3 WL ANI_GOTO,#cont SUBR rzr_4_raise_arm_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP .word ANI_ZEROVELS .word ANI_SETSPEED,100h WL ANI_CODE,DO_CROWD_CHEER WL ANI_CODE,win_announce #cont WL 4,R4SW4D+FR3 WL 4,R4SW4D+FR4 WL 4,R4SW4D+FR5 WL 4,R4SW4D+FR6 WL 4,R4SW4D+FR7 WL 4,R4SW4D+FR8 WL 4,R4SW4D+FR9 WL 4,R4SW4D+FR10 WL 4,R4SW4D+FR11 .word ANI_SET_RPTCOUNT,-6 ;set count to rnd from 0 to 6 #lp WL 4,R4SW4D+FR3 WL 4,R4SW4D+FR4 WL 4,R4SW4D+FR5 WL 4,R4SW4D+FR6 WL 4,R4SW4D+FR7 WL 4,R4SW4D+FR8 WL 4,R4SW4D+FR9 WL 4,R4SW4D+FR10 WL 4,R4SW4D+FR11 .word ANI_DEC_RPTCOUNT WL ANI_IF_RPTCOUNT,#lp WL ANI_CODE,check_raisearm_bit WL ANI_IFSTATUS,#wakeup .word ANI_SET_RPTCOUNT,1000 WL ANI_GOTO,#lp #wakeup .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_FACEDOWN .word ANI_END #***************************************************************************** * * GET BUCKED OFF A PINNED OPPONENT SUBR rzr_buckoff_anim .ref set_buckoff_vels .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP|MODE_NOCOLLIS .word ANI_SETSPEED,100h .word ANI_ZEROVELS WL 4,R3PN5A+FR5 WL 1,R3PN5A+FR4 WL ANI_CODE,set_buckoff_vels .word ANI_WAITHITGND .word ANI_ZEROVELS WL 16,R3PN5A+FR6 ;now stand up WL 3,R3GU4A+FR7 WL 3,R3GU4A+FR8 WL 3,R3GU4A+FR9 WL 3,R3GU4A+FR10 .word ANI_FACEDOWN .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_SETMODE,MODE_NORMAL .word ANI_END ****************************************************************************** .end