From 9827190aea7ce6a6f30d6a0c04eda34934cbd35e Mon Sep 17 00:00:00 2001 From: BlueZangoose <113498143+BlueZangoose@users.noreply.github.com> Date: Wed, 22 Nov 2023 00:52:53 +0000 Subject: Use MEGA_PUNCH constant in explosion animation routine (#434) * Use MEGA_PUNCH constant in explosion animation routine * Add AnimationType constants and assert --------- Co-authored-by: vulcandth --- constants/battle_anim_constants.asm | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 constants/battle_anim_constants.asm (limited to 'constants') diff --git a/constants/battle_anim_constants.asm b/constants/battle_anim_constants.asm new file mode 100644 index 00000000..db57d6c4 --- /dev/null +++ b/constants/battle_anim_constants.asm @@ -0,0 +1,8 @@ +; AnimationTypePointerTable indexes (see engine/battle/animations.asm) + const_def 1 + const ANIMATIONTYPE_SHAKE_SCREEN_VERTICALLY ; 1 + const ANIMATIONTYPE_SHAKE_SCREEN_HORIZONTALLY_HEAVY ; 2 + const ANIMATIONTYPE_SHAKE_SCREEN_HORIZONTALLY_SLOW ; 3 + const ANIMATIONTYPE_BLINK_ENEMY_MON_SPRITE ; 4 + const ANIMATIONTYPE_SHAKE_SCREEN_HORIZONTALLY_LIGHT ; 5 + const ANIMATIONTYPE_SHAKE_SCREEN_HORIZONTALLY_SLOW_2 ; 6 -- cgit v1.3.1-sl0p From a681f718ac0fa6077c45ad793968a8f0cbfb93c7 Mon Sep 17 00:00:00 2001 From: SatoMew Date: Wed, 22 Nov 2023 00:54:39 +0000 Subject: Rename `EV_*` constants to `EVOLVE_*` like pokecrystal (#407) --- constants/pokemon_data_constants.asm | 6 +- data/pokemon/evos_moves.asm | 144 +++++++++++++++++------------------ engine/menus/party_menu.asm | 2 +- engine/pokemon/evos_moves.asm | 6 +- 4 files changed, 79 insertions(+), 79 deletions(-) (limited to 'constants') diff --git a/constants/pokemon_data_constants.asm b/constants/pokemon_data_constants.asm index 028d6711..3c594ae1 100644 --- a/constants/pokemon_data_constants.asm +++ b/constants/pokemon_data_constants.asm @@ -79,9 +79,9 @@ DEF HOF_TEAM_CAPACITY EQU 50 ; Evolution types const_def 1 - const EV_LEVEL ; 1 - const EV_ITEM ; 2 - const EV_TRADE ; 3 + const EVOLVE_LEVEL ; 1 + const EVOLVE_ITEM ; 2 + const EVOLVE_TRADE ; 3 DEF MAX_EVOLUTIONS EQU 3 DEF EVOLUTION_SIZE EQU 4 diff --git a/data/pokemon/evos_moves.asm b/data/pokemon/evos_moves.asm index c5fcc292..a555579e 100644 --- a/data/pokemon/evos_moves.asm +++ b/data/pokemon/evos_moves.asm @@ -220,7 +220,7 @@ KangaskhanEvosMoves: NidoranMEvosMoves: ; Evolutions - db EV_LEVEL, 16, NIDORINO + db EVOLVE_LEVEL, 16, NIDORINO db 0 ; Learnset db 8, HORN_ATTACK @@ -233,7 +233,7 @@ NidoranMEvosMoves: ClefairyEvosMoves: ; Evolutions - db EV_ITEM, MOON_STONE, 1, CLEFABLE + db EVOLVE_ITEM, MOON_STONE, 1, CLEFABLE db 0 ; Learnset db 13, SING @@ -246,7 +246,7 @@ ClefairyEvosMoves: SpearowEvosMoves: ; Evolutions - db EV_LEVEL, 20, FEAROW + db EVOLVE_LEVEL, 20, FEAROW db 0 ; Learnset db 9, LEER @@ -258,7 +258,7 @@ SpearowEvosMoves: VoltorbEvosMoves: ; Evolutions - db EV_LEVEL, 30, ELECTRODE + db EVOLVE_LEVEL, 30, ELECTRODE db 0 ; Learnset db 17, SONICBOOM @@ -292,7 +292,7 @@ SlowbroEvosMoves: IvysaurEvosMoves: ; Evolutions - db EV_LEVEL, 32, VENUSAUR + db EVOLVE_LEVEL, 32, VENUSAUR db 0 ; Learnset db 7, LEECH_SEED @@ -324,7 +324,7 @@ LickitungEvosMoves: ExeggcuteEvosMoves: ; Evolutions - db EV_ITEM, LEAF_STONE, 1, EXEGGUTOR + db EVOLVE_ITEM, LEAF_STONE, 1, EXEGGUTOR db 0 ; Learnset db 25, REFLECT @@ -337,7 +337,7 @@ ExeggcuteEvosMoves: GrimerEvosMoves: ; Evolutions - db EV_LEVEL, 38, MUK + db EVOLVE_LEVEL, 38, MUK db 0 ; Learnset db 30, POISON_GAS @@ -358,7 +358,7 @@ GengarEvosMoves: NidoranFEvosMoves: ; Evolutions - db EV_LEVEL, 16, NIDORINA + db EVOLVE_LEVEL, 16, NIDORINA db 0 ; Learnset db 8, SCRATCH @@ -380,7 +380,7 @@ NidoqueenEvosMoves: CuboneEvosMoves: ; Evolutions - db EV_LEVEL, 28, MAROWAK + db EVOLVE_LEVEL, 28, MAROWAK db 0 ; Learnset db 25, LEER @@ -392,7 +392,7 @@ CuboneEvosMoves: RhyhornEvosMoves: ; Evolutions - db EV_LEVEL, 42, RHYDON + db EVOLVE_LEVEL, 42, RHYDON db 0 ; Learnset db 30, STOMP @@ -444,7 +444,7 @@ GyaradosEvosMoves: ShellderEvosMoves: ; Evolutions - db EV_ITEM, WATER_STONE, 1, CLOYSTER + db EVOLVE_ITEM, WATER_STONE, 1, CLOYSTER db 0 ; Learnset db 18, SUPERSONIC @@ -456,7 +456,7 @@ ShellderEvosMoves: TentacoolEvosMoves: ; Evolutions - db EV_LEVEL, 30, TENTACRUEL + db EVOLVE_LEVEL, 30, TENTACRUEL db 0 ; Learnset db 7, SUPERSONIC @@ -471,7 +471,7 @@ TentacoolEvosMoves: GastlyEvosMoves: ; Evolutions - db EV_LEVEL, 25, HAUNTER + db EVOLVE_LEVEL, 25, HAUNTER db 0 ; Learnset db 27, HYPNOSIS @@ -492,7 +492,7 @@ ScytherEvosMoves: StaryuEvosMoves: ; Evolutions - db EV_ITEM, WATER_STONE, 1, STARMIE + db EVOLVE_ITEM, WATER_STONE, 1, STARMIE db 0 ; Learnset db 17, WATER_GUN @@ -554,7 +554,7 @@ MissingNo20EvosMoves: GrowlitheEvosMoves: ; Evolutions - db EV_ITEM, FIRE_STONE, 1, ARCANINE + db EVOLVE_ITEM, FIRE_STONE, 1, ARCANINE db 0 ; Learnset db 18, EMBER @@ -588,7 +588,7 @@ FearowEvosMoves: PidgeyEvosMoves: ; Evolutions - db EV_LEVEL, 18, PIDGEOTTO + db EVOLVE_LEVEL, 18, PIDGEOTTO db 0 ; Learnset db 5, SAND_ATTACK @@ -601,7 +601,7 @@ PidgeyEvosMoves: SlowpokeEvosMoves: ; Evolutions - db EV_LEVEL, 37, SLOWBRO + db EVOLVE_LEVEL, 37, SLOWBRO db 0 ; Learnset db 18, DISABLE @@ -614,7 +614,7 @@ SlowpokeEvosMoves: KadabraEvosMoves: ; Evolutions - db EV_TRADE, 1, ALAKAZAM + db EVOLVE_TRADE, 1, ALAKAZAM db 0 ; Learnset db 16, CONFUSION @@ -627,7 +627,7 @@ KadabraEvosMoves: GravelerEvosMoves: ; Evolutions - db EV_TRADE, 1, GOLEM + db EVOLVE_TRADE, 1, GOLEM db 0 ; Learnset db 11, DEFENSE_CURL @@ -652,7 +652,7 @@ ChanseyEvosMoves: MachokeEvosMoves: ; Evolutions - db EV_TRADE, 1, MACHAMP + db EVOLVE_TRADE, 1, MACHAMP db 0 ; Learnset db 20, LOW_KICK @@ -719,7 +719,7 @@ ParasectEvosMoves: PsyduckEvosMoves: ; Evolutions - db EV_LEVEL, 33, GOLDUCK + db EVOLVE_LEVEL, 33, GOLDUCK db 0 ; Learnset db 28, TAIL_WHIP @@ -731,7 +731,7 @@ PsyduckEvosMoves: DrowzeeEvosMoves: ; Evolutions - db EV_LEVEL, 26, HYPNO + db EVOLVE_LEVEL, 26, HYPNO db 0 ; Learnset db 12, DISABLE @@ -803,7 +803,7 @@ MagnetonEvosMoves: KoffingEvosMoves: ; Evolutions - db EV_LEVEL, 35, WEEZING + db EVOLVE_LEVEL, 35, WEEZING db 0 ; Learnset db 32, SLUDGE @@ -821,7 +821,7 @@ MissingNo38EvosMoves: MankeyEvosMoves: ; Evolutions - db EV_LEVEL, 28, PRIMEAPE + db EVOLVE_LEVEL, 28, PRIMEAPE db 0 ; Learnset db 15, KARATE_CHOP @@ -833,7 +833,7 @@ MankeyEvosMoves: SeelEvosMoves: ; Evolutions - db EV_LEVEL, 34, DEWGONG + db EVOLVE_LEVEL, 34, DEWGONG db 0 ; Learnset db 30, GROWL @@ -845,7 +845,7 @@ SeelEvosMoves: DiglettEvosMoves: ; Evolutions - db EV_LEVEL, 26, DUGTRIO + db EVOLVE_LEVEL, 26, DUGTRIO db 0 ; Learnset db 15, GROWL @@ -897,7 +897,7 @@ FarfetchdEvosMoves: VenonatEvosMoves: ; Evolutions - db EV_LEVEL, 31, VENOMOTH + db EVOLVE_LEVEL, 31, VENOMOTH db 0 ; Learnset db 24, POISONPOWDER @@ -939,7 +939,7 @@ MissingNo45EvosMoves: DoduoEvosMoves: ; Evolutions - db EV_LEVEL, 31, DODRIO + db EVOLVE_LEVEL, 31, DODRIO db 0 ; Learnset db 20, GROWL @@ -952,7 +952,7 @@ DoduoEvosMoves: PoliwagEvosMoves: ; Evolutions - db EV_LEVEL, 25, POLIWHIRL + db EVOLVE_LEVEL, 25, POLIWHIRL db 0 ; Learnset db 16, HYPNOSIS @@ -1010,7 +1010,7 @@ DittoEvosMoves: MeowthEvosMoves: ; Evolutions - db EV_LEVEL, 28, PERSIAN + db EVOLVE_LEVEL, 28, PERSIAN db 0 ; Learnset db 12, BITE @@ -1022,7 +1022,7 @@ MeowthEvosMoves: KrabbyEvosMoves: ; Evolutions - db EV_LEVEL, 28, KINGLER + db EVOLVE_LEVEL, 28, KINGLER db 0 ; Learnset db 20, VICEGRIP @@ -1052,7 +1052,7 @@ MissingNo51EvosMoves: VulpixEvosMoves: ; Evolutions - db EV_ITEM, FIRE_STONE, 1, NINETALES + db EVOLVE_ITEM, FIRE_STONE, 1, NINETALES db 0 ; Learnset db 16, QUICK_ATTACK @@ -1070,7 +1070,7 @@ NinetalesEvosMoves: PikachuEvosMoves: ; Evolutions - db EV_ITEM, THUNDER_STONE, 1, RAICHU + db EVOLVE_ITEM, THUNDER_STONE, 1, RAICHU db 0 ; Learnset db 9, THUNDER_WAVE @@ -1100,7 +1100,7 @@ MissingNo57EvosMoves: DratiniEvosMoves: ; Evolutions - db EV_LEVEL, 30, DRAGONAIR + db EVOLVE_LEVEL, 30, DRAGONAIR db 0 ; Learnset db 10, THUNDER_WAVE @@ -1112,7 +1112,7 @@ DratiniEvosMoves: DragonairEvosMoves: ; Evolutions - db EV_LEVEL, 55, DRAGONITE + db EVOLVE_LEVEL, 55, DRAGONITE db 0 ; Learnset db 10, THUNDER_WAVE @@ -1124,7 +1124,7 @@ DragonairEvosMoves: KabutoEvosMoves: ; Evolutions - db EV_LEVEL, 40, KABUTOPS + db EVOLVE_LEVEL, 40, KABUTOPS db 0 ; Learnset db 34, ABSORB @@ -1145,7 +1145,7 @@ KabutopsEvosMoves: HorseaEvosMoves: ; Evolutions - db EV_LEVEL, 32, SEADRA + db EVOLVE_LEVEL, 32, SEADRA db 0 ; Learnset db 19, SMOKESCREEN @@ -1180,7 +1180,7 @@ MissingNo5FEvosMoves: SandshrewEvosMoves: ; Evolutions - db EV_LEVEL, 22, SANDSLASH + db EVOLVE_LEVEL, 22, SANDSLASH db 0 ; Learnset db 10, SAND_ATTACK @@ -1203,7 +1203,7 @@ SandslashEvosMoves: OmanyteEvosMoves: ; Evolutions - db EV_LEVEL, 40, OMASTAR + db EVOLVE_LEVEL, 40, OMASTAR db 0 ; Learnset db 34, HORN_ATTACK @@ -1224,7 +1224,7 @@ OmastarEvosMoves: JigglypuffEvosMoves: ; Evolutions - db EV_ITEM, MOON_STONE, 1, WIGGLYTUFF + db EVOLVE_ITEM, MOON_STONE, 1, WIGGLYTUFF db 0 ; Learnset db 9, POUND @@ -1244,9 +1244,9 @@ WigglytuffEvosMoves: EeveeEvosMoves: ; Evolutions - db EV_ITEM, FIRE_STONE, 1, FLAREON - db EV_ITEM, THUNDER_STONE, 1, JOLTEON - db EV_ITEM, WATER_STONE, 1, VAPOREON + db EVOLVE_ITEM, FIRE_STONE, 1, FLAREON + db EVOLVE_ITEM, THUNDER_STONE, 1, JOLTEON + db EVOLVE_ITEM, WATER_STONE, 1, VAPOREON db 0 ; Learnset db 27, QUICK_ATTACK @@ -1299,7 +1299,7 @@ VaporeonEvosMoves: MachopEvosMoves: ; Evolutions - db EV_LEVEL, 28, MACHOKE + db EVOLVE_LEVEL, 28, MACHOKE db 0 ; Learnset db 20, LOW_KICK @@ -1311,7 +1311,7 @@ MachopEvosMoves: ZubatEvosMoves: ; Evolutions - db EV_LEVEL, 22, GOLBAT + db EVOLVE_LEVEL, 22, GOLBAT db 0 ; Learnset db 10, SUPERSONIC @@ -1323,7 +1323,7 @@ ZubatEvosMoves: EkansEvosMoves: ; Evolutions - db EV_LEVEL, 22, ARBOK + db EVOLVE_LEVEL, 22, ARBOK db 0 ; Learnset db 10, POISON_STING @@ -1335,7 +1335,7 @@ EkansEvosMoves: ParasEvosMoves: ; Evolutions - db EV_LEVEL, 24, PARASECT + db EVOLVE_LEVEL, 24, PARASECT db 0 ; Learnset db 13, STUN_SPORE @@ -1347,7 +1347,7 @@ ParasEvosMoves: PoliwhirlEvosMoves: ; Evolutions - db EV_ITEM, WATER_STONE, 1, POLIWRATH + db EVOLVE_ITEM, WATER_STONE, 1, POLIWRATH db 0 ; Learnset db 16, HYPNOSIS @@ -1368,14 +1368,14 @@ PoliwrathEvosMoves: WeedleEvosMoves: ; Evolutions - db EV_LEVEL, 7, KAKUNA + db EVOLVE_LEVEL, 7, KAKUNA db 0 ; Learnset db 0 KakunaEvosMoves: ; Evolutions - db EV_LEVEL, 10, BEEDRILL + db EVOLVE_LEVEL, 10, BEEDRILL db 0 ; Learnset db 0 @@ -1469,14 +1469,14 @@ MissingNo7AEvosMoves: CaterpieEvosMoves: ; Evolutions - db EV_LEVEL, 7, METAPOD + db EVOLVE_LEVEL, 7, METAPOD db 0 ; Learnset db 0 MetapodEvosMoves: ; Evolutions - db EV_LEVEL, 10, BUTTERFREE + db EVOLVE_LEVEL, 10, BUTTERFREE db 0 ; Learnset db 0 @@ -1568,7 +1568,7 @@ SnorlaxEvosMoves: MagikarpEvosMoves: ; Evolutions - db EV_LEVEL, 20, GYARADOS + db EVOLVE_LEVEL, 20, GYARADOS db 0 ; Learnset db 15, TACKLE @@ -1686,7 +1686,7 @@ MissingNo92EvosMoves: HaunterEvosMoves: ; Evolutions - db EV_TRADE, 1, GENGAR + db EVOLVE_TRADE, 1, GENGAR db 0 ; Learnset db 29, HYPNOSIS @@ -1695,7 +1695,7 @@ HaunterEvosMoves: AbraEvosMoves: ; Evolutions - db EV_LEVEL, 16, KADABRA + db EVOLVE_LEVEL, 16, KADABRA db 0 ; Learnset db 0 @@ -1714,7 +1714,7 @@ AlakazamEvosMoves: PidgeottoEvosMoves: ; Evolutions - db EV_LEVEL, 36, PIDGEOT + db EVOLVE_LEVEL, 36, PIDGEOT db 0 ; Learnset db 5, SAND_ATTACK @@ -1745,7 +1745,7 @@ StarmieEvosMoves: BulbasaurEvosMoves: ; Evolutions - db EV_LEVEL, 16, IVYSAUR + db EVOLVE_LEVEL, 16, IVYSAUR db 0 ; Learnset db 7, LEECH_SEED @@ -1792,7 +1792,7 @@ MissingNo9CEvosMoves: GoldeenEvosMoves: ; Evolutions - db EV_LEVEL, 33, SEAKING + db EVOLVE_LEVEL, 33, SEAKING db 0 ; Learnset db 19, SUPERSONIC @@ -1841,7 +1841,7 @@ MissingNoA2EvosMoves: PonytaEvosMoves: ; Evolutions - db EV_LEVEL, 40, RAPIDASH + db EVOLVE_LEVEL, 40, RAPIDASH db 0 ; Learnset db 30, TAIL_WHIP @@ -1866,7 +1866,7 @@ RapidashEvosMoves: RattataEvosMoves: ; Evolutions - db EV_LEVEL, 20, RATICATE + db EVOLVE_LEVEL, 20, RATICATE db 0 ; Learnset db 7, QUICK_ATTACK @@ -1887,7 +1887,7 @@ RaticateEvosMoves: NidorinoEvosMoves: ; Evolutions - db EV_ITEM, MOON_STONE, 1, NIDOKING + db EVOLVE_ITEM, MOON_STONE, 1, NIDOKING db 0 ; Learnset db 8, HORN_ATTACK @@ -1900,7 +1900,7 @@ NidorinoEvosMoves: NidorinaEvosMoves: ; Evolutions - db EV_ITEM, MOON_STONE, 1, NIDOQUEEN + db EVOLVE_ITEM, MOON_STONE, 1, NIDOQUEEN db 0 ; Learnset db 8, SCRATCH @@ -1913,7 +1913,7 @@ NidorinaEvosMoves: GeodudeEvosMoves: ; Evolutions - db EV_LEVEL, 25, GRAVELER + db EVOLVE_LEVEL, 25, GRAVELER db 0 ; Learnset db 11, DEFENSE_CURL @@ -1952,7 +1952,7 @@ MissingNoACEvosMoves: MagnemiteEvosMoves: ; Evolutions - db EV_LEVEL, 30, MAGNETON + db EVOLVE_LEVEL, 30, MAGNETON db 0 ; Learnset db 21, SONICBOOM @@ -1977,7 +1977,7 @@ MissingNoAFEvosMoves: CharmanderEvosMoves: ; Evolutions - db EV_LEVEL, 16, CHARMELEON + db EVOLVE_LEVEL, 16, CHARMELEON db 0 ; Learnset db 9, EMBER @@ -1990,7 +1990,7 @@ CharmanderEvosMoves: SquirtleEvosMoves: ; Evolutions - db EV_LEVEL, 16, WARTORTLE + db EVOLVE_LEVEL, 16, WARTORTLE db 0 ; Learnset db 8, BUBBLE @@ -2003,7 +2003,7 @@ SquirtleEvosMoves: CharmeleonEvosMoves: ; Evolutions - db EV_LEVEL, 36, CHARIZARD + db EVOLVE_LEVEL, 36, CHARIZARD db 0 ; Learnset db 9, EMBER @@ -2016,7 +2016,7 @@ CharmeleonEvosMoves: WartortleEvosMoves: ; Evolutions - db EV_LEVEL, 36, BLASTOISE + db EVOLVE_LEVEL, 36, BLASTOISE db 0 ; Learnset db 8, BUBBLE @@ -2065,7 +2065,7 @@ MonGhostEvosMoves: OddishEvosMoves: ; Evolutions - db EV_LEVEL, 21, GLOOM + db EVOLVE_LEVEL, 21, GLOOM db 0 ; Learnset db 15, POISONPOWDER @@ -2078,7 +2078,7 @@ OddishEvosMoves: GloomEvosMoves: ; Evolutions - db EV_ITEM, LEAF_STONE, 1, VILEPLUME + db EVOLVE_ITEM, LEAF_STONE, 1, VILEPLUME db 0 ; Learnset db 15, POISONPOWDER @@ -2100,7 +2100,7 @@ VileplumeEvosMoves: BellsproutEvosMoves: ; Evolutions - db EV_LEVEL, 21, WEEPINBELL + db EVOLVE_LEVEL, 21, WEEPINBELL db 0 ; Learnset db 13, WRAP @@ -2114,7 +2114,7 @@ BellsproutEvosMoves: WeepinbellEvosMoves: ; Evolutions - db EV_ITEM, LEAF_STONE, 1, VICTREEBEL + db EVOLVE_ITEM, LEAF_STONE, 1, VICTREEBEL db 0 ; Learnset db 13, WRAP diff --git a/engine/menus/party_menu.asm b/engine/menus/party_menu.asm index f77beb26..5a473ccf 100644 --- a/engine/menus/party_menu.asm +++ b/engine/menus/party_menu.asm @@ -142,7 +142,7 @@ RedrawPartyMenu_:: jr z, .placeEvolutionStoneString ; if so, place the "NOT ABLE" string inc hl inc hl - cp EV_ITEM + cp EVOLVE_ITEM jr nz, .checkEvolutionsLoop ; if it's a stone evolution entry dec hl diff --git a/engine/pokemon/evos_moves.asm b/engine/pokemon/evos_moves.asm index 7e41d58d..d6b51ee5 100644 --- a/engine/pokemon/evos_moves.asm +++ b/engine/pokemon/evos_moves.asm @@ -67,20 +67,20 @@ Evolution_PartyMonLoop: ; loop over party mons and a ; have we reached the end of the evolution data? jr z, Evolution_PartyMonLoop ld b, a ; evolution type - cp EV_TRADE + cp EVOLVE_TRADE jr z, .checkTradeEvo ; not trade evolution ld a, [wLinkState] cp LINK_STATE_TRADING jr z, Evolution_PartyMonLoop ; if trading, go the next mon ld a, b - cp EV_ITEM + cp EVOLVE_ITEM jr z, .checkItemEvo ld a, [wForceEvolution] and a jr nz, Evolution_PartyMonLoop ld a, b - cp EV_LEVEL + cp EVOLVE_LEVEL jr z, .checkLevel .checkTradeEvo ld a, [wLinkState] -- cgit v1.3.1-sl0p From d4e7a39dd89a32c7af13fed31b3178cc769fb797 Mon Sep 17 00:00:00 2001 From: Rangi42 Date: Tue, 21 Nov 2023 20:15:30 -0500 Subject: Use some more constants in place of raw numbers --- constants/battle_constants.asm | 9 +++++++-- engine/battle/core.asm | 32 ++++++++++++++++---------------- 2 files changed, 23 insertions(+), 18 deletions(-) (limited to 'constants') diff --git a/constants/battle_constants.asm b/constants/battle_constants.asm index 2ae1cdef..44a85e8d 100644 --- a/constants/battle_constants.asm +++ b/constants/battle_constants.asm @@ -1,15 +1,20 @@ DEF MAX_LEVEL EQU 100 +; maximum moves known per mon DEF NUM_MOVES EQU 4 +; significant stat values +DEF BASE_STAT_LEVEL EQU 7 +DEF MAX_STAT_LEVEL EQU 13 + ; VitaminStats indexes (see data/battle/stat_names.asm) - const_def + const_def 1 const STAT_HEALTH const STAT_ATTACK const STAT_DEFENSE const STAT_SPEED const STAT_SPECIAL -DEF NUM_STATS EQU const_value +DEF NUM_STATS EQU const_value - 1 ; StatModTextStrings indexes (see data/battle/stat_mod_names.asm) const_def diff --git a/engine/battle/core.asm b/engine/battle/core.asm index ed2c4b7a..b93b6fa7 100644 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -18,7 +18,7 @@ SlidePlayerAndEnemySilhouettesOnScreen: call LoadFontTilePatterns call LoadHudAndHpBarAndStatusTilePatterns ld hl, vBGMap0 - ld bc, $400 + ld bc, BG_MAP_WIDTH * BG_MAP_HEIGHT .clearBackgroundLoop ld a, " " ld [hli], a @@ -29,9 +29,9 @@ SlidePlayerAndEnemySilhouettesOnScreen: ; copy the work RAM tile map to VRAM hlcoord 0, 0 ld de, vBGMap0 - ld b, 18 ; number of rows + ld b, SCREEN_HEIGHT .copyRowLoop - ld c, 20 ; number of columns + ld c, SCREEN_WIDTH .copyColumnLoop ld a, [hli] ld [de], a @@ -825,7 +825,7 @@ FaintEnemyPokemon: ; the enemy mon base stats are added to stat exp, so they are halved ; the base exp (which determines normal exp) is also halved ld hl, wEnemyMonBaseStats - ld b, $7 + ld b, NUM_STATS + 2 .halveExpDataLoop srl [hl] inc hl @@ -1259,7 +1259,7 @@ SlideTrainerPicOffScreen: dec c jr nz, .columnLoop pop hl - ld de, 20 + ld de, SCREEN_WIDTH add hl, de dec b jr nz, .rowLoop @@ -4183,7 +4183,7 @@ GetDamageVarsForPlayerAttack: and a ; check for critical hit jr z, .scaleStats ; in the case of a critical hit, reset the player's attack and the enemy's defense to their base values - ld c, 3 ; defense stat + ld c, STAT_DEFENSE call GetEnemyMonStat ldh a, [hProduct + 2] ld b, a @@ -4215,7 +4215,7 @@ GetDamageVarsForPlayerAttack: and a ; check for critical hit jr z, .scaleStats ; in the case of a critical hit, reset the player's and enemy's specials to their base values - ld c, 5 ; special stat + ld c, STAT_SPECIAL call GetEnemyMonStat ldh a, [hProduct + 2] ld b, a @@ -4304,7 +4304,7 @@ GetDamageVarsForEnemyAttack: ld b, a ld c, [hl] push bc - ld c, 2 ; attack stat + ld c, STAT_ATTACK call GetEnemyMonStat ld hl, hProduct + 2 pop bc @@ -4336,7 +4336,7 @@ GetDamageVarsForEnemyAttack: ld b, a ld c, [hl] push bc - ld c, 5 ; special stat + ld c, STAT_SPECIAL call GetEnemyMonStat ld hl, hProduct + 2 pop bc @@ -4380,7 +4380,7 @@ GetDamageVarsForEnemyAttack: ret ; get stat c of enemy mon -; c: stat to get (HP=1,Attack=2,Defense=3,Speed=4,Special=5) +; c: stat to get (STAT_* constant) GetEnemyMonStat: push de push bc @@ -5287,7 +5287,7 @@ AdjustDamageForMoveType: call Multiply ld a, 10 ldh [hDivisor], a - ld b, $04 + ld b, 4 call Divide ldh a, [hQuotient + 2] ld [hli], a @@ -5315,7 +5315,6 @@ AdjustDamageForMoveType: ; this doesn't take into account the effects that dual types can have ; (e.g. 4x weakness / resistance, weaknesses and resistances canceling) ; the result is stored in [wTypeEffectiveness] -; ($05 is not very effective, $10 is neutral, $14 is super effective) ; as far is can tell, this is only used once in some AI code to help decide which move to use AIGetTypeEffectiveness: ld a, [wEnemyMoveType] @@ -5324,8 +5323,10 @@ AIGetTypeEffectiveness: ld b, [hl] ; b = type 1 of player's pokemon inc hl ld c, [hl] ; c = type 2 of player's pokemon - ld a, $10 - ld [wTypeEffectiveness], a ; initialize to neutral effectiveness + ; initialize to neutral effectiveness + ; bug: this is $10 (MORE_EFFECTIVE + 1) but should be 10 (EFFECTIVE) + ld a, MORE_EFFECTIVE + 1 + ld [wTypeEffectiveness], a ld hl, TypeEffects .loop ld a, [hli] @@ -6909,7 +6910,6 @@ _InitBattleCommon: db "@" _LoadTrainerPic: -; wd033-wd034 contain pointer to pic ld a, [wTrainerPicPointer] ld e, a ld a, [wTrainerPicPointer + 1] @@ -7043,7 +7043,7 @@ LoadMonBackPic: call InterlaceMergeSpriteBuffers ; combine the two buffers to a single 2bpp sprite ld hl, vSprites ld de, vBackPic - ld c, (2*SPRITEBUFFERSIZE)/16 ; count of 16-byte chunks to be copied + ld c, (2 * SPRITEBUFFERSIZE) / 16 ; count of 16-byte chunks to be copied ldh a, [hLoadedROMBank] ld b, a jp CopyVideoData -- cgit v1.3.1-sl0p From 13079730acb01df16724d9cc11d9592bc4a10958 Mon Sep 17 00:00:00 2001 From: Rangi42 Date: Tue, 21 Nov 2023 20:21:14 -0500 Subject: Rename two unused items as `ITEM_XX` like pokecrystal --- constants/item_constants.asm | 8 ++++---- data/items/key_items.asm | 4 ++-- data/items/names.asm | 6 +++--- data/items/prices.asm | 4 ++-- 4 files changed, 11 insertions(+), 11 deletions(-) (limited to 'constants') diff --git a/constants/item_constants.asm b/constants/item_constants.asm index e25aadba..a7132670 100644 --- a/constants/item_constants.asm +++ b/constants/item_constants.asm @@ -28,9 +28,9 @@ const SUPER_POTION ; $13 const POTION ; $14 const BOULDERBADGE ; $15 +DEF SAFARI_BAIT EQU BOULDERBADGE ; overload const CASCADEBADGE ; $16 -DEF SAFARI_BAIT EQU $15 ; overload -DEF SAFARI_ROCK EQU $16 ; overload +DEF SAFARI_ROCK EQU CASCADEBADGE ; overload const THUNDERBADGE ; $17 const RAINBOWBADGE ; $18 const SOULBADGE ; $19 @@ -52,13 +52,13 @@ DEF SAFARI_ROCK EQU $16 ; overload const DOME_FOSSIL ; $29 const HELIX_FOSSIL ; $2A const SECRET_KEY ; $2B - const UNUSED_ITEM ; $2C "?????" + const ITEM_2C ; $2C const BIKE_VOUCHER ; $2D const X_ACCURACY ; $2E const LEAF_STONE ; $2F const CARD_KEY ; $30 const NUGGET ; $31 - const PP_UP_2 ; $32 + const ITEM_32 ; $32 const POKE_DOLL ; $33 const FULL_HEAL ; $34 const REVIVE ; $35 diff --git a/data/items/key_items.asm b/data/items/key_items.asm index b0c4b1ad..97f5f093 100644 --- a/data/items/key_items.asm +++ b/data/items/key_items.asm @@ -43,13 +43,13 @@ KeyItemFlags: dbit TRUE ; DOME_FOSSIL dbit TRUE ; HELIX_FOSSIL dbit TRUE ; SECRET_KEY - dbit TRUE ; UNUSED_ITEM + dbit TRUE ; ITEM_2C dbit TRUE ; BIKE_VOUCHER dbit FALSE ; X_ACCURACY dbit FALSE ; LEAF_STONE dbit TRUE ; CARD_KEY dbit FALSE ; NUGGET - dbit FALSE ; PP_UP_2 + dbit FALSE ; ITEM_32 dbit FALSE ; POKE_DOLL dbit FALSE ; FULL_HEAL dbit FALSE ; REVIVE diff --git a/data/items/names.asm b/data/items/names.asm index af51446b..44a21c38 100644 --- a/data/items/names.asm +++ b/data/items/names.asm @@ -6,7 +6,7 @@ ItemNames:: li "POKé BALL" li "TOWN MAP" li "BICYCLE" - li "?????" + li "?????" ; SURFBOARD li "SAFARI BALL" li "POKéDEX" li "MOON STONE" @@ -43,13 +43,13 @@ ItemNames:: li "DOME FOSSIL" li "HELIX FOSSIL" li "SECRET KEY" - li "?????" + li "?????" ; ITEM_2C li "BIKE VOUCHER" li "X ACCURACY" li "LEAF STONE" li "CARD KEY" li "NUGGET" - li "PP UP" + li "PP UP" ; ITEM_32 li "POKé DOLL" li "FULL HEAL" li "REVIVE" diff --git a/data/items/prices.asm b/data/items/prices.asm index 6c1c2891..d01c0b7e 100644 --- a/data/items/prices.asm +++ b/data/items/prices.asm @@ -43,13 +43,13 @@ ItemPrices:: bcd3 0 ; DOME_FOSSIL bcd3 0 ; HELIX_FOSSIL bcd3 0 ; SECRET_KEY - bcd3 0 ; XXX + bcd3 0 ; ITEM_2C bcd3 0 ; BIKE_VOUCHER bcd3 950 ; X_ACCURACY bcd3 2100 ; LEAF_STONE bcd3 0 ; CARD_KEY bcd3 10000 ; NUGGET - bcd3 9800 ; XXX PP_UP + bcd3 9800 ; ITEM_32 bcd3 1000 ; POKE_DOLL bcd3 600 ; FULL_HEAL bcd3 1500 ; REVIVE -- cgit v1.3.1-sl0p From 0a616ae5606031ce27b4c987ae0e1d9da511cec9 Mon Sep 17 00:00:00 2001 From: Rangi42 Date: Tue, 21 Nov 2023 20:33:03 -0500 Subject: Get rid of wEvosMoves, MAX_EVOLUTIONS, and EVOLUTION_SIZE Fixes #430 --- constants/pokemon_data_constants.asm | 3 --- data/pokemon/evos_moves.asm | 11 +++++++++-- engine/menus/party_menu.asm | 10 +++++----- ram/wram.asm | 4 ---- 4 files changed, 14 insertions(+), 14 deletions(-) (limited to 'constants') diff --git a/constants/pokemon_data_constants.asm b/constants/pokemon_data_constants.asm index 3c594ae1..5cc2d344 100644 --- a/constants/pokemon_data_constants.asm +++ b/constants/pokemon_data_constants.asm @@ -83,9 +83,6 @@ DEF HOF_TEAM_CAPACITY EQU 50 const EVOLVE_ITEM ; 2 const EVOLVE_TRADE ; 3 -DEF MAX_EVOLUTIONS EQU 3 -DEF EVOLUTION_SIZE EQU 4 - ; wMonHGrowthRate values ; GrowthRateTable indexes (see data/growth_rates.asm) diff --git a/data/pokemon/evos_moves.asm b/data/pokemon/evos_moves.asm index a555579e..d900dde6 100644 --- a/data/pokemon/evos_moves.asm +++ b/data/pokemon/evos_moves.asm @@ -1,5 +1,12 @@ -; See constants/pokemon_data_constants.asm -; The max number of evolutions per monster is MAX_EVOLUTIONS +; Evos+moves data structure: +; - Evolution methods: +; * db EVOLVE_LEVEL, level, species +; * db EVOLVE_ITEM, used item, min level (1), species +; * db EVOLVE_TRADE, min level (1), species +; - db 0 ; no more evolutions +; - Learnset (in increasing level order): +; * db level, move +; - db 0 ; no more level-up moves EvosMovesPointerTable: table_width 2, EvosMovesPointerTable diff --git a/engine/menus/party_menu.asm b/engine/menus/party_menu.asm index 5a473ccf..46b828eb 100644 --- a/engine/menus/party_menu.asm +++ b/engine/menus/party_menu.asm @@ -121,19 +121,19 @@ RedrawPartyMenu_:: rl b ld c, a add hl, bc - ld de, wEvosMoves + ld de, wcd6d ld a, BANK(EvosMovesPointerTable) ld bc, 2 call FarCopyData - ld hl, wEvosMoves + ld hl, wcd6d ld a, [hli] ld h, [hl] ld l, a - ld de, wEvosMoves + ld de, wcd6d ld a, BANK(EvosMovesPointerTable) - ld bc, wEvosMovesEnd - wEvosMoves + ld bc, 4 * 3 + 1 ; enough for Eevee's three 4-byte evolutions and 0 terminator call FarCopyData - ld hl, wEvosMoves + ld hl, wcd6d ld de, .notAbleToEvolveText ; loop through the pokemon's evolution entries .checkEvolutionsLoop diff --git a/ram/wram.asm b/ram/wram.asm index 32749db3..82a5f14c 100644 --- a/ram/wram.asm +++ b/ram/wram.asm @@ -886,10 +886,6 @@ wNumMovesMinusOne:: db UNION wcd6d:: ds NAME_BUFFER_LENGTH ; buffer for various data -NEXTU -wEvosMoves:: ds MAX_EVOLUTIONS * EVOLUTION_SIZE + 1 -wEvosMovesEnd:: - NEXTU ds 4 ; temp variable used to print a move's current PP on the status screen -- cgit v1.3.1-sl0p