Adding the last of the used moves

Dark Void and friends aren't in and probably won't be, I dunno yet.

I think Kowtow Cleave is really badass so I gave it to Night Slash too.

Scream Tail and Barunda now have Disarming Voice, which also has its own sound, which is basically Sing but a bit different.

Fake Tears was given its own subanimation to account for the fact it's basically a Water Gun used on yourself.

The FIGHT debug function helps a lot with this whole thing, so test with that.
This commit is contained in:
Llinos Evans 2023-04-29 21:00:17 +01:00
parent 7931dad49d
commit 760121d8fd
16 changed files with 140 additions and 25 deletions

View file

@ -112,6 +112,7 @@ INCLUDE "audio/sfx/battle_33.asm"
INCLUDE "audio/sfx/battle_34.asm"
INCLUDE "audio/sfx/battle_35.asm"
INCLUDE "audio/sfx/battle_36.asm"
INCLUDE "audio/sfx/battle_37.asm"
INCLUDE "audio/sfx/level_up.asm"
INCLUDE "audio/sfx/caught_mon.asm"

View file

@ -254,6 +254,11 @@ SFX_Battle_36::
channel 6, SFX_Battle_36_Ch6
channel 8, SFX_Battle_36_Ch8
SFX_Battle_37::
channel_count 2
channel 5, SFX_Battle_37_Ch5
channel 6, SFX_Battle_37_Ch6
SFX_Silph_Scope::
channel_count 1
channel 5, SFX_Silph_Scope_Ch5

21
audio/sfx/battle_37.asm Normal file
View file

@ -0,0 +1,21 @@
; First note of Sing, used for Disarming Voice
SFX_Battle_37_Ch5:
execute_music
vibrato 10, 2, 4
duty_cycle 2
note_type 10, 8, 7
octave 5
note G#, 8
octave 6
sound_ret
SFX_Battle_37_Ch6:
execute_music
vibrato 10, 2, 3
duty_cycle 2
note_type 11, 6, 7
octave 5
note G#, 8
note_type 10, 6, 7
octave 6
sound_ret

View file

@ -135,6 +135,7 @@ DEF FIRST_SE_ID EQU const_value
const SUBANIM_0_SAFARI_ROCK
const SUBANIM_0_SAFARI_BAIT
const SUBANIM_0_STAR_HIGH
const SUBANIM_0_FAKE_TEARS
DEF NUM_SUBANIMS EQU const_value
; types of subanimations

View file

@ -183,7 +183,14 @@
const CHARM ; af
const SWEET_KISS ; b0
const BULLET_PUNCH ; b1
const STRUGGLE ; formerly a5, now b2
const MIRROR_SHOT ; B2
const SMART_STRIKE ; B3
const FAKE_TEARS ; B4
const FALSE_SURRENDER ; B5
const KOWTOW_CLEAVE ; B6
const DISARMING_VOICE ; B7
const NASTY_PLOT ; B8
const STRUGGLE ; formerly a5, now B9
DEF NUM_ATTACKS EQU const_value - 1
; Moves do double duty as animation identifiers.

View file

@ -208,6 +208,7 @@
const SFX_BATTLE_34
const SFX_BATTLE_35
const SFX_BATTLE_36
const SFX_BATTLE_37
const SFX_SILPH_SCOPE
; AUDIO_3

View file

@ -99,6 +99,7 @@ SFX:
dba SFX_Battle_34
dba SFX_Battle_35
dba SFX_Battle_36
dba SFX_Battle_37
dba SFX_Silph_Scope
dba SFX_Intro_Lunge

View file

