************************************************************** * * Software: Jamie Rivett * Initiated: 5/18/94 * * COPYRIGHT (C) 1992 WILLIAMS ELECTRONICS GAMES, INC. * ************************************************************** .file "yokseq2.asm" .title "Yokozuna 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 "yokoimg.h" .include "ring.equ" .include "display.equ" .include "ring.equ" .include "damage.equ" ****************************************************************************** * EXTERNAL REFERENCES ;BAM BAM .ref B3RN3A,B4YR3A ;DOINK .ref D3RN3B,D4YR3B ;BRET .ref H3RN3A,H4YR3A ;LEX .ref L3RN3B,L4YR3B ;RAZOR .ref R3RN3D,R4YR3A ;SHAWN .ref S3RN3A,S4YR3A ;TAKER .ref U3RN3A ;YOKO .ref yok_faceup_getup2_anim .ref U4YR3B ;MISC .ref get_opp_process,start_run_anim,CALL_MISSES,start_run_flung .ref SET_DIR_FACE,HIT_THE_MAT,no_bk_xvel,DO_GRUNT .ref check_xvel,set_tbukl_confine .ref set_tbukl_airmode .ref DO_CROWD_CHEER,hit_nearest,face_inside,set_raisearm_bit .ref check_raisearm_bit .ref CALL_OTHER_AVERAGE,CALL_ANI_AVERAGE_MOVE .ref DO_COMBO_MESS,yok_combo_salt_anim .ref yok_combo_heldheadbutt_rpt_anim .ref yok_combo_hiptoss_anim .ref MOVE_NAME_ANNC ****************************************************************************** * SYMBOLS DEFINED IN THIS FILE ****************************************************************************** * EQUATES FOR THIS FILE #***************************************************************************** * * NORMAL #2 PUNCH SUBR yok_2_punch_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_SETSPEED,100h .word ANI_ZEROVELS .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,Y2PU2A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y2PU2A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y2PU2A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim .WORD ANI_ADD_MOVE,MOVE_C_3,2,2 .word ANI_STARTATTACK,AT_PUNCH,9 WL 2,Y2PU2A+FR2 WL 2,Y2PU2A+FR3 WL 2,Y2PU2A+FR4 .word ANI_ATTACK_ON,AMODE_FLYKICK,50,90,42,12 WL 3,Y2PU2A+FR5 .word ANI_ATTACK_OFF WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit WL ANI_SET_YVEL,30000h WL 3,Y2PU2A+FR5 #no_hit WL 2,Y2PU2A+FR6 WL 3,Y2PU2A+FR7 WL 2,Y2PU2A+FR8 WL 3,Y2PU2A+FR9 WL 2,Y2PU2A+FR10 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * NORMAL #4 PUNCH SUBR yok_4_punch_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_SETSPEED,100h .word ANI_ZEROVELS .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,Y4PU4B+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y4PU4B+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y4PU4B+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim .WORD ANI_ADD_MOVE,MOVE_C_3,2,2 .word ANI_STARTATTACK,AT_PUNCH,9 WL 2,Y4PU4B+FR2 WL 2,Y4PU4B+FR3 WL 2,Y4PU4B+FR4 .word ANI_ATTACK_ON,AMODE_FLYKICK,42,77,36,19 WL 3,Y4PU4B+FR5 .word ANI_ATTACK_OFF WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit2 WL ANI_SET_YVEL,30000h WL 3,Y4PU4B+FR5 #no_hit2 WL 2,Y4PU4B+FR6 WL 3,Y4PU4B+FR7 WL 2,Y4PU4B+FR8 WL 3,Y4PU4B+FR9 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #4 PUSH SUBR yok_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,9 WL 3,Y4PS3A+FR3 WL 3,Y4PS3A+FR4 WL 3,Y4PS3A+FR5 .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ATTACK_ON, AMODE_PUSH,36,86,45,16 WL 3,Y4PS3A+FR6 .word ANI_ATTACK_OFF WWL ANI_SLIDE_BACK,40h,-70000h,#no_hit ;range,vel,addr WL 15,Y4PS3A+FR6 #no_hit WL 3,Y4PS3A+FR6 WL ANI_IFSTATUS,#hit ;If missed on push, hold a little longer WL 5,Y4PS3A+FR6 #hit WL 3,Y4PS3A+FR5 WL 3,Y4PS3A+FR4 WL 3,Y4PS3A+FR3 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #2 ELBOW DROP #yoff equ 37 SUBR yok_2_lbowdrop_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP .word ANI_SETSPEED,100h .word ANI_ZEROVELS WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y2PF2A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y2PF2A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y2PF2A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim .word ANI_STARTATTACK,AT_LBDROP,7 WL 4,Y2PF2A+FR2 WL 3,Y2PF2A+FR3 ;skip the leap if simply falling down will do. .word ANI_ATTACK_ON_Z,AMODE_HITCHECK,4,4,-40,34,31,50 WL 1,Y2PF2A+FR3 .word ANI_ATTACK_OFF WL ANI_IFSTATUS,#skip_leapat .word ANI_TARGET,TGT_CHEST,TGT_CHEST,ATM_CLOSEST ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 20,999,160,140,90000h,TGT_USER,21,0+#yoff,-30 WL ANI_GOTO,#do_leapat #skip_leapat ; WL ANI_SET_YVEL,30000h #do_leapat WL 4,Y2PF2A+FR4 .word ANI_OFFSET,0,#yoff,0 WL 4,Y2PF2A+FR5 WL 4,Y2PF2A+FR6 WL 4,Y2PF2A+FR7 .word ANI_WAITHITGND .word ANI_ZEROVELS .word ANI_SETPLYRMODE,MODE_ONGROUND WL ANI_CODE,HIT_THE_MAT WL ANI_CODE,HIT_THE_MAT .WORD ANI_ADD_MOVE,MOVE_C_3,2,2 .word ANI_SHAKER,40 .word ANI_SHAKEALL,2 .word ANI_ATTACK_ON_Z, AMODE_LBOWDROP,0,0,-40,42,39,50 WL 4,Y2PF2A+FR8 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#hit WL ANI_CODE,CALL_MISSES #hit .word ANI_DRAW_NAME,18 WL 12,Y2PF2A+FR9 .word ANI_XFLIP WL ANI_CHANGEANIM,yok_faceup_getup2_anim #***************************************************************************** * * #4 ELBOW DROP #yoff equ 34 SUBR yok_4_lbowdrop_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP .word ANI_SETSPEED,100h .word ANI_ZEROVELS WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y3PF3A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y3PF3A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y3PF3A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim .word ANI_STARTATTACK,AT_LBDROP,7 WL 4,Y3PF3A+FR3 WL 3,Y3PF3A+FR4 ;skip the leap if it's not needed. .word ANI_ATTACK_ON_Z,AMODE_HITCHECK,14,4,-10,32,30,50 WL 1,Y3PF3A+FR4 .word ANI_ATTACK_OFF WL ANI_IFSTATUS,#skip_leapat .word ANI_TARGET,TGT_CHEST,TGT_CHEST,ATM_CLOSEST ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 20,999,160,140,90000h,TGT_USER,33,0+#yoff,30 WL ANI_GOTO,#do_leapat #skip_leapat ; WL ANI_SET_YVEL,30000h #do_leapat .word ANI_OFFSET,0,#yoff,0 WL 4,Y3PF3A+FR5 WL 4,Y3PF3A+FR6 WL 4,Y3PF3A+FR7 .word ANI_WAITHITGND .word ANI_ZEROVELS .WORD ANI_ADD_MOVE,MOVE_C_3,2,2 .word ANI_SETPLYRMODE,MODE_ONGROUND WL ANI_CODE,HIT_THE_MAT WL ANI_CODE,HIT_THE_MAT .word ANI_SHAKER,40 .word ANI_SHAKEALL,2 .word ANI_ATTACK_ON_Z,AMODE_LBOWDROP,10,0,-10,40,38,50 WL 4,Y3PF3A+FR8 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#hit WL ANI_CODE,CALL_MISSES #hit .word ANI_DRAW_NAME,18 WL 12,Y3PF3A+FR9 .word ANI_XFLIP WL ANI_CHANGEANIM,yok_faceup_getup_anim #***************************************************************************** * * COMBO KICK SUBR yok_combo_kick_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .WORD ANI_CLEAR_COMBO .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP WL 2,Y2KM3A+FR1 WL 1,Y4KM3A+FR2 .word ANI_STARTATTACK,AT_KICK,6 WL 1,Y4KM3A+FR2 WL 2,Y4KM3A+FR3 WL 2,Y4KM3A+FR4 WWL ANI_SETLONG,OBJ_GRAVITY,0c000h WL ANI_SET_YVEL,30000h .word ANI_INC_COMBO .word ANI_ATTACK_ON, AMODE_KICK,35,62,56,34 WL 1,Y4KM3A+FR5 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#no_hit_2 WL ANI_IFBLOCKED,#no_hit_2 .word ANI_INC_COMBO WLLL ANI_SETOPPVELS,000H,10000h,0h ;x,y,z vels WL 7,Y4KM3A+FR5 .word ANI_WAITHITGND .word ANI_ZEROVELS WWL ANI_SETLONG,OBJ_GRAVITY,GRAVITY .word ANI_SHAKER,20 .word ANI_SHAKEALL,1 WL 2,Y4KM3A+FR6 WL 2,Y4KM3A+FR7 WL 2,Y4KM3A+FR8 WL 2,Y4KM3A+FR9 WL 2,Y2KM3A+FR10 WL 2,Y2KM3A+FR11 .word ANI_SET_RPTCOUNT,3 ;rpt 2 times #kick_loop .word ANI_CLR_BUTCOUNT WL 1,Y2KM3A+FR1 WL 1,Y4KM3A+FR2 .word ANI_STARTATTACK,AT_KICK,6 WL 1,Y4KM3A+FR2 WL 1,Y4KM3A+FR3 WL 1,Y4KM3A+FR4 WWL ANI_SETLONG,OBJ_GRAVITY,0c000h WL ANI_SET_YVEL,10000h .word ANI_ATTACK_ON, AMODE_KICK,35,62,56,34 WL 1,Y4KM3A+FR5 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#no_hit_2 WL ANI_IFBLOCKED,#no_hit_2 ; .word ANI_SET_ATTACH WLLL ANI_SETOPPVELS,000H,10000h,0h ;x,y,z vels .WORD ANI_INC_COMBO WL 2,Y4KM3A+FR5 .word ANI_WAITHITGND .word ANI_ZEROVELS WWL ANI_SETLONG,OBJ_GRAVITY,GRAVITY .word ANI_SHAKER,20 .word ANI_SHAKEALL,1 WL 1,Y4KM3A+FR5 WL 1,Y4KM3A+FR6 WL 1,Y4KM3A+FR7 WL 1,Y4KM3A+FR8 WL 1,Y4KM3A+FR9 WL 1,Y2KM3A+FR10 WL 1,Y2KM3A+FR11 .word ANI_DEC_RPTCOUNT WL ANI_IF_RPTCOUNT,#kick_loop WWWL ANI_IF_BUTCOUNT_LT,KICKB_COUNT,1,#NO_KNEE WL ANI_CHANGEANIM,yok_combo_knee_anim #NO_KNEE WWWL ANI_IF_BUTCOUNT_LT,SKICKB_COUNT,1,#NO_UPPER WL ANI_CHANGEANIM,yok_combo_uppercut_anim #NO_UPPER WWWL ANI_IF_BUTCOUNT_LT,SPUNCHB_COUNT,1,#NO_HEADBUTT WL ANI_CHANGEANIM,yok_combo_heldheadbutt_rpt_anim #NO_HEADBUTT .WORD ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO .word ANI_SETMODE,MODE_NORMAL .word ANI_END #no_hit_2 .WORD ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO .word ANI_WAITHITGND .word ANI_ZEROVELS WWL ANI_SETLONG,OBJ_GRAVITY,GRAVITY .word ANI_SHAKER,20 .word ANI_SHAKEALL,1 WL 2,Y4KM3A+FR5 WL 2,Y4KM3A+FR6 WL 2,Y4KM3A+FR7 WL 2,Y4KM3A+FR8 WL 2,Y4KM3A+FR9 WL 2,Y4KM3A+FR10 WL 2,Y4KM3A+FR11 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * NORMAL #2 KICK SUBR yok_2_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,Y2KM3A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y2KM3A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y4KM3A+FR2 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim .WORD ANI_ADD_MOVE,MOVE_C_3,2,2 .word ANI_STARTATTACK,AT_KICK,6 WL 1,Y4KM3A+FR2 WL 2,Y4KM3A+FR3 WL 2,Y4KM3A+FR4 WWL ANI_SETLONG,OBJ_GRAVITY,0c000h WL ANI_SET_YVEL,30000h .word ANI_ATTACK_ON, AMODE_KICK,35,62,56,34 WL 2,Y4KM3A+FR5 .word ANI_ATTACK_OFF WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit WL ANI_SET_YVEL,30000h WL 3,Y4KM3A+FR5 #no_hit .word ANI_WAITHITGND .word ANI_ZEROVELS WWL ANI_SETLONG,OBJ_GRAVITY,GRAVITY .word ANI_SHAKER,20 .word ANI_SHAKEALL,1 WL 2,Y4KM3A+FR5 WL 2,Y4KM3A+FR6 WL 2,Y4KM3A+FR7 WL 2,Y4KM3A+FR8 WL 2,Y4KM3A+FR9 WL 2,Y2KM3A+FR10 WL 2,Y2KM3A+FR11 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * NORMAL #4 KICK SUBR yok_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,Y4KM3A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y4KM3A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y4KM3A+FR2 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim .WORD ANI_ADD_MOVE,MOVE_C_3,2,2 .word ANI_STARTATTACK,AT_KICK,6 WL 1,Y4KM3A+FR2 WL 2,Y4KM3A+FR3 WL 2,Y4KM3A+FR4 WWL ANI_SETLONG,OBJ_GRAVITY,0c000h WL ANI_SET_YVEL,30000h .word ANI_ATTACK_ON, AMODE_KICK,35,62,56,34 WL 2,Y4KM3A+FR5 .word ANI_ATTACK_OFF WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit WL ANI_SET_YVEL,30000h WL 3,Y4KM3A+FR5 #no_hit .word ANI_WAITHITGND .word ANI_ZEROVELS WWL ANI_SETLONG,OBJ_GRAVITY,GRAVITY .word ANI_SHAKER,20 .word ANI_SHAKEALL,1 WL 2,Y4KM3A+FR5 WL 2,Y4KM3A+FR6 WL 2,Y4KM3A+FR7 WL 2,Y4KM3A+FR8 WL 2,Y4KM3A+FR9 WL 2,Y4KM3A+FR10 WL 2,Y4KM3A+FR11 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #2 STOMP ON FALLEN OPPONENT SUBR yok_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,Y2MP2A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y2MP2A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y2MP2A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim .word ANI_STARTATTACK,AT_STOMP,3 WL 2,Y2MP2A+FR2 ;if we're going to miss, do a leapat .word ANI_ATTACK_ON_Z,AMODE_HITCHECK,4,-5,-40,38,43,50 WL 1,Y2MP2A+FR2 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#leapat_stomp WL 2,Y2MP2A+FR3 WL 3,Y2MP2A+FR4 WL 2,Y2MP2A+FR5 WL 3,Y2MP2A+FR6 .word ANI_ATTACK_ON_Z,AMODE_STOMP,4,-5,-40,38,43,50 WL 3,Y2MP2A+FR7 .word ANI_ATTACK_OFF .WORD ANI_ADD_MOVE,MOVE_C_5,2,2 WL ANI_IFSTATUS,#hit WL ANI_CODE,CALL_MISSES #hit .word ANI_SHAKER,30 .word ANI_SHAKEALL,1 WL 3,Y2MP2A+FR8 WL 3,Y2MP2A+FR9 WL 3,Y2MP2A+FR10 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #leapat_stomp .word ANI_TARGET,TGT_CHEST,TGT_CHEST,ATM_CLOSEST ;too far. leap at the chest. ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 16,999,160,140,90000h,TGT_USER,21,0,-40 .word ANI_STARTATTACK,AT_STOMP,15 WL 3,Y2MP2A+FR3 WL 3,Y2MP2A+FR4 WL 3,Y2MP2A+FR5 .word ANI_WAITHITGND .word ANI_ZEROVELS .word ANI_SHAKER,40 .word ANI_SHAKEALL,2 WL 3,Y2MP2A+FR6 .word ANI_ATTACK_ON_Z,AMODE_STOMP,4,-5,-40,38,43,50 WL 3,Y2MP2A+FR7 .word ANI_ATTACK_OFF WL ANI_IFSTATUS,#leapat_hit WL ANI_CODE,CALL_MISSES #leapat_hit WL 3,Y2MP2A+FR8 WL 3,Y2MP2A+FR9 WL 3,Y2MP2A+FR10 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #4 STOMP ON FALLEN OPPONENT SUBR yok_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,Y4MP4A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y4MP4A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y4MP4A+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim .word ANI_STARTATTACK,AT_STOMP,3 WL 2,Y4MP4A+FR2 ;if we're going to miss, do a leapat .word ANI_ATTACK_ON_Z,AMODE_HITCHECK,15,-7,-10,40,36,50 WL 1,Y4MP4A+FR2 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#leapat_stomp WL 2,Y4MP4A+FR3 WL 3,Y4MP4A+FR4 WL 2,Y4MP4A+FR5 WL 3,Y4MP4A+FR6 .word ANI_ATTACK_ON_Z,AMODE_STOMP,15,-7,-10,40,36,50 WL 3,Y4MP4A+FR7 .word ANI_ATTACK_OFF .WORD ANI_ADD_MOVE,MOVE_C_5,2,2 WL ANI_IFSTATUS,#hit WL ANI_CODE,CALL_MISSES #hit .word ANI_SHAKER,30 .word ANI_SHAKEALL,1 WL 3,Y4MP4A+FR8 WL 3,Y4MP4A+FR9 WL 3,Y4MP4A+FR10 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #leapat_stomp .word ANI_TARGET,TGT_CHEST,TGT_CHEST,ATM_CLOSEST ;too far. leap at the chest. ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 16,999,160,140,90000h,TGT_USER,33,0,40 .word ANI_STARTATTACK,AT_STOMP,16 WL 3,Y4MP4A+FR3 WL 3,Y4MP4A+FR4 WL 3,Y4MP4A+FR5 WL 3,Y4MP4A+FR6 .word ANI_WAITHITGND .word ANI_ZEROVELS .word ANI_SHAKER,40 .word ANI_SHAKEALL,2 .word ANI_ATTACK_ON_Z,AMODE_STOMP,15,-7,-10,40,36,50 WL 3,Y4MP4A+FR7 .word ANI_ATTACK_OFF WL ANI_IFSTATUS,#leapat_hit WL ANI_CODE,CALL_MISSES #leapat_hit WL 3,Y4MP4A+FR8 WL 3,Y4MP4A+FR9 WL 3,Y4MP4A+FR10 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #3 FLYING BUTT-DROP (ouch) #yoff equ 65 ****************************** SUBR yok_combo_butt_drop_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP .word ANI_SETPLYRMODE,MODE_INAIR .word ANI_SETSPEED,100h WL 2,Y3JK3A+FR1 WL 2,Y3JK3A+FR2 WL 2,Y3JK3A+FR3 ;take off .word ANI_TARGET,TGT_CHEST,TGT_CHEST,ATM_CLOSEST ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 30,999,112,96,90000h,TGT_USER,0,0+#yoff,-10 WL ANI_CODE,no_bk_xvel .word ANI_STARTATTACK,AT_STOMP,30 .word ANI_SETPLYRMODE,MODE_INAIR WL 4,Y3JK3A+FR4 .word ANI_OFFSET,0,#yoff,0 .word ANI_ATTACK_ON_Z,AMODE_STOMP,-22,-10-10,-30,54,36,50 WWL ANI_WAITHITOPP,30,Y3JK3A+FR5 .word ANI_ATTACK_OFF .word ANI_ZEROVELS .word ANI_SHAKER,40 .word ANI_SHAKEALL,2 WL ANI_CODE,HIT_THE_MAT WL ANI_IFNOTSTATUS,#missc ;bounce off the guy .WORD ANI_INC_COMBO WL ANI_SET_YVEL,40000h WLW ANI_SET_ZVEL,1C000h,AM_ABS ;this part should take around 12 ticks WL 4,Y3JK3A+FR6 WL 1,Y3JK3A+FR5 .word ANI_WAITHITGND .word ANI_SHAKER,40 .word ANI_SHAKEALL,1 WL ANI_CODE,SMALL_BOUNCE .word ANI_ZEROVELS .word ANI_SETPLYRMODE,MODE_NORMAL .WORD ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO WL 4,Y3JK3A+FR6 WL 4,Y3JK3A+FR7 WL 4,Y3JK3A+FR8 .word ANI_XFLIP WL ANI_CHANGEANIM,yok_faceup_getup2_anim #missc .WORD ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO WL ANI_CODE,CALL_MISSES WL 16,Y3JK3A+FR6 .word ANI_WAITHITGND .word ANI_SETPLYRMODE,MODE_NORMAL WL 4,Y3JK3A+FR7 WL 4,Y3JK3A+FR8 .word ANI_XFLIP WL ANI_CHANGEANIM,yok_faceup_getup2_anim ****************************** SUBR yok_3_butt_drop_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP .word ANI_SETPLYRMODE,MODE_INAIR .word ANI_SETSPEED,100h WL 2,Y3JK3A+FR1 WL 2,Y3JK3A+FR2 WL 2,Y3JK3A+FR3 ;take off .word ANI_TARGET,TGT_CHEST,TGT_CHEST,ATM_CLOSEST ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 30,999,112,96,90000h,TGT_USER,0,0+#yoff,-10 WL ANI_CODE,no_bk_xvel .word ANI_STARTATTACK,AT_LEAPING,30 .word ANI_SETPLYRMODE,MODE_INAIR WL 4,Y3JK3A+FR4 .word ANI_OFFSET,0,#yoff,0 .word ANI_ATTACK_ON_Z,AMODE_BUTTSTOMP,-22,-10-10,-30,54,36,50 WWL ANI_WAITHITOPP,30,Y3JK3A+FR5 .word ANI_ATTACK_OFF .word ANI_ZEROVELS .word ANI_SHAKER,40 .word ANI_SHAKEALL,2 WL ANI_CODE,HIT_THE_MAT .WORD ANI_ADD_MOVE,MOVE_C_4,2,2 WL ANI_IFNOTSTATUS,#miss #hit WL ANI_CODE,create_bucket_salt WWL ANI_SETLONG,DEBRIS_X,[2,1] ;Y,X of head WL ANI_CODE,CALL_OTHER_AVERAGE ;bounce off the guy WL ANI_SET_YVEL,40000h WLW ANI_SET_ZVEL,1C000h,AM_ABS ;this part should take around 12 ticks WL 4,Y3JK3A+FR6 WWL ANI_SETLONG,DEBRIS_X,[2,8] ;Y,X of head WL 1,Y3JK3A+FR5 .word ANI_WAITHITGND WWL ANI_SETLONG,DEBRIS_X,0 ;Y,X of head .word ANI_SHAKER,40 .word ANI_SHAKEALL,1 WL ANI_CODE,SMALL_BOUNCE .word ANI_ZEROVELS .word ANI_SETPLYRMODE,MODE_ONGROUND WL 3,Y3JK3A+FR6 WL 3,Y3JK3A+FR7 WL 3,Y3JK3A+FR8 .word ANI_XFLIP WL ANI_CHANGEANIM,yok_faceup_getup2_anim #miss WL ANI_CODE,CALL_MISSES WL ANI_SET_YVEL,40000h .word ANI_SHAKER,30 .word ANI_SHAKEALL,1 WL ANI_CODE,SMALL_BOUNCE WL 4,Y3JK3A+FR6 .word ANI_WAITHITGND .word ANI_SETPLYRMODE,MODE_ONGROUND WL 6,Y3JK3A+FR6 WL 3,Y3JK3A+FR7 WL 3,Y3JK3A+FR8 .word ANI_XFLIP WL ANI_CHANGEANIM,yok_faceup_getup2_anim #***************************************************************************** * * #2 KNEE SUBR yok_2_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,Y4NM3B+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y4NM3B+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y4NM3B+FR2 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim .word ANI_STARTATTACK,AT_KNEE,6 WL 1,Y4NM3B+FR2 WL 2,Y4NM3B+FR3 .word ANI_ATTACK_ON, AMODE_KNEE,34,58,26,32 WL 3,Y4NM3B+FR4 .word ANI_ATTACK_OFF .WORD ANI_ADD_MOVE,MOVE_C_5,2,2 WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit WL ANI_SET_YVEL,60000h WLW ANI_SET_ZVEL,10000h,AM_ABS WL 3,Y4NM3B+FR4 .word ANI_WAITHITGND .word ANI_ZEROVELS WL 3,Y4NM3B+FR5 WL 3,Y4NM3B+FR6 WL 3,Y2NM3A+FR7 WL 3,Y2NM3A+FR8 WL 3,Y2NM3A+FR9 .word ANI_FACEUP .word ANI_SETMODE,MODE_NORMAL .word ANI_END #no_hit WL 4,Y4NM3B+FR4 WL 3,Y4NM3B+FR5 WL 3,Y4NM3B+FR6 WL 3,Y2NM3A+FR7 WL 3,Y2NM3A+FR8 WL 3,Y2NM3A+FR9 .word ANI_FACEUP .word ANI_SETMODE,MODE_NORMAL .word ANI_END * #4 KNEE ********************************************************************* SUBR yok_combo_knee_anim ;Can also be down from head hold! .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,Y4NM3B+FR1 .word ANI_STARTATTACK,AT_KNEE,6 WL 3,Y4NM3B+FR2 WL 3,Y4NM3B+FR3 .word ANI_ATTACK_ON, AMODE_KNEE,34,28,66,52 WL 3,Y4NM3B+FR4 .word ANI_ATTACK_OFF .WORD ANI_INC_COMBO WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit3c .WORD ANI_INC_COMBO WL ANI_SET_YVEL,60000h WLW ANI_SET_ZVEL,-4000h,AM_ABS WL 3,Y4NM3B+FR4 .word ANI_WAITHITGND .word ANI_ZEROVELS .WORD ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO WL 3,Y4NM3B+FR5 WL 3,Y4NM3B+FR6 WL 3,Y4NM3B+FR7 WL 3,Y4NM3B+FR8 WL 3,Y4NM3B+FR9 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END #no_hit3c .WORD ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO WL 6,Y4NM3B+FR4 WL 3,Y4NM3B+FR5 WL 3,Y4NM3B+FR6 WL 3,Y4NM3B+FR7 WL 3,Y4NM3B+FR8 WL 3,Y4NM3B+FR9 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END ********************************************************************* SUBR yok_4_knee2_anim ;Done from head hold! .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,Y4NM3B+FR1 WL ANI_GOTO,#tag SUBR yok_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,Y4NM3B+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y4NM3B+FR1 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim WL 1,Y4NM3B+FR2 WWL ANI_IFBUTTONS,PLAYER_PUNCH_VAL|PLAYER_KICK_VAL,start_run_anim #tag .word ANI_STARTATTACK,AT_KNEE,6 WL 1,Y4NM3B+FR2 WL 2,Y4NM3B+FR3 .word ANI_ATTACK_ON, AMODE_KNEE,34,58,26,32 WL 3,Y4NM3B+FR4 .word ANI_ATTACK_OFF .WORD ANI_ADD_MOVE,MOVE_C_3,2,2 WL ANI_IFNOTSTATUS,#missed WL ANI_IFBLOCKED,#missedb ;Yes, I hit blocker .word ANI_SHAKER,30 #missedb #missed WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit3 WL ANI_SET_YVEL,60000h WLW ANI_SET_ZVEL,-4000h,AM_ABS WL 3,Y4NM3B+FR4 .word ANI_WAITHITGND .word ANI_ZEROVELS WL 3,Y4NM3B+FR5 WL 3,Y4NM3B+FR6 WL 3,Y4NM3B+FR7 WL 3,Y4NM3B+FR8 WL 3,Y4NM3B+FR9 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END #no_hit3 WL 4,Y4NM3B+FR4 WL 3,Y4NM3B+FR5 WL 3,Y4NM3B+FR6 WL 3,Y4NM3B+FR7 WL 3,Y4NM3B+FR8 WL 3,Y4NM3B+FR9 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END #************ * * #2 SUPER KARATE KICK SUBR yok_2_superkick_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_SETSPEED,100h .word ANI_ZEROVELS .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP WL 2,Y1TT5Z+FR2 * #4 SUPER KARATE KICK SUBR yok_4_superkick_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_SETSPEED,100h .word ANI_ZEROVELS .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_STARTATTACK,AT_LEAPING,10 WL 3,Y4KB3A+FR3 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 8,999,55,45,90000h,TGT_HEAD,64,82,10 WL ANI_SET_YVEL,40000h .word ANI_FRICTION,4000h WL 4,Y4KB3A+FR4 WL 4,Y4KB3A+FR5 .word ANI_ATTACK_ON, AMODE_SUPER_KICK,20,45,62,40 ;mode,x,y,w,h WL 4,Y4KB3A+FR6 WLW ANI_SET_ZVEL,0h,AM_ABS WL 4,Y4KB3A+FR6 .word ANI_ATTACK_OFF .WORD ANI_ADD_MOVE,MOVE_C_7,2,2 WL ANI_IFNOTSTATUS,#missed WL ANI_IFBLOCKED,#missedb ;Yes, I hit blocker .word ANI_SHAKER,30 ;hit ; WL ANI_CODE,create_impact2 .word ANI_ZEROVELS WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit2 WL ANI_SET_YVEL,30000h WL 7,Y4KB3A+FR6 .word ANI_WAITHITGND .word ANI_ZEROVELS #no_hit2 .word ANI_WAITHITGND .word ANI_SHAKER,20 WL ANI_CODE,skick_delay WL ANI_IFNOTSTATUS,#none0 WL 15,Y4KB3A+FR6 #none0 WL 3,Y4KB3A+FR7 WL 3,Y4KB3A+FR8 WL 3,Y4KB3A+FR9 WL 3,Y4KB3A+FR10 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END #missed #missedb WL ANI_CODE,CALL_MISSES WL 3,Y4KB3A+FR6 .word ANI_WAITHITGND .ref skick_delay WL ANI_CODE,skick_delay WL ANI_IFNOTSTATUS,#none WL 15,Y4KB3A+FR6 #none WL 3,Y4KB3A+FR7 WL 3,Y4KB3A+FR8 WL 3,Y4KB3A+FR9 WL 3,Y4KB3A+FR10 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END SUBR yok_combo_superkick_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_SETSPEED,100h .word ANI_ZEROVELS .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_STARTATTACK,AT_LEAPING,10 WL 3,Y4KB3A+FR3 WL 3,Y4KB3A+FR4 WL 4,Y4KB3A+FR5 .word ANI_ATTACK_ON, AMODE_KICK,20,35,72,50 ;mode,x,y,w,h WL 2,Y4KB3A+FR6 WLW ANI_SET_ZVEL,0h,AM_ABS .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#missedc WL ANI_IFBLOCKED,#missedbc ;Yes, I hit blocker ; .word ANI_SET_ATTACH WLLL ANI_SETOPPVELS,000H,10000h,0h ;x,y,z vels .WORD ANI_INC_COMBO WL 4,Y4KB3A+FR6 .word ANI_SHAKER,30 .word ANI_ZEROVELS .word ANI_SHAKER,20 WL 3,Y4KB3A+FR7 WL 3,Y4KB3A+FR8 WL 3,Y4KB3A+FR9 WL 3,Y4KB3A+FR10 .word ANI_FRICTION,4000h .word ANI_SET_RPTCOUNT,3 ;rpt 2 times .word ANI_CLR_BUTCOUNT #skick_loop WL 1,Y4KB3A+FR4 WL 2,Y4KB3A+FR5 .word ANI_ATTACK_ON, AMODE_KICK,20,35,72,50 ;mode,x,y,w,h WL 2,Y4KB3A+FR6 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#missedc WL ANI_IFBLOCKED,#missedbc ;Yes, I hit blocker ; .word ANI_SET_ATTACH WLLL ANI_SETOPPVELS,000H,10000h,0h ;x,y,z vels .WORD ANI_INC_COMBO .word ANI_SHAKER,30 .word ANI_ZEROVELS .word ANI_SHAKER,20 WL 2,Y4KB3A+FR7 WL 1,Y4KB3A+FR8 WL 2,Y4KB3A+FR9 WL 1,Y4KB3A+FR10 .word ANI_DEC_RPTCOUNT WL ANI_IF_RPTCOUNT,#skick_loop WWWL ANI_IF_BUTCOUNT_LT,PUNCHB_COUNT,1,#NO_KNEE WL ANI_CHANGEANIM,yok_combo_knee_anim #NO_KNEE WWWL ANI_IF_BUTCOUNT_LT,SPUNCHB_COUNT,1,#NO_UPPER WL ANI_CHANGEANIM,yok_combo_uppercut_anim #NO_UPPER WWWL ANI_IF_BUTCOUNT_LT,KICKB_COUNT,1,#NO_GUT WL ANI_CHANGEANIM,yok_combo_gut_push_anim #NO_GUT WWWL ANI_IF_BUTCOUNT_LT,SKICKB_COUNT,1,#NO_HIPTOSS WL ANI_CHANGEANIM,yok_combo_hiptoss_anim #NO_HIPTOSS .WORD ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END #missedc #missedbc .WORD ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO WL ANI_CODE,CALL_MISSES WL 3,Y4KB3A+FR6 .word ANI_WAITHITGND WL 3,Y4KB3A+FR7 WL 3,Y4KB3A+FR8 WL 3,Y4KB3A+FR9 WL 3,Y4KB3A+FR10 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #2,#4 GUT PUSH SUBR yok_2_gut_push_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_FRICTION,4800h WLW ANI_SET_XVEL,0a8000h,AM_FACE_REL WL 2,Y4PS3B+FR1 WL 2,Y4PS3B+FR2 WL 2,Y4PS3B+FR3 .word ANI_ATTACK_ON, AMODE_GUTPUSH,-12,31,43,63 ;mode,x,y,w,h WL 2,Y4PS3B+FR4 WL 2,Y4PS3B+FR5 WWL ANI_WAITHITOPP,9,Y4PS3B+FR6 .word ANI_ATTACK_OFF .word ANI_ZEROVELS WL ANI_IFBLOCKED,#missedb ;Yes, I hit blocker WL 9,Y4PS3B+FR6 WL 3,Y4PS3B+FR7 WL 3,Y4PS3B+FR8 WL 3,Y4PS3B+FR9 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #missedb WL 3,Y4PS3B+FR6 WL 3,Y4PS3B+FR7 WL 3,Y4PS3B+FR8 WL 3,Y4PS3B+FR9 ; WL 3,Y4PS3B+FR10 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #* SUBR yok_4_gut_push_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_ADD_MOVE,MOVE_C_5,2,2 .word ANI_STARTATTACK,AT_PUNCH,6 .word ANI_FRICTION,4800h WLW ANI_SET_XVEL,0a8000h,AM_FACE_REL WL 2,Y4PS3B+FR1 WL 2,Y4PS3B+FR2 WL 2,Y4PS3B+FR3 .word ANI_ATTACK_ON, AMODE_GUTPUSH,-12,31,43,63 ;mode,x,y,w,h WL 2,Y4PS3B+FR4 WL 2,Y4PS3B+FR5 WL 9,Y4PS3B+FR6 .word ANI_ATTACK_OFF .word ANI_ZEROVELS WL ANI_IFBLOCKED,#missedb ;Yes, I hit blocker WL 9,Y4PS3B+FR6 WL 3,Y4PS3B+FR7 WL 3,Y4PS3B+FR8 WL 3,Y4PS3B+FR9 WL 3,Y4PS3B+FR10 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #missedb WL 3,Y4PS3B+FR6 WL 3,Y4PS3B+FR7 WL 3,Y4PS3B+FR8 WL 3,Y4PS3B+FR9 WL 3,Y4PS3B+FR10 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #* SUBR yok_combo_gut_push_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_CLR_BUTCOUNT .word ANI_FRICTION,4800h WLW ANI_SET_XVEL,98000h,AM_FACE_REL .word ANI_ATTACK_ON, AMODE_GUTPUSH,-12,31,43,63 ;mode,x,y,w,h .word ANI_IMMOBILIZE,60 WL 3,Y4PS3B+FR1 WL 3,Y4PS3B+FR2 WL 3,Y4PS3B+FR3 WL 3,Y4PS3B+FR4 WL 3,Y4PS3B+FR5 WL 10,Y4PS3B+FR6 .word ANI_ATTACK_OFF WL ANI_IFBLOCKED,#missedbc ;Yes, I hit blocker .WORD ANI_INC_COMBO .word ANI_IMMOBILIZE,60 WL 3,Y4PS3B+FR7 WL 3,Y4PS3B+FR8 WL 3,Y4PS3B+FR9 WL 3,Y4PS3B+FR10 WWWL ANI_IF_BUTCOUNT_LT,SKICKB_COUNT,1,#NO_SALT WL ANI_CHANGEANIM,yok_combo_salt_anim #NO_SALT .WORD ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO .word ANI_SETMODE,MODE_NORMAL .word ANI_END #missedbc .word ANI_IMMOBILIZE,1 WL 15,Y4PS3B+FR6 .WORD ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO WL 3,Y4PS3B+FR7 WL 3,Y4PS3B+FR8 WL 3,Y4PS3B+FR9 WL 3,Y4PS3B+FR10 .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * CLIMB UP TURNBUCKLES SUBR yok_climb_up_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_NOCONFINE|MODE_NOGRAVITY|MODE_OVERLAP .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SCROLL_CTRL,YOK_TBUKLY WL ANI_CODE,face_inside .word ANI_SHAKECORNER .word ANI_OFFSET,2,3,0 ;6,7,0, spread out over 3 WL 3,Y2CT2Z+FR1 .word ANI_OFFSET,2,2,0 WL 3,Y2CT2Z+FR2 .word ANI_OFFSET,2,2,0 WL 2,Y2CT2Z+FR3 WL 2,Y2CT2Z+FR4 WL 2,Y2CT2Z+FR5 WL 2,Y2CT2Z+FR6 WL 2,Y2CT2Z+FR7 WL 2,Y2CT2Z+FR8 .WORD ANI_ADD_MOVE,MOVE_C_5,2,2 .word ANI_ZEROVELS .word ANI_SETPLYRMODE,MODE_ONTURNBKL .word ANI_SETMODE,MODE_NOAUTOFLIP|MODE_NOCONFINE|MODE_NOGRAVITY|MODE_OVERLAP .word ANI_SCROLL_CTRL,SC_RESTORE #repeat WL 20,Y2CT2Z+FR8 WL ANI_GOTO,#repeat #***************************************************************************** * * CLIMB DOWN TURNBUCKLES SUBR yok_climb_down_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_NOCONFINE|MODE_NOGRAVITY .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SCROLL_CTRL,SC_RESTORE WL ANI_CODE,face_inside .word ANI_SHAKECORNER WL 2,Y2CT2Z+FR8 WL 2,Y2CT2Z+FR7 WL 2,Y2CT2Z+FR6 WL 2,Y2CT2Z+FR5 WL 2,Y2CT2Z+FR4 WL 2,Y2CT2Z+FR3 .word ANI_OFFSET,-2,-2,0 WL 3,Y2CT2Z+FR2 .word ANI_OFFSET,-2,-2,0 WL 3,Y2CT2Z+FR1 .word ANI_OFFSET,-2,-3,0 .word ANI_ZEROVELS .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * BIG NASTY BUTT-DROP OFF THE TURNBUCKLE SUBR yok_tbukl_buttdrop_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_NOCONFINE|MODE_NOGRAVITY|MODE_OVERLAP .word ANI_SETSPEED,100h .word ANI_ZEROVELS .word ANI_SCROLL_CTRL,SC_RESTORE .word ANI_OFFSET,-20,0,0 WL 4,Y2ZZ2X+FR1 .word ANI_OFFSET,0,60,0 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 36,190,190,190,90000h,TGT_CHEST,0,0,-30 WL ANI_CODE,check_xvel .word ANI_STARTATTACK,AT_BUTTSTOMP,36 ; .word ANI_SETPLYRMODE,MODE_INAIR2 WL ANI_CODE,set_tbukl_airmode .word ANI_GRAVITY_ON .word ANI_SHAKECORNER WL 4,Y2ZZ2X+FR2 WL 4,Y2ZZ2X+FR3 WL ANI_CODE,set_tbukl_confine .word ANI_ATTACK_ON_Z,AMODE_BSTOMP,-36,0,-30,110,38,80 WWL ANI_IFOPPMODE,MODE_ONGROUND,#opp_onground WWL ANI_IFOPPMODE,MODE_DEAD,#opp_onground .word ANI_ATTACK_ON_Z,AMODE_BSTOMP,-36,28,-30,110,38,80 #opp_onground WL 4,Y2ZZ2X+FR4 .word ANI_WAITHITGND .word ANI_SETPLYRMODE,MODE_ONGROUND .word ANI_ZEROVELS .word ANI_ATTACK_OFF .WORD ANI_ADD_MOVE,MOVE_C_5,2,2 WL ANI_IFSTATUS,#hit ;missed WL ANI_CODE,CALL_MISSES ; WL ANI_CODE,tbukl_miss_damage WL ANI_CODE,HIT_THE_MAT .word ANI_SHAKER,50 .word ANI_SHAKEALL,2 .word ANI_BOUNCE,6 WL 4,Y2ZZ2X+FR5 WL 4,Y2ZZ2X+FR4 .word ANI_WAITHITGND .word ANI_SHAKER,25 WL ANI_CODE,HIT_THE_MAT WL ANI_GOTO,#common #hit WL ANI_CODE,CALL_ANI_AVERAGE_MOVE WL ANI_CODE,HIT_THE_MAT .word ANI_DRAW_NAME,13 .word ANI_SHAKER,50 .word ANI_SHAKEALL,3 .word ANI_BOUNCE,6 WLW ANI_SET_ZVEL,20000h,AM_ABS WL 4,Y2ZZ2X+FR5 WL 4,Y2ZZ2X+FR4 .word ANI_WAITHITGND ;TODO (JS) - put some kind of attack here. .word ANI_ZEROVELS .word ANI_IMMOBILIZE,30 .word ANI_SHAKER,25 WL ANI_CODE,HIT_THE_MAT #common WL 4,Y2ZZ2X+FR5 WL 4,Y2ZZ2X+FR6 WL 12,Y2ZZ2X+FR7 .word ANI_XFLIP WL 4,Y3GU2A+FR3 WL ANI_CHANGEANIM,yok_faceup_getup2_anim #***************************************************************************** * * GRAB & FLING OPPONENT (INTO A RUN) SUBR yok_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,Y1TT5Z+FR2 WL 2,Y1TT5Z+FR3 WL ANI_GOTO,#cont SUBR yok_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,40,40,90000h,TGT_CHEST,40,0,25 WL ANI_SET_YVEL,0000h WL 5,Y4GF3B+FR2 .word ANI_ATTACK_ON, AMODE_PUPPET_NOFLAIL,33,56,44,18 ;mode,x,y,w,h WWL ANI_WAITHITOPP,6,Y4GF3B+FR3 .word ANI_ZERO_XZVELS WWL ANI_WAITHITOPP,2,Y4GF3B+FR3 .word ANI_ATTACK_OFF .WORD ANI_ADD_MOVE,MOVE_C_5,2,2 WL ANI_IFNOTSTATUS,#missedb 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,Y4GF3B+FR3,#puppet_tbl,0 WWLLW ANI_SUPERSLAVE2,5,Y4GF3B+FR4,#puppet_tbl,1 WWLLW ANI_SUPERSLAVE2,4,Y4GF3B+FR5,#puppet_tbl,2 WWLLW ANI_SUPERSLAVE2,3,Y4GF3B+FR6,#puppet_tbl,3 WWLLW ANI_SUPERSLAVE2,3,Y4GF3B+FR7,#puppet_tbl,4 WWLLW ANI_SUPERSLAVE2,3,Y4GF3B+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 10,Y4GF3B+FR9 .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,Y4GF3B+FR3 #missed WL ANI_CODE,CALL_MISSES WL 8,Y4GF3B+FR3 WL 4,Y4GF3B+FR2 .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,50,1,1 LWWW H4YR3A+FR2,51,0,1 LWWW H4YR3A+FR3,45,-2,1 LWWW H4YR3A+FR5,33,4,1 LWWW H3RN3A+FR1,-6,6,0 LWWW H3RN3A+FR2,6,13,0 #Razor LWWW R4YR3A+FR1,38,10,0 LWWW R4YR3A+FR2,28,10,0 LWWW R4YR3A+FR3,13,0,0 LWWW R4YR3A+FR4,-4,4,0 LWWW R3RN3D+FR10,-8,16,0 LWWW R3RN3D+FR11,8,22,0 #Taker LWWW U4YR3B+FR2,35,11,0 LWWW U4YR3B+FR3,42,6,0 LWWW U4YR3B+FR4,32,10,0 LWWW U4YR3B+FR5,19,14,0 LWWW U3RN3A+FR2,-12,18,0 LWWW U3RN3A+FR2,-20,22,0 #Yokozuna LWWW Y4YR3A+FR1,54,5,1 LWWW Y4YR3A+FR4,37,4,1 LWWW Y4YR3A+FR5,27,1,1 LWWW Y4YR3A+FR7,-4,-3,1 LWWW Y3RN3C+FR7,-5,16,0 LWWW Y3RN3C+FR8,15,19,0 #Shawn LWWW S4YR3A+FR2,31,-1,1 LWWW S4YR3A+FR3,50,-12,1 LWWW S4YR3A+FR5,14,0,1 LWWW S4YR3A+FR6,6,2,1 LWWW S3RN3A+FR2,-6,14,0 LWWW S3RN3A+FR3,7,19,0 #BamBam LWWW B4YR3A+FR3,44,6,0 LWWW B4YR3A+FR4,50,-1,0 LWWW B4YR3A+FR5,49,-2,0 LWWW B4YR3A+FR7,-15,-1,0 LWWW B3RN3A+FR1,-16,17,0 LWWW B3RN3A+FR2,-5,23,0 #Doink LWWW D4YR3B+FR1,51,6,1 LWWW D4YR3B+FR2,50,7,1 LWWW D4YR3B+FR3,34,4,1 LWWW D4YR3B+FR4,10,9,1 LWWW D3RN3B+FR3,-1,18,0 LWWW D3RN3B+FR4,1,23,0 #Adam .long 0 #Lex LWWW L4YR3B+FR1,53,8,1 LWWW L4YR3B+FR2,40,0,1 LWWW L4YR3B+FR3,15,0,1 LWWW L4YR3B+FR4,-27,1,1 LWWW L3RN3B+FR2,-4,16,0 LWWW L3RN3B+FR3,17,18,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 #***************************************************************************** * SUBR yok_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,Y3GU4A+FR13 WL 2,Y3GU2A+FR12 WL 2,Y3GU2A+FR7 WL ANI_SET_YVEL,39000h WL 4,Y3CP3B+FR1 WL 4,Y3CP3B+FR2 WL 4,Y3CP3B+FR3 WL 4,Y3CP3B+FR4 WL 4,Y3CP3B+FR5 WL 4,Y3CP3B+FR6 WL 4,Y3CP3B+FR7 WL 4,Y3CP3B+FR8 .ref am_I_dead 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 WL 4,Y3RL1A+FR1 .word ANI_WAITROLL .ref yok_faceup_getup_anim WL ANI_CHANGEANIM,yok_faceup_getup_anim #***************************************************************************** SUBR yok_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,3000h,AM_FACE_REL WL 3,Y4CR3B+FR1 .word ANI_OFFSET,5,0,0 WL 3,Y4CR3B+FR2 .word ANI_BENDROPE,2 .word ANI_OFFSET,8,0,0 ;***** WL 3,Y4CR3B+FR3 .word ANI_OFFSET,8,0,0 ;***** WL 3,Y4CR3B+FR4 .word ANI_ROPE_Z,R_TOP,RZ_HIGH .word ANI_ROPE_Z,R_MIDDLE,RZ_HIGH .word ANI_OFFSET,5,0,0 ;***** WL 3,Y4CR3B+FR5 .word ANI_OFFSET,7,0,0 ;***** WL 3,Y4CR3B+FR6 .word ANI_OFFSET,12,0,0 ;***** WL 3,Y4CR3B+FR8 .word ANI_BENDROPE,2 .word ANI_OFFSET,12,0,0 ;***** WL 3,Y4CR3B+FR9 .word ANI_ROPE_Z,R_BOTTOM,RZ_HIGH .word ANI_OFFSET,10,0,0 ;***** WL 3,Y4CR3B+FR10 .word ANI_BENDROPE,-1 .word ANI_OFFSET,10,-3,0 .word ANI_ZEROVELS WL 3,Y4CR3B+FR11 WL 3,Y4CR3B+FR12 ;now jump off... WL 2,Y4JD4A+FR3 .word ANI_SET_IDIOT WWL ANI_SETLONG,OBJ_GRAVITY,0F000h WL ANI_SET_YVEL,60000h WLW ANI_SET_XVEL,30000h,AM_FACE_REL ; WL 3,Y4JD4A+FR5 .word ANI_WAITHITGND .word ANI_SHAKER,40 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,Y4JD4A+FR6 WL 2,Y4JD4A+FR7 WL 4,Y4JD4A+FR8 .word ANI_FACEDOWN .word ANI_CLEAR_CLIMB .word ANI_SETMODE,MODE_NOCONFINE .word ANI_END #***************************************************************************** SUBR yok_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 2,Y4JD4A+FR3 WWL ANI_SETLONG,OBJ_GRAVITY,0F000h 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,Y4JD4A+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 3,Y4JD4A+FR6 WL 2,Y4JD4A+FR7 WL 2,Y4JD4A+FR8 WLW ANI_SET_XVEL,4000h,AM_FACE_REL ;climb through WL 3,Y4CR3B+FR1 .word ANI_OFFSET,10,0,0 ;***** WL 2,Y4CR3B+FR2 .word ANI_BENDROPE,2 .word ANI_OFFSET,10,0,0 ;***** WL 3,Y4CR3B+FR3 .word ANI_OFFSET,10,0,0 ;***** WL 2,Y4CR3B+FR4 .word ANI_ROPE_Z,R_BOTTOM,RZ_NORM WL 3,Y4CR3B+FR5 WL 2,Y4CR3B+FR6 .word ANI_ROPE_Z,R_MIDDLE,RZ_NORM .word ANI_OFFSET,10,0,0 ;***** WL 3,Y4CR3B+FR8 .word ANI_BENDROPE,3 .word ANI_OFFSET,10,0,0 ;***** WL 2,Y4CR3B+FR9 .word ANI_OFFSET,10,0,0 ;***** WL 3,Y4CR3B+FR10 .word ANI_ROPE_Z,R_MIDDLE,RZ_NORM .word ANI_ROPE_Z,R_BOTTOM,RZ_NORM .word ANI_BENDROPE,-1 .word ANI_OFFSET,6,0,0 WL 2,Y4CR3B+FR11 .word ANI_OFFSET,8,0,0 WL 3,Y4CR3B+FR12 .word ANI_ZEROVELS .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 yok_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,Y1TT5Z+FR2 WL 3,Y1TT5Z+FR3 #dir4 WL 4,Y3GU2A+FR14 WL 4,Y3GU2A+FR13 WL 4,Y3GU2A+FR12 WL 5,Y3GU2A+FR11 WL 5,Y3GU2A+FR10 ; WL 4,Y3GU2A+FR9 WL 5,Y3GU2A+FR8 WL 5,Y3GU2A+FR7 ;roll over once WLW ANI_SET_ZVEL,90000h,AM_ABS WL 3,Y3RL1A+FR6 WL 3,Y3RL1A+FR7 WL 3,Y3RL1A+FR8 WL 3,Y3RL1A+FR9 WL 3,Y3RL1A+FR10 WL 3,Y3RL1A+FR1 WL 3,Y3RL1A+FR2 .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_NOCONFINE|MODE_OVERLAP|MODE_NOSHADOW|MODE_NOCOLLIS .word ANI_SET_IDIOT ;climb through .word ANI_OFFSET,0,-37h,0 ;x,y,z .WORD ANI_XFLIP WL 3,Y2KB3A+FR7 WL 3,Y2KB3A+FR6 WL 3,Y2KB3A+FR5 .WORD ANI_XFLIP .word ANI_CLEAR_CLIMB .word ANI_FACEUP .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 yok_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 .WORD ANI_XFLIP WL 3,Y2KB3A+FR5 WL 3,Y2KB3A+FR6 WL 3,Y2KB3A+FR7 .WORD ANI_XFLIP .word ANI_OFFSET,0,37h,-60 ;roll WLW ANI_SET_ZVEL,-70000h,AM_ABS .word ANI_FRICTION,3000h WL 3,Y3RL1A+FR1 WL 3,Y3RL1A+FR10 WL 3,Y3RL1A+FR9 WL 3,Y3RL1A+FR8 WL 3,Y3RL1A+FR7 WL 3,Y3RL1A+FR6 .word ANI_ZEROVELS .word ANI_GRAVITY_ON ;get up WL 4,Y3GU2A+FR7 WL 4,Y3GU2A+FR8 ; WL 4,Y3GU2A+FR9 WL 4,Y3GU2A+FR10 WL 4,Y3GU2A+FR11 WL 4,Y3GU2A+FR12 WL 4,Y3GU2A+FR13 WL 4,Y3GU2A+FR14 ; WL ANI_CODE,clr_climb .word ANI_CLEAR_CLIMB .word ANI_FACEDOWN .word ANI_ZEROVELS .word ANI_SETMODE,MODE_NOCONFINE .word ANI_END #***************************************************************************** SUBR yok_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,Y1TT5Z+FR2 WL 3,Y1TT5Z+FR3 #dir4 WL 4,Y3GU2A+FR14 WL 4,Y3GU2A+FR13 WL 4,Y3GU2A+FR12 WL 5,Y3GU2A+FR11 WL 5,Y3GU2A+FR10 ; WL 4,Y3GU2A+FR9 WL 5,Y3GU2A+FR8 WL 5,Y3GU2A+FR7 ;roll over once WL ANI_CODE,#set_zvel2 WL 3,Y3RL1A+FR6 WL 3,Y3RL1A+FR5 .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_NOCONFINE|MODE_OVERLAP|MODE_NOSHADOW|MODE_NOCOLLIS WL 3,Y3RL1A+FR4 WL 3,Y3RL1A+FR3 WL 3,Y3RL1A+FR2 .word ANI_SET_IDIOT ;climb through .word ANI_OFFSET,0,-61,0 .word ANI_ZEROVELS .WORD ANI_XFLIP WL 3,Y4KB3A+FR6 WL 3,Y4KB3A+FR7 WL 3,Y4KB3A+FR8 .WORD ANI_XFLIP .word ANI_ZERO_XZVELS .word ANI_CLEAR_CLIMB .WORD ANI_FACEDOWN .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 yok_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,Y3RL1A+FR6 WL 3,Y3RL1A+FR5 .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_NOCONFINE|MODE_OVERLAP|MODE_NOSHADOW|MODE_NOCOLLIS WL 3,Y3RL1A+FR4 WL 3,Y3RL1A+FR3 WL 3,Y3RL1A+FR2 ;climb through .word ANI_OFFSET,0,-61,0 .word ANI_ZEROVELS .word ANI_XFLIP WL 3,Y4KB3A+FR6 WL 3,Y4KB3A+FR7 WL 3,Y4KB3A+FR8 .word ANI_XFLIP .word ANI_ZERO_XZVELS .word ANI_CLEAR_CLIMB .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NOCONFINE .word ANI_END #***************************************************************************** SUBR yok_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 .WORD ANI_XFLIP WL 3,Y4KB3A+FR8 WL 3,Y4KB3A+FR7 WL 3,Y4KB3A+FR6 .WORD ANI_XFLIP .word ANI_OFFSET,0,61,0 ;roll over WL ANI_CODE,#set_zvel2 WL 3,Y3RL1A+FR3 WL 3,Y3RL1A+FR4 WL 3,Y3RL1A+FR5 WL 3,Y3RL1A+FR6 .word ANI_ZEROVELS ;get up WL 4,Y3GU2A+FR7 WL 4,Y3GU2A+FR8 ; WL 4,Y3GU2A+FR9 WL 4,Y3GU2A+FR10 WL 4,Y3GU2A+FR11 WL 4,Y3GU2A+FR12 WL 4,Y3GU2A+FR13 WL 4,Y3GU2A+FR14 ; WL ANI_CODE,clr_climb .word ANI_CLEAR_CLIMB .WORD ANI_FACEDOWN .word ANI_SETMODE,MODE_NOCONFINE .word ANI_END #set_zvel2 movi 52000h,a0 move a0,*a13(OBJ_ZVEL),L rets #**************************************************************************** * * 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 yok_2_pin_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP .word ANI_ZEROVELS .word ANI_SETSPEED,100h ;Rotate! WL 3,Y1TT5Z+FR2 WL 3,Y1TT5Z+FR3 SUBR yok_4_pin_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP .word ANI_ZEROVELS .word ANI_SETSPEED,100h WL 4,Y3PF3C+FR1 WL 4,Y3PF3C+FR2 WL 4,Y3PF3C+FR3 WL 4,Y3PF3C+FR4 WL 4,Y3PF3C+FR5 WL 4,Y3PF3C+FR6 WL 4,Y3PF3C+FR7 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 30,999,80h,50h,90000h,TGT_CHEST|TGT_GROUND,0,57,-15 WL ANI_CODE,hit_nearest WL 4,Y3PF3C+FR8 .word ANI_OFFSET,0,34,0 ;x,y,z WL 22,Y3PF3C+FR9 WL ANI_CODE,#bucket_salt WWL ANI_SETLONG,DEBRIS_X,[5,-5] ;Y,X of head .word ANI_SHAKER,40 WL ANI_CODE,HIT_THE_MAT .word ANI_SHAKEALL,2 .word ANI_ATTACK_ON_Z, AMODE_STOMP,-40,-8,-25,76,20,50 ;mode,x,y,z,w,h,d .word ANI_ZERO_XZVELS WL 4,Y3PF3C+FR10 WWL ANI_SETLONG,DEBRIS_X,[5,-15] ;Y,X of head WL 4,Y3PF3C+FR11 WWL ANI_SETLONG,DEBRIS_X,[5,5] ;Y,X of head WL 4,Y3PF3C+FR12 .word ANI_ATTACK_OFF WL ANI_CODE,DO_CROWD_CHEER .word ANI_BOUNCE,3 WL 4,Y3PF3C+FR12 .word ANI_WAITHITGND WWL ANI_SETLONG,DEBRIS_X,0 ;Y,X of head WL ANI_CODE,SMALL_BOUNCE .word ANI_SHAKEALL,2 .word ANI_ATTACK_ON_Z, AMODE_STOMP,-40,-8,-25,76,20,50 ;mode,x,y,z,w,h,d WL 1,Y3PF3C+FR12 .word ANI_ATTACK_OFF WL ANI_SET_YVEL,30000h .ref HIT_THE_MAT,SMALL_BOUNCE WL 4,Y3PF3C+FR12 .ref win_announce WL ANI_CODE,win_announce ; WLW ANI_ATTCHIMAGE,0,0 ;Turn it off WL 50,Y3PF3C+FR12 .word ANI_LOOP ;Do another ground hit on opponent .ref grnd_hit WL ANI_CODE,grnd_hit WL ANI_SET_YVEL,42000h WLW ANI_SET_ZVEL,22000h,AM_ABS WL 5,Y5GU4B+FR1 WL 5,Y5GU4B+FR2 WL 5,Y5GU4B+FR3 WL 5,Y5GU4B+FR4 .word ANI_WAITHITGND .word ANI_ZEROVELS WL 5,Y5GU4B+FR5 WL 5,Y5GU4V+FR6 WL 5,Y5GU4B+FR7 WL 5,Y5GU4B+FR8 WL 7,Y5RV5A+FR1 WL 7,Y5RV5A+FR2 WL 7,Y5RV5A+FR3 WL 7,Y5RV5A+FR4 WL 7,Y5RV5A+FR5 WL 7,Y5RV5A+FR6 WL 7,Y5RV5A+FR7 WL 7,Y5RV5A+FR8 WL 40,Y5RV5A+FR9 WL 7,Y5RV5A+FR10 WL 7,Y5RV5A+FR11 #hold WL 1000,Y5RV5A+FR12 WL ANI_GOTO,#hold .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END #bucket_salt movi 100,a0 .ref RNDPER calla RNDPER jrls #x calla create_bucket_salt #x rets ****************************************************************************** * RAISE ARM IN VICTORY FROM A STANCE SUBR yok_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,Y1TT5Z+FR2 WL 3,Y1TT5Z+FR3 WL ANI_GOTO,#cont SUBR yok_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 7,Y5RV5A+FR1 WL 7,Y5RV5A+FR2 WL 7,Y5RV5A+FR3 WL 7,Y5RV5A+FR4 WL 7,Y5RV5A+FR5 WL 7,Y5RV5A+FR6 WL 7,Y5RV5A+FR7 WL 7,Y5RV5A+FR8 WL 40,Y5RV5A+FR9 WL 7,Y5RV5A+FR10 WL 7,Y5RV5A+FR11 .word ANI_SET_RPTCOUNT,-4 ;set count to rnd from 0 to 4 #lp0 WL 55,Y5RV5A+FR12 .word ANI_DEC_RPTCOUNT WL ANI_IF_RPTCOUNT,#lp0 WL ANI_CODE,check_raisearm_bit WL ANI_IFSTATUS,#wakeup ;don't wake up. #floop WL 1000,Y5RV5A+FR12 WL ANI_GOTO,#floop #wakeup .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_FACEDOWN .word ANI_END #***************************************************************************** * * #4 UPPERCUT *********************************************************************** SUBR yok_combo_uppercut_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_SETSPEED,100h .word ANI_ZEROVELS .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_STARTATTACK,AT_PUNCH,8 WL 2,Y4UP3B+FR1 WL 2,Y4UP3B+FR2 WL 2,Y4UP3B+FR3 WL 2,Y4UP3B+FR4 .word ANI_ATTACK_ON, AMODE_UPRCUT,20,34,80,70 ;mode,x,y,w,h WL 2,Y4UP3B+FR5 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#missedc WL ANI_IFBLOCKED,#missedbc ;Yes, I hit blocker ;Got him ;Hit, spray some explosions WL ANI_CODE,#set_zvel .word ANI_SHAKER,35 .word ANI_INC_COMBO ;Turn on explosion sound effect WL ANI_CODE,HIT_THE_MAT WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit2c WL 10,Y4UP3B+FR6 #no_hit2c WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO WL 20,Y4UP3B+FR6 WL 2,Y4UP3B+FR7 WL 2,Y4UP3B+FR8 WL 2,Y4UP3B+FR9 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END #missedbc WL 20,Y4UP3B+FR6 #missedc WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO WL 5,Y4UP3B+FR6 WL 5,Y4UP3B+FR7 WL 5,Y4UP3B+FR8 WL 5,Y4UP3B+FR9 .word ANI_SETMODE,MODE_NORMAL .word ANI_END *********************************************************************** SUBR yok_4_uppercut_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_SETSPEED,100h .word ANI_ZEROVELS .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .WORD ANI_ADD_MOVE,MOVE_C_5,2,2 WLW ANI_SET_XVEL,10000h,AM_FACE_REL .word ANI_STARTATTACK,AT_PUNCH,8 WL 1,Y4UP3B+FR1 WL 2,Y4UP3B+FR2 WL 2,Y4UP3B+FR3 WL 2,Y4UP3B+FR4 .word ANI_ATTACK_ON, AMODE_UPRCUT,20,24,40,80 ;mode,x,y,w,h WL 2,Y4UP3B+FR5 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#missed WL ANI_IFBLOCKED,#missedb ;Yes, I hit blocker ;Got him ;Hit, spray some explosions .word ANI_SET_ATTACH .word ANI_DEBRISAT,400,1,10,50,0 ;%chance, tbl index, x,y,z off .word ANI_DETACH WL ANI_CODE,CALL_OTHER_AVERAGE WL ANI_CODE,impact_sound WL ANI_CODE,#set_zvel .word ANI_SHAKER,35 WL ANI_CODE,HIT_THE_MAT WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit2 WL 10,Y4UP3B+FR6 #no_hit2 WL 20,Y4UP3B+FR6 WL 2,Y4UP3B+FR7 WL 2,Y4UP3B+FR8 WL 2,Y4UP3B+FR9 .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END #set_zvel move *a13(WHOIHIT),a0,L move *a0(OBJ_ZVEL),a14,L jrnz #skip movi 10000h,a14 move a14,*a0(OBJ_ZVEL),L #skip rets #missedb WL 10,Y4UP3B+FR6 #missed WL 4,Y4UP3B+FR6 WL 4,Y4UP3B+FR7 WL 4,Y4UP3B+FR8 WL 4,Y4UP3B+FR9 ; .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #4 Jabs SUBR yok_2_jabs_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_LEAPING,17 WL 1,Y1TT5Z+FR2 WL 1,Y1TT5Z+FR3 SUBR yok_4_jabs_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_LEAPING,15 .WORD ANI_ADD_MOVE,MOVE_C_5,2,2 .word ANI_SET_RPTCOUNT,3 ;rpt 2 times #rpt ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 5,999,4ah,50,90000h,TGT_HEAD,65,90,10 WL ANI_CODE,no_bk_xvel WL ANI_SET_YVEL,10000h .word ANI_CLR_BUTCOUNT WL 3,Y4JB3A+FR1 WL 3,Y4JB3A+FR2 .word ANI_ATTACK_ON, AMODE_PUNCH2,27,80,48,18 ;mode,x,y,w,h .word ANI_ZERO_XZVELS WL 2,Y4JB3A+FR3 .word ANI_ATTACK_OFF WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit2 WL ANI_SET_YVEL,40000h WL 3,Y4JB3A+FR4 .word ANI_WAITHITGND .word ANI_ZEROVELS WL ANI_GOTO,#missed #no_hit2 WL ANI_IFNOTSTATUS,#missed WL ANI_IFBLOCKED,#missedb ;Yes, I hit blocker .word ANI_IMMOBILIZE,20 .word ANI_SET_ATTACH .word ANI_DEBRISAT,200,2,0,100,0 ;%chance, tbl index, x,y,z off .ref impact_sound WL ANI_CODE,impact_sound .word ANI_SHAKEALL,1 .word ANI_SHAKER,25 .word ANI_DETACH ; .word ANI_SET_ATTACH WLLL ANI_SETOPPVELS,28000h,18000h,0h ;x,y,z vels WL 2,Y4JB3A+FR4 WL 2,Y4JB3A+FR5 WL 2,Y4JB3A+FR6 WL 2,Y4JB3A+FR7 WWWL ANI_IF_BUTCOUNT_LT,SPUNCHB_COUNT,1,#ex #goto .word ANI_DEC_RPTCOUNT WL ANI_IF_RPTCOUNT,#rpt #ex2 .word ANI_IMMOBILIZE,0 WL 8,Y4JB3A+FR7 .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END #ex WWWL ANI_IF_BUTCOUNT_LT,PUNCHB_COUNT,1,#ex2 WL ANI_GOTO,#goto #missed .word ANI_SHAKER,30 WL ANI_CODE,HIT_THE_MAT #missedb .word ANI_IMMOBILIZE,0 WL 2,Y4JB3A+FR4 WL 2,Y4JB3A+FR5 WL 2,Y4JB3A+FR6 WL 2,Y4JB3A+FR7 .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END ********************************************************************************* SUBR yok_combo_jabs_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .WORD ANI_CLEAR_COMBO .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_STARTATTACK,AT_LEAPING,15 WL ANI_CODE,no_bk_xvel WL ANI_SET_YVEL,10000h WL 3,Y4JB3A+FR1 WL 3,Y4JB3A+FR2 .word ANI_ZERO_XZVELS .WORD ANI_INC_COMBO .word ANI_ATTACK_ON, AMODE_PUNCH2,27,50,68,38 ;mode,x,y,w,h WL 1,Y4JB3A+FR3 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#missedc WL ANI_IFBLOCKED,#missedbc ;Yes, I hit blocker WLLL ANI_SETOPPVELS,0,10000h,0h ;x,y,z vels .WORD ANI_INC_COMBO WL 2,Y4JB3A+FR3 .word ANI_IMMOBILIZE,25 .word ANI_SET_ATTACH .word ANI_DEBRISAT,200,2,0,100,0 ;%chance, tbl index, x,y,z off .ref impact_sound WL ANI_CODE,impact_sound .word ANI_SHAKEALL,1 .word ANI_SHAKER,25 .word ANI_DETACH WL 2,Y4JB3A+FR4 WL 3,Y4JB3A+FR5 WL 2,Y4JB3A+FR6 WL 2,Y4JB3A+FR7 .word ANI_SET_RPTCOUNT,3 ;rpt 2 times #rptc .word ANI_CLR_BUTCOUNT WL ANI_CODE,no_bk_xvel WL ANI_SET_YVEL,10000h WL 1,Y4JB3A+FR1 WL 2,Y4JB3A+FR2 .word ANI_ZERO_XZVELS .word ANI_ATTACK_ON, AMODE_PUNCH2,27,50,68,38 ;mode,x,y,w,h WL 1,Y4JB3A+FR3 .word ANI_ATTACK_OFF WL ANI_IFNOTSTATUS,#missedc WL ANI_IFBLOCKED,#missedbc ;Yes, I hit blocker ; .word ANI_SET_ATTACH WLLL ANI_SETOPPVELS,000H,10000h,0h ;x,y,z vels .WORD ANI_INC_COMBO WL 1,Y4JB3A+FR3 .word ANI_IMMOBILIZE,20 .word ANI_SET_ATTACH .word ANI_DEBRISAT,200,2,0,100,0 ;%chance, tbl index, x,y,z off .ref impact_sound WL ANI_CODE,impact_sound .word ANI_SHAKEALL,1 .word ANI_SHAKER,25 .word ANI_DETACH WL 1,Y4JB3A+FR4 WL 2,Y4JB3A+FR5 WL 1,Y4JB3A+FR6 WL 2,Y4JB3A+FR7 .word ANI_DEC_RPTCOUNT WL ANI_IF_RPTCOUNT,#rptc #exc .word ANI_IMMOBILIZE,0 WWWL ANI_IF_BUTCOUNT_LT,KICKB_COUNT,1,#NO_KNEE WL ANI_CHANGEANIM,yok_combo_knee_anim #NO_KNEE WWWL ANI_IF_BUTCOUNT_LT,SKICKB_COUNT,1,#NO_UPPER WL ANI_CHANGEANIM,yok_combo_uppercut_anim #NO_UPPER WWWL ANI_IF_BUTCOUNT_LT,PUNCHB_COUNT,1,#NO_KICK WL ANI_CHANGEANIM,yok_combo_superkick_anim #NO_KICK .WORD ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END #missedbc WL 5,Y4JB3A+FR4 #missedc .WORD ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO WL ANI_SET_YVEL,40000h WL 3,Y4JB3A+FR4 .word ANI_WAITHITGND .word ANI_ZEROVELS .word ANI_IMMOBILIZE,0 WL 3,Y4JB3A+FR4 WL 3,Y4JB3A+FR5 WL 3,Y4JB3A+FR6 WL 8,Y4JB3A+FR7 .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END #***************************************************************************** * * #2,#4 Slap - Clobber down SUBR yok_2_run_slap_anim ;From a run .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP ;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_LEAPING,17 WL ANI_CODE,create_bucket_salt WWL ANI_SETLONG,DEBRIS_X,[76,-62] ;Y,X of head WL 3,Y4PU4G+FR1 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 0ch,999,7fh,55,90000h,TGT_HEAD,15,105,-35 WL ANI_GOTO,#cont SUBR yok_2_slap2_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP WL ANI_CODE,create_bucket_salt .word ANI_STARTATTACK,AT_LEAPING,17 WWL ANI_SETLONG,DEBRIS_X,[76,-62] ;Y,X of head WL 1,Y1TT5Z+FR2 WL 1,Y1TT5Z+FR3 WL 3,Y4PU4G+FR1 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 0dh,999,4fh,55,90000h,TGT_HEAD,65,105,-35 #cont .WORD ANI_ADD_MOVE,MOVE_C_5,2,2 WWL ANI_SETLONG,DEBRIS_X,[107,-42] ;Y,X of head WL 4,Y4PU4G+FR2 WWL ANI_SETLONG,DEBRIS_X,[133,-8] ;Y,X of head WL 4,Y4PU4G+FR3 WWL ANI_SETLONG,DEBRIS_X,[129,50] ;Y,X of head WL 4,Y4PU4G+FR4 .word ANI_ZERO_XZVELS .word ANI_ATTACK_ON, AMODE_BSTOMP2,22-10,66,47+20,30 ;mode,x,y,w,h WWL ANI_SETLONG,DEBRIS_X,[75,79] ;Y,X of head WL 3,Y4PU4G+FR5 .word ANI_ATTACK_OFF .word ANI_OFFSET,0,0,20 WL ANI_IFNOTSTATUS,#missed WL ANI_IFBLOCKED,#missedb ;Yes, I hit blocker ;Got him WL ANI_CODE,HIT_THE_MAT ;Immobilize player for 30 ticks without meter on! .word ANI_IMMOBILIZE,55-11 .word ANI_SHAKER,40 WWL ANI_SETLONG,DEBRIS_X,[19,28] ;Y,X of head WL 3,Y4PU4G+FR6 WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit2 WL ANI_SET_YVEL,40000h WWL ANI_SETLONG,DEBRIS_X,[28,28] ;Y,X of head WL 3,Y4PU4G+FR7 #no_hit2 .word ANI_WAITHITGND .word ANI_ZEROVELS WWL ANI_SETLONG,DEBRIS_X,[28,28] ;Y,X of head WL 6,Y4PU4G+FR7 WWL ANI_SETLONG,DEBRIS_X,0 ;Y,X of head .ref spunch_delay WL ANI_CODE,spunch_delay WL ANI_IFNOTSTATUS,#none WL 15,Y4PU4G+FR7 #none .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_FACEUP .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END #missed #missedb .word ANI_SHAKER,35 WWL ANI_SETLONG,DEBRIS_X,[19,28] ;Y,X of head WL 3,Y4PU4G+FR6 WWL ANI_SETLONG,DEBRIS_X,[28,28] ;Y,X of head WL 4,Y4PU4G+FR7 WWL ANI_SETLONG,DEBRIS_X,0 ;Y,X of head WL ANI_CODE,spunch_delay WL ANI_IFNOTSTATUS,#none1 WL 15,Y4PU4G+FR7 #none1 .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 yok_4_run_slap_anim ;From a run .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .ref create_bucket_salt WL ANI_CODE,create_bucket_salt .word ANI_STARTATTACK,AT_LEAPING,17 WWL ANI_SETLONG,DEBRIS_X,[76,-62] ;Y,X of head WL 3,Y4PU4G+FR1 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 0ch,999,7fh,55,90000h,TGT_HEAD,15,105,35 WL ANI_GOTO,#cont SUBR yok_4_slap2_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP WL ANI_CODE,create_bucket_salt .word ANI_STARTATTACK,AT_LEAPING,15 WWL ANI_SETLONG,DEBRIS_X,[76,-62] ;Y,X of head WL 3,Y4PU4G+FR1 ; ticks,range max,hiX,hiZ,hiYvel,tgt,Xoff,Yoff,Zoff LEAPATOPP 0dh,999,4fh,55,90000h,TGT_HEAD,65,105,35 #cont .WORD ANI_ADD_MOVE,MOVE_C_5,2,2 WWL ANI_SETLONG,DEBRIS_X,[107,-42] ;Y,X of head WL 4,Y4PU4G+FR2 WWL ANI_SETLONG,DEBRIS_X,[133,-8] ;Y,X of head WL 4,Y4PU4G+FR3 WWL ANI_SETLONG,DEBRIS_X,[129,50] ;Y,X of head WL 4,Y4PU4G+FR4 .word ANI_ZERO_XZVELS .word ANI_ATTACK_ON, AMODE_BSTOMP2,22-10,66,47+20,30 ;mode,x,y,w,h WWL ANI_SETLONG,DEBRIS_X,[75,79] ;Y,X of head WL 3,Y4PU4G+FR5 .word ANI_ATTACK_OFF .word ANI_OFFSET,0,0,-20 WWL ANI_SETLONG,DEBRIS_X,[19,28] ;Y,X of head WL 3,Y4PU4G+FR6 WL ANI_IFNOTSTATUS,#missed WL ANI_IFBLOCKED,#missedb ;Yes, I hit blocker ;Got him WL ANI_CODE,HIT_THE_MAT ;Immobilize player for 30 ticks without meter on! .word ANI_IMMOBILIZE,55 .word ANI_SHAKER,40 WWL ANI_SLIDE_BACK,30h,-70000h,#no_hit2 WL ANI_SET_YVEL,40000h WWL ANI_SETLONG,DEBRIS_X,[28,28] ;Y,X of head WL 4,Y4PU4G+FR7 #no_hit2 WWL ANI_SETLONG,DEBRIS_X,[28,28] ;Y,X of head WL 4,Y4PU4G+FR7 WL ANI_GOTO,#poo #missed #missedb .word ANI_SHAKER,35 WWL ANI_SETLONG,DEBRIS_X,[28,28] ;Y,X of head WL 3,Y4PU4G+FR7 #poo WL ANI_CODE,spunch_delay WL ANI_IFNOTSTATUS,#none2 WWL ANI_SETLONG,DEBRIS_X,0 ;Y,X of head WL 10,Y4PU4G+FR7 WL 4,Y4PU4G+FR8 WL 4,Y4PU4G+FR9 .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END #none2 WWL ANI_SETLONG,DEBRIS_X,[46,44] ;Y,X of head WL 3,Y4PU4G+FR8 WWL ANI_SETLONG,DEBRIS_X,[72,42] ;Y,X of head WL 3,Y4PU4G+FR9 WWL ANI_SETLONG,DEBRIS_X,0 ;Y,X of head WL 4,Y4PS3B+FR10 .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END ****************************************************************************** SUBR yok_combo_slap_anim .word ANI_SETMODE,MODE_UNINT|MODE_NOAUTOFLIP|MODE_OVERLAP ;uninterruptable .word ANI_ZEROVELS .word ANI_SETSPEED,100h .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_SET_WRESTLER_XFLIP .word ANI_SET_RPTCOUNT,3 ;rpt 2 times #slap_loop WL ANI_CODE,create_bucket_salt WLW ANI_SET_XVEL,0A000h,AM_FACE_REL .word ANI_STARTATTACK,AT_LEAPING,15 WWL ANI_SETLONG,DEBRIS_X,[76,-62] ;Y,X of head WL 3,Y4PU4G+FR1 WWL ANI_SETLONG,DEBRIS_X,[107,-42] ;Y,X of head WL 4,Y4PU4G+FR2 WWL ANI_SETLONG,DEBRIS_X,[133,-8] ;Y,X of head WL 4,Y4PU4G+FR3 WWL ANI_SETLONG,DEBRIS_X,[129,50] ;Y,X of head WL 4,Y4PU4G+FR4 .word ANI_ZERO_XZVELS .word ANI_ATTACK_ON, AMODE_BSTOMP2,22,36-36,57+20,70+36 ;mode,x,y,w,h WWL ANI_SETLONG,DEBRIS_X,[75,79] ;Y,X of head WL 4,Y4PU4G+FR5 .word ANI_ATTACK_OFF WLW ANI_SET_XVEL,00h,AM_FACE_REL WL ANI_IFNOTSTATUS,#missedc WL ANI_IFBLOCKED,#missedbc ;Yes, I hit blocker .WORD ANI_INC_COMBO ;Got him WL ANI_CODE,HIT_THE_MAT ;Immobilize player for 30 ticks without meter on! .word ANI_IMMOBILIZE,100 WL ANI_CODE,#delay_whoihit .word ANI_SHAKER,40 WWL ANI_SETLONG,DEBRIS_X,[19,28] ;Y,X of head WL ANI_SET_YVEL,40000h WL 4,Y4PU4G+FR6 WWL ANI_SETLONG,DEBRIS_X,0 ;Y,X of head WL 4,Y4PU4G+FR7 WL 3,Y4PU4G+FR8 WL 3,Y4PU4G+FR9 WL 3,Y4PS3B+FR10 .word ANI_DEC_RPTCOUNT WL ANI_IF_RPTCOUNT,#slap_loop .WORD ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END #missedbc .WORD ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO .word ANI_SHAKER,35 WWL ANI_SETLONG,DEBRIS_X,[19,28] ;Y,X of head WL 3,Y4PU4G+FR6 WWL ANI_SETLONG,DEBRIS_X,[28,28] ;Y,X of head WL 30,Y4PU4G+FR7 WWL ANI_SETLONG,DEBRIS_X,[46,44] ;Y,X of head WL 3,Y4PU4G+FR8 WWL ANI_SETLONG,DEBRIS_X,[72,42] ;Y,X of head WL 3,Y4PU4G+FR9 WWL ANI_SETLONG,DEBRIS_X,0 ;Y,X of head WL 4,Y4PS3B+FR10 .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END #missedc .WORD ANI_DETACH WL ANI_CODE,DO_COMBO_MESS .WORD ANI_CLEAR_COMBO .word ANI_SHAKER,35 WWL ANI_SETLONG,DEBRIS_X,[19,28] ;Y,X of head WL 3,Y4PU4G+FR6 WWL ANI_SETLONG,DEBRIS_X,[28,28] ;Y,X of head WL 15,Y4PU4G+FR7 WWL ANI_SETLONG,DEBRIS_X,[46,44] ;Y,X of head WL 3,Y4PU4G+FR8 WWL ANI_SETLONG,DEBRIS_X,[72,42] ;Y,X of head WL 3,Y4PU4G+FR9 WWL ANI_SETLONG,DEBRIS_X,0 ;Y,X of head WL 4,Y4PS3B+FR10 .word ANI_SETFACING ;ANI_XFLIP <- not primary anim .word ANI_FACEDOWN .word ANI_SETMODE,MODE_NORMAL .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_END SUBRP #delay_whoihit move *a13(WHOIHIT),a0,L movi 55,a14 move a14,*a0(DELAY_METER) rets #***************************************************************************** * * GET BUCKED OFF A PINNED OPPONENT SUBR yok_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,Y3PF3C+FR12 WL 4,Y3PF3C+FR9 WL 4,Y3PF3C+FR8 WL ANI_CODE,set_buckoff_vels .word ANI_WAITHITGND .word ANI_ZEROVELS WL 4,Y3PF3C+FR6 WL 4,Y3PF3C+FR5 WL 4,Y3PF3C+FR4 WL 4,Y3PF3C+FR3 WL 4,Y3PF3C+FR2 WL 4,Y3PF3C+FR1 .word ANI_FACEDOWN .word ANI_SETPLYRMODE,MODE_NORMAL .word ANI_SETMODE,MODE_NORMAL .word ANI_END *********************************************************************** .end