@ -86,6 +86,7 @@ SubanimationPointers:
dw Subanim_0SafariRock
dw Subanim_0SafariBait
dw Subanim_0StarHigh
dw Subanim_0FakeTears
assert_table_length NUM_SUBANIMS
; format:
@ -547,7 +548,7 @@ Subanim_0Circle_1Square_TossBack:
db FRAMEBLOCK_47, BASECOORD_B0, FRAMEBLOCKMODE_00
Subanim_0CirclesCentering:
subanim SUBANIMTYPE_COORDFLIP, 6 ; should be SUBANIMTYPE_HVFLIP
subanim SUBANIMTYPE_HVFLIP, 6 ; was bugged and had coordflip in vanilla
db FRAMEBLOCK_44, BASECOORD_64, FRAMEBLOCKMODE_00
db FRAMEBLOCK_45, BASECOORD_65, FRAMEBLOCKMODE_00
db FRAMEBLOCK_46, BASECOORD_66, FRAMEBLOCKMODE_00
@ -954,3 +955,15 @@ Subanim_0SafariBait:
db FRAMEBLOCK_79, BASECOORD_0E, FRAMEBLOCKMODE_00
db FRAMEBLOCK_79, BASECOORD_A9, FRAMEBLOCKMODE_00
db FRAMEBLOCK_79, BASECOORD_34, FRAMEBLOCKMODE_00
Subanim_0FakeTears:
subanim SUBANIMTYPE_COORDFLIP, 8
db FRAMEBLOCK_12, BASECOORD_71, FRAMEBLOCKMODE_00
db FRAMEBLOCK_12, BASECOORD_72, FRAMEBLOCKMODE_00
db FRAMEBLOCK_12, BASECOORD_73, FRAMEBLOCKMODE_00
db FRAMEBLOCK_14, BASECOORD_98, FRAMEBLOCKMODE_02
db FRAMEBLOCK_15, BASECOORD_98, FRAMEBLOCKMODE_00
db FRAMEBLOCK_15, BASECOORD_98, FRAMEBLOCKMODE_00
db FRAMEBLOCK_16, BASECOORD_98, FRAMEBLOCKMODE_00
db FRAMEBLOCK_16, BASECOORD_98, FRAMEBLOCKMODE_00

View file

@ -177,6 +177,13 @@ AttackAnimationPointers:
dw CharmAnim
dw SweetKissAnim
dw BulletPunchAnim
dw MirrorShotAnim
dw SmartStrikeAnim
dw FakeTearsAnim
dw FalseSurrenderAnim
dw KowtowCleaveAnim
dw DisarmingVoiceAnim
dw NastyPlotAnim
dw StruggleAnim
assert_table_length NUM_ATTACKS
dw ShowPicAnim
@ -299,7 +306,6 @@ VicegripAnim:
battle_anim VICEGRIP, SUBANIM_0_SLICE_BOTH_SIDES, 0, 8
db -1 ; end
NightSlashAnim:
GuillotineAnim:
battle_anim GUILLOTINE, SUBANIM_0_SLICE_BOTH_SIDES, 0, 6
db -1 ; end
@ -862,6 +868,7 @@ ConfuseRayAnim:
battle_anim NO_MOVE, SE_RESET_SCREEN_PALETTE
db -1 ; end
;ShelterAnim:
WithdrawAnim:
battle_anim DEFENSE_CURL, SE_LIGHT_SCREEN_PALETTE
battle_anim NO_MOVE, SE_SLIDE_MON_DOWN
@ -1147,6 +1154,7 @@ ConversionAnim:
battle_anim NO_MOVE, SE_DARK_SCREEN_FLASH
db -1 ; end
MirrorShotAnim:
TriAttackAnim:
battle_anim TRI_ATTACK, SE_DARK_SCREEN_FLASH
battle_anim NO_MOVE, SUBANIM_1_TRIANGLE_TOSS, 1, 6
@ -1169,6 +1177,42 @@ SubstituteAnim:
battle_anim NO_MOVE, SE_SUBSTITUTE_MON
db -1 ; end
SmartStrikeAnim:
battle_anim GLARE, SE_DARK_SCREEN_FLASH
battle_anim NO_MOVE, SE_RESET_SCREEN_PALETTE
battle_anim SLASH, SUBANIM_0_HORN_JAB_TWICE, 0, 6
battle_anim NO_MOVE, SUBANIM_1_STAR_BIG, 1, 6
;battle_anim SCRATCH, SUBANIM_0_SCRATCHES, 0, 6
db -1 ; end
FakeTearsAnim:
battle_anim WATER_GUN, SUBANIM_0_FAKE_TEARS, 0, 6
db -1 ; end
FalseSurrenderAnim:
battle_anim SUBSTITUTE, SE_SLIDE_MON_OFF
battle_anim NO_MOVE, SUBANIM_0_BALL_POOF, 0, 8
battle_anim AMNESIA, SE_RESET_MON_POSITION
battle_anim TAKE_DOWN, SE_DARK_SCREEN_FLASH
db -1 ; end
NightSlashAnim:
KowtowCleaveAnim:
battle_anim NO_MOVE, SE_DARK_SCREEN_PALETTE
battle_anim SLASH, SUBANIM_0_SCRATCHES, 0, 6
battle_anim NO_MOVE, SE_DARK_SCREEN_FLASH
battle_anim NO_MOVE, SE_RESET_SCREEN_PALETTE
db -1 ; end
DisarmingVoiceAnim:
battle_anim DISARMING_VOICE, SUBANIM_0_HEART_1_MUSIC, 1, 6
db -1 ; end
NastyPlotAnim:
battle_anim AMNESIA, SUBANIM_0_STATUS_CONFUSED, 0, 8
battle_anim AMNESIA, SUBANIM_0_STATUS_CONFUSED, 0, 8
db -1 ; end
BallTossAnim:
battle_anim NO_MOVE, SUBANIM_0_BALL_TOSS_HIGH, 0, 3
db -1 ; end

View file

@ -188,5 +188,12 @@ Moves:
move CHARM, ATTACK_DOWN2_EFFECT, 0, FAIRY, 100, 20
move SWEET_KISS, CONFUSION_EFFECT, 0, FAIRY, 75, 10
move BULLET_PUNCH, NO_ADDITIONAL_EFFECT, 40, STEEL, 100, 30
move STRUGGLE, RECOIL_EFFECT, 50, NORMAL, 100, 10
move MIRROR_SHOT, ACCURACY_DOWN1_EFFECT, 65, STEEL, 85, 10
move SMART_STRIKE, SWIFT_EFFECT, 70, STEEL, 100, 10
move FAKE_TEARS, SPECIAL_DOWN2_EFFECT, 0, DARK, 100, 20
move FALSE_SURRENDER, SWIFT_EFFECT, 80, DARK, 100, 10 ; figure out the actual name another time
move KOWTOW_CLEAVE, SWIFT_EFFECT, 85, DARK, 100, 10
move DISARMING_VOICE, SWIFT_EFFECT, 40, FAIRY, 100, 10
move NASTY_PLOT, SPECIAL_UP2_EFFECT, 0, DARK, 100, 10
move STRUGGLE, RECOIL_EFFECT, 50, NORMAL, 100, 10
assert_table_length NUM_ATTACKS

View file

@ -1,4 +1,4 @@
MoveNames::
MoveNames:: ; 12chr limit
list_start MoveNames
li "POUND"
li "KARATE CHOP"
@ -177,5 +177,12 @@ MoveNames::
li "CHARM"
li "SWEET KISS"
li "BULLET PUNCH"
li "MIRROR SHOT"
li "SMART STRIKE"
li "FAKE TEARS"
li "FALSURRENDER" ; maybe we leave this out. maybe.
li "KOWTOWCLEAVE"
li "DISARMVOICE"
li "NASTY PLOT"
li "STRUGGLE"
assert_list_length NUM_ATTACKS

View file

@ -178,6 +178,13 @@ MoveSoundTable:
db SFX_BATTLE_09, $88, $10 ; CHARM
db SFX_BATTLE_09, $88, $10 ; SWEET_KISS
db SFX_BATTLE_0B, $01, $80 ; BULLET_PUNCH
db SFX_BATTLE_29, $e8, $ff ; MIRROR_SHOT
db SFX_NOT_VERY_EFFECTIVE, $09, $ff ; SMART_STRIKE
db SFX_BATTLE_24, $30, $60 ; FAKE_TEARS
db SFX_BATTLE_20, $00, $60 ; FALSE_SURRENDER
db SFX_NOT_VERY_EFFECTIVE, $11, $ff ; KOWTOW_CLEAVE
db SFX_BATTLE_37, $10, $60 ; DISARMING_VOICE
db SFX_BATTLE_09, $e8, $10 ; NASTY_PLOT
db SFX_BATTLE_0B, $00, $80 ; STRUGGLE
assert_table_length NUM_ATTACKS
db SFX_BATTLE_0B, $00, $80

View file

@ -10,7 +10,7 @@
INCBIN "gfx/pokemon/front/screamtail.pic", 0, 1 ; sprite dimensions
dw ScreamTailPicFront, ScreamTailPicBack
db SING, FAIRY_WIND, DISABLE, BITE ; level 1 learnset
db SING, DISARMING_VOICE, DISABLE, BITE ; level 1 learnset
db GROWTH_SLIGHTLY_FAST ; growth rate - reusing unused exp group, seems funny
; tm/hm learnset

View file

@ -860,6 +860,7 @@ BarundaEvosMoves:
; Evolutions
db 0
; Learnset
db 16, DISARMING_VOICE
db 25, SWEET_KISS
db 31, CONFUSE_RAY
db 37, CHARM
@ -1300,9 +1301,9 @@ RibbitoEvosMoves:
db 7, BUBBLE
db 13, MEDITATE
db 19, WATER_GUN
db 27, SWIFT
db 32, FEINT_ATTACK
db 41, SUBSTITUTE
db 24, FEINT_ATTACK
db 31, SUBSTITUTE
db 41, KOWTOW_CLEAVE
db 49, HYDRO_PUMP
db 53, NIGHT_SLASH
db 0
@ -1313,9 +1314,9 @@ CroakozunaEvosMoves:
; Learnset
db 13, MEDITATE
db 19, WATER_GUN
db 31, SWIFT
db 35, FEINT_ATTACK
db 46, SUBSTITUTE
db 26, FEINT_ATTACK
db 31, SUBSTITUTE
db 45, KOWTOW_CLEAVE
db 53, HYDRO_PUMP
db 58, NIGHT_SLASH
db 0
@ -2447,13 +2448,13 @@ MoltresGEvosMoves:
; Evolutions
db 0
; Learnset
db 40, BITE ; Fake Tears
db 40, FAKE_TEARS ; Fake Tears
db 45, WING_ATTACK
db 51, BRUTAL_SWING
db 55, AGILITY
db 58, FEINT_ATTACK
db 62, AMNESIA ; Nasty Plot
db 66, NIGHT_SLASH ; False Surrender
db 62, NASTY_PLOT ; Nasty Plot
db 66, FALSE_SURRENDER ; False Surrender
db 70, SKY_ATTACK
db 0
@ -2643,7 +2644,7 @@ SylveonEvosMoves:
db 0
; Learnset
db 8, SAND_ATTACK
db 16, FAIRY_WIND ; should be Disarming Voice but it hasn't been added yet
db 16, DISARMING_VOICE
db 23, QUICK_ATTACK
db 30, DRAININGKISS
db 36, DAZZLE_GLEAM
@ -2907,7 +2908,7 @@ PorygonZEvosMoves:
; Evolutions
db 0
; Learnset
db 50, AMNESIA ; will replace with nasty plot
db 50, NASTY_PLOT ; will replace with nasty plot
db 0
AnnihilapeEvosMoves:
@ -3002,7 +3003,7 @@ PerrserkerEvosMoves:
db 8, SCRATCH
db 12, PAY_DAY
db 17, BITE
db 25, MAGNET_BOMB ; Smart Strike
db 25, SMART_STRIKE ; Smart Strike
db 29, FURY_SWIPES
db 32, SCREECH
db 36, SLASH
@ -3060,7 +3061,7 @@ MelmetalEvosMoves:
db 36, ACID_ARMOR
db 45, MAGNET_BOMB
db 51, MEGA_PUNCH
; db 63, SMART_STRIKE
db 63, SMART_STRIKE
db 72, IRON_HEAD
db 81, SUBMISSION
db 90, HYPER_BEAM

View file

@ -93,9 +93,9 @@ TestBattle:
; Give the player a
; level 20 Rhydon.
ld a, RHYPERIOR
ld a, BARUNDA
ld [wcf91], a
ld a, 20
ld a, 16
ld [wCurEnemyLVL], a
xor a
ld [wMonDataLocation], a
@ -104,7 +104,7 @@ TestBattle:
; Fight against a
; level 20 Rhydon.
ld a, CROAKOZUNA
ld a, CARAPTHOR
ld [wCurOpponent], a
predef InitOpponent

View file

@ -344,7 +344,7 @@ SECTION "Itemfinder 2", ROMX
INCLUDE "engine/menus/league_pc.asm"
INCLUDE "engine/events/hidden_items.asm"
INCLUDE "gfx/fishing.asm"
SECTION "bank1E", ROMX
@ -357,7 +357,6 @@ INCLUDE "data/battle_anims/frame_blocks.asm"
INCLUDE "engine/movie/evolution.asm"
INCLUDE "engine/items/tm_prices.asm"
INCLUDE "engine/overworld/elevator.asm"
INCLUDE "gfx/fishing.asm"
SECTION "Engine Spillover", ROMX