From a14e978b98a51d0aa9b800b6135575e6df4a2e8f Mon Sep 17 00:00:00 2001 From: Llinos Evans <36418502+PlagueVonKarma@users.noreply.github.com> Date: Sat, 11 Jan 2025 06:33:35 +0000 Subject: [PATCH 1/8] Complete Inverse implementation, fix type matchups Issues occurred resulting from an incomplete implementation of Inverse Battles from Commit #e59cc2b3292f3da336e89ef23b15b234bf469368. Attempts to fix have been made through completing the implementation, which also accounts for proto-Fairy. Additionally, some semi-invulnerable glitches have attempts made to resolve them, involving a generic list and 16bitification of the compare commands. Damage processing seems iffy but this needs more testing. Type matchups function correctly, though. --- constants/battle_constants.asm | 1 + data/types/type_matchups.asm | 369 ++++++++++++++++++++---------- engine/battle/effect_commands.asm | 222 ++++++++++++++---- maps/DebugRoom.asm | 14 +- 4 files changed, 425 insertions(+), 181 deletions(-) diff --git a/constants/battle_constants.asm b/constants/battle_constants.asm index 9bff323..be245a6 100644 --- a/constants/battle_constants.asm +++ b/constants/battle_constants.asm @@ -96,6 +96,7 @@ DEF SPDSPCDV_SHINY EQU $AA const BATTLETYPE_FORCEITEM const BATTLETYPE_CELEBI const BATTLETYPE_SUICUNE + const BATTLETYPE_INVERSE ; BattleVarPairs indexes (see home/battle_vars.asm) const_def diff --git a/data/types/type_matchups.asm b/data/types/type_matchups.asm index 1f80362..14e61bc 100644 --- a/data/types/type_matchups.asm +++ b/data/types/type_matchups.asm @@ -1,132 +1,253 @@ TypeMatchups: - ; attacker, defender, *= - db NORMAL, ROCK, NOT_VERY_EFFECTIVE - db NORMAL, STEEL, NOT_VERY_EFFECTIVE - db FIRE, FIRE, NOT_VERY_EFFECTIVE - db FIRE, WATER, NOT_VERY_EFFECTIVE - db FIRE, GRASS, SUPER_EFFECTIVE - db FIRE, ICE, SUPER_EFFECTIVE - db FIRE, BUG, SUPER_EFFECTIVE - db FIRE, ROCK, NOT_VERY_EFFECTIVE - db FIRE, DRAGON, NOT_VERY_EFFECTIVE - db FIRE, STEEL, SUPER_EFFECTIVE - db FIRE, FAIRY, SUPER_EFFECTIVE - db WATER, FIRE, SUPER_EFFECTIVE - db WATER, WATER, NOT_VERY_EFFECTIVE - db WATER, GRASS, NOT_VERY_EFFECTIVE - db WATER, GROUND, SUPER_EFFECTIVE - db WATER, ROCK, SUPER_EFFECTIVE - db WATER, DRAGON, NOT_VERY_EFFECTIVE - db ELECTRIC, WATER, SUPER_EFFECTIVE - db ELECTRIC, ELECTRIC, NOT_VERY_EFFECTIVE - db ELECTRIC, GRASS, NOT_VERY_EFFECTIVE - db ELECTRIC, GROUND, NO_EFFECT - db ELECTRIC, FLYING, SUPER_EFFECTIVE - db ELECTRIC, DRAGON, NOT_VERY_EFFECTIVE - db GRASS, FIRE, NOT_VERY_EFFECTIVE - db GRASS, WATER, SUPER_EFFECTIVE - db GRASS, GRASS, NOT_VERY_EFFECTIVE - db GRASS, POISON, NOT_VERY_EFFECTIVE - db GRASS, GROUND, SUPER_EFFECTIVE - db GRASS, FLYING, NOT_VERY_EFFECTIVE - db GRASS, BUG, NOT_VERY_EFFECTIVE - db GRASS, ROCK, SUPER_EFFECTIVE - db GRASS, DRAGON, NOT_VERY_EFFECTIVE - db GRASS, STEEL, NOT_VERY_EFFECTIVE - db ICE, WATER, NOT_VERY_EFFECTIVE - db ICE, GRASS, SUPER_EFFECTIVE - db ICE, ICE, NOT_VERY_EFFECTIVE - db ICE, GROUND, SUPER_EFFECTIVE - db ICE, FLYING, SUPER_EFFECTIVE - db ICE, DRAGON, SUPER_EFFECTIVE - db ICE, STEEL, NOT_VERY_EFFECTIVE - db ICE, FAIRY, SUPER_EFFECTIVE - db ICE, FIRE, NOT_VERY_EFFECTIVE - db FIGHTING, NORMAL, SUPER_EFFECTIVE - db FIGHTING, ICE, SUPER_EFFECTIVE - db FIGHTING, POISON, NOT_VERY_EFFECTIVE - db FIGHTING, FLYING, NOT_VERY_EFFECTIVE - db FIGHTING, PSYCHIC_TYPE, NOT_VERY_EFFECTIVE - db FIGHTING, BUG, NOT_VERY_EFFECTIVE - db FIGHTING, ROCK, SUPER_EFFECTIVE - db FIGHTING, DARK, SUPER_EFFECTIVE - db FIGHTING, STEEL, SUPER_EFFECTIVE - db FIGHTING, FAIRY, NOT_VERY_EFFECTIVE - db POISON, GRASS, SUPER_EFFECTIVE - db POISON, POISON, NOT_VERY_EFFECTIVE - db POISON, GROUND, NOT_VERY_EFFECTIVE - db POISON, ROCK, NOT_VERY_EFFECTIVE - db POISON, GHOST, NOT_VERY_EFFECTIVE - db POISON, STEEL, NO_EFFECT - db GROUND, FIRE, SUPER_EFFECTIVE - db GROUND, ELECTRIC, SUPER_EFFECTIVE - db GROUND, GRASS, NOT_VERY_EFFECTIVE - db GROUND, POISON, SUPER_EFFECTIVE - db GROUND, FLYING, NO_EFFECT - db GROUND, BUG, NOT_VERY_EFFECTIVE - db GROUND, ROCK, SUPER_EFFECTIVE - db GROUND, STEEL, SUPER_EFFECTIVE - db FLYING, ELECTRIC, NOT_VERY_EFFECTIVE - db FLYING, GRASS, SUPER_EFFECTIVE - db FLYING, FIGHTING, SUPER_EFFECTIVE - db FLYING, BUG, SUPER_EFFECTIVE - db FLYING, ROCK, NOT_VERY_EFFECTIVE - db FLYING, STEEL, NOT_VERY_EFFECTIVE - db PSYCHIC_TYPE, FIGHTING, SUPER_EFFECTIVE - db PSYCHIC_TYPE, POISON, SUPER_EFFECTIVE + ; attacker, defender, *= + db NORMAL, ROCK, NOT_VERY_EFFECTIVE + db NORMAL, STEEL, NOT_VERY_EFFECTIVE + db FIRE, FIRE, NOT_VERY_EFFECTIVE + db FIRE, WATER, NOT_VERY_EFFECTIVE + db FIRE, GRASS, SUPER_EFFECTIVE + db FIRE, ICE, SUPER_EFFECTIVE + db FIRE, BUG, SUPER_EFFECTIVE + db FIRE, ROCK, NOT_VERY_EFFECTIVE + db FIRE, DRAGON, NOT_VERY_EFFECTIVE + db FIRE, STEEL, SUPER_EFFECTIVE + db FIRE, FAIRY, SUPER_EFFECTIVE + db WATER, FIRE, SUPER_EFFECTIVE + db WATER, WATER, NOT_VERY_EFFECTIVE + db WATER, GRASS, NOT_VERY_EFFECTIVE + db WATER, GROUND, SUPER_EFFECTIVE + db WATER, ROCK, SUPER_EFFECTIVE + db WATER, DRAGON, NOT_VERY_EFFECTIVE + db ELECTRIC, WATER, SUPER_EFFECTIVE + db ELECTRIC, ELECTRIC, NOT_VERY_EFFECTIVE + db ELECTRIC, GRASS, NOT_VERY_EFFECTIVE + db ELECTRIC, GROUND, NO_EFFECT + db ELECTRIC, FLYING, SUPER_EFFECTIVE + db ELECTRIC, DRAGON, NOT_VERY_EFFECTIVE + db GRASS, FIRE, NOT_VERY_EFFECTIVE + db GRASS, WATER, SUPER_EFFECTIVE + db GRASS, GRASS, NOT_VERY_EFFECTIVE + db GRASS, POISON, NOT_VERY_EFFECTIVE + db GRASS, GROUND, SUPER_EFFECTIVE + db GRASS, FLYING, NOT_VERY_EFFECTIVE + db GRASS, BUG, NOT_VERY_EFFECTIVE + db GRASS, ROCK, SUPER_EFFECTIVE + db GRASS, DRAGON, NOT_VERY_EFFECTIVE + db GRASS, STEEL, NOT_VERY_EFFECTIVE + db ICE, WATER, NOT_VERY_EFFECTIVE + db ICE, GRASS, SUPER_EFFECTIVE + db ICE, ICE, NOT_VERY_EFFECTIVE + db ICE, GROUND, SUPER_EFFECTIVE + db ICE, FLYING, SUPER_EFFECTIVE + db ICE, DRAGON, SUPER_EFFECTIVE + db ICE, STEEL, NOT_VERY_EFFECTIVE + db ICE, FAIRY, SUPER_EFFECTIVE + db ICE, FIRE, NOT_VERY_EFFECTIVE + db FIGHTING, NORMAL, SUPER_EFFECTIVE + db FIGHTING, ICE, SUPER_EFFECTIVE + db FIGHTING, POISON, NOT_VERY_EFFECTIVE + db FIGHTING, FLYING, NOT_VERY_EFFECTIVE + db FIGHTING, PSYCHIC_TYPE, NOT_VERY_EFFECTIVE + db FIGHTING, BUG, NOT_VERY_EFFECTIVE + db FIGHTING, ROCK, SUPER_EFFECTIVE + db FIGHTING, DARK, SUPER_EFFECTIVE + db FIGHTING, STEEL, SUPER_EFFECTIVE + db FIGHTING, FAIRY, NOT_VERY_EFFECTIVE + db POISON, GRASS, SUPER_EFFECTIVE + db POISON, POISON, NOT_VERY_EFFECTIVE + db POISON, GROUND, NOT_VERY_EFFECTIVE + db POISON, ROCK, NOT_VERY_EFFECTIVE + db POISON, GHOST, NOT_VERY_EFFECTIVE + db POISON, STEEL, NO_EFFECT + db GROUND, FIRE, SUPER_EFFECTIVE + db GROUND, ELECTRIC, SUPER_EFFECTIVE + db GROUND, GRASS, NOT_VERY_EFFECTIVE + db GROUND, POISON, SUPER_EFFECTIVE + db GROUND, FLYING, NO_EFFECT + db GROUND, BUG, NOT_VERY_EFFECTIVE + db GROUND, ROCK, SUPER_EFFECTIVE + db GROUND, STEEL, SUPER_EFFECTIVE + db FLYING, ELECTRIC, NOT_VERY_EFFECTIVE + db FLYING, GRASS, SUPER_EFFECTIVE + db FLYING, FIGHTING, SUPER_EFFECTIVE + db FLYING, BUG, SUPER_EFFECTIVE + db FLYING, ROCK, NOT_VERY_EFFECTIVE + db FLYING, STEEL, NOT_VERY_EFFECTIVE + db PSYCHIC_TYPE, FIGHTING, SUPER_EFFECTIVE + db PSYCHIC_TYPE, POISON, SUPER_EFFECTIVE db PSYCHIC_TYPE, PSYCHIC_TYPE, NOT_VERY_EFFECTIVE - db PSYCHIC_TYPE, DARK, NO_EFFECT - db PSYCHIC_TYPE, STEEL, NOT_VERY_EFFECTIVE - db BUG, FIRE, NOT_VERY_EFFECTIVE - db BUG, GRASS, SUPER_EFFECTIVE - db BUG, FIGHTING, NOT_VERY_EFFECTIVE - db BUG, POISON, NOT_VERY_EFFECTIVE - db BUG, FLYING, NOT_VERY_EFFECTIVE - db BUG, PSYCHIC_TYPE, SUPER_EFFECTIVE - db BUG, GHOST, NOT_VERY_EFFECTIVE - db BUG, DARK, SUPER_EFFECTIVE - db BUG, STEEL, NOT_VERY_EFFECTIVE - db BUG, FAIRY, NOT_VERY_EFFECTIVE - db ROCK, FIRE, SUPER_EFFECTIVE - db ROCK, ICE, SUPER_EFFECTIVE - db ROCK, FIGHTING, NOT_VERY_EFFECTIVE - db ROCK, GROUND, NOT_VERY_EFFECTIVE - db ROCK, FLYING, SUPER_EFFECTIVE - db ROCK, BUG, SUPER_EFFECTIVE - db ROCK, STEEL, NOT_VERY_EFFECTIVE - db GHOST, NORMAL, NO_EFFECT - db GHOST, PSYCHIC_TYPE, SUPER_EFFECTIVE - db GHOST, DARK, NOT_VERY_EFFECTIVE - db GHOST, STEEL, NOT_VERY_EFFECTIVE - db GHOST, GHOST, SUPER_EFFECTIVE - db DRAGON, DRAGON, SUPER_EFFECTIVE - db DRAGON, STEEL, NOT_VERY_EFFECTIVE - db DRAGON, FAIRY, NO_EFFECT - db DARK, FIGHTING, NOT_VERY_EFFECTIVE - db DARK, PSYCHIC_TYPE, SUPER_EFFECTIVE - db DARK, GHOST, SUPER_EFFECTIVE - db DARK, DARK, NOT_VERY_EFFECTIVE - db DARK, STEEL, NOT_VERY_EFFECTIVE - db DARK, FAIRY, NOT_VERY_EFFECTIVE - db STEEL, FIRE, NOT_VERY_EFFECTIVE - db STEEL, WATER, NOT_VERY_EFFECTIVE - db STEEL, ELECTRIC, NOT_VERY_EFFECTIVE - db STEEL, ICE, SUPER_EFFECTIVE - db STEEL, ROCK, SUPER_EFFECTIVE - db STEEL, STEEL, NOT_VERY_EFFECTIVE - db STEEL, FAIRY, SUPER_EFFECTIVE - db FAIRY, FIRE, NOT_VERY_EFFECTIVE - db FAIRY, BUG, SUPER_EFFECTIVE - db FAIRY, FIGHTING, SUPER_EFFECTIVE - db FAIRY, ICE, NOT_VERY_EFFECTIVE - db FAIRY, DRAGON, SUPER_EFFECTIVE - db FAIRY, DARK, SUPER_EFFECTIVE - db FAIRY, STEEL, NOT_VERY_EFFECTIVE + db PSYCHIC_TYPE, DARK, NO_EFFECT + db PSYCHIC_TYPE, STEEL, NOT_VERY_EFFECTIVE + db BUG, FIRE, NOT_VERY_EFFECTIVE + db BUG, GRASS, SUPER_EFFECTIVE + db BUG, FIGHTING, NOT_VERY_EFFECTIVE + db BUG, POISON, NOT_VERY_EFFECTIVE + db BUG, FLYING, NOT_VERY_EFFECTIVE + db BUG, PSYCHIC_TYPE, SUPER_EFFECTIVE + db BUG, GHOST, NOT_VERY_EFFECTIVE + db BUG, DARK, SUPER_EFFECTIVE + db BUG, STEEL, NOT_VERY_EFFECTIVE + db BUG, FAIRY, NOT_VERY_EFFECTIVE + db ROCK, FIRE, SUPER_EFFECTIVE + db ROCK, ICE, SUPER_EFFECTIVE + db ROCK, FIGHTING, NOT_VERY_EFFECTIVE + db ROCK, GROUND, NOT_VERY_EFFECTIVE + db ROCK, FLYING, SUPER_EFFECTIVE + db ROCK, BUG, SUPER_EFFECTIVE + db ROCK, STEEL, NOT_VERY_EFFECTIVE + db GHOST, NORMAL, NO_EFFECT + db GHOST, PSYCHIC_TYPE, SUPER_EFFECTIVE + db GHOST, DARK, NOT_VERY_EFFECTIVE + db GHOST, STEEL, NOT_VERY_EFFECTIVE + db GHOST, GHOST, SUPER_EFFECTIVE + db DRAGON, DRAGON, SUPER_EFFECTIVE + db DRAGON, STEEL, NOT_VERY_EFFECTIVE + db DRAGON, FAIRY, NO_EFFECT + db DARK, FIGHTING, NOT_VERY_EFFECTIVE + db DARK, PSYCHIC_TYPE, SUPER_EFFECTIVE + db DARK, GHOST, SUPER_EFFECTIVE + db DARK, DARK, NOT_VERY_EFFECTIVE + db DARK, STEEL, NOT_VERY_EFFECTIVE + db DARK, FAIRY, NOT_VERY_EFFECTIVE + db STEEL, FIRE, NOT_VERY_EFFECTIVE + db STEEL, WATER, NOT_VERY_EFFECTIVE + db STEEL, ELECTRIC, NOT_VERY_EFFECTIVE + db STEEL, ICE, SUPER_EFFECTIVE + db STEEL, ROCK, SUPER_EFFECTIVE + db STEEL, STEEL, NOT_VERY_EFFECTIVE + db STEEL, FAIRY, SUPER_EFFECTIVE + db FAIRY, FIRE, NOT_VERY_EFFECTIVE + db FAIRY, BUG, SUPER_EFFECTIVE + db FAIRY, FIGHTING, SUPER_EFFECTIVE + db FAIRY, ICE, NOT_VERY_EFFECTIVE + db FAIRY, DRAGON, SUPER_EFFECTIVE + db FAIRY, DARK, SUPER_EFFECTIVE + db FAIRY, STEEL, NOT_VERY_EFFECTIVE db -2 ; end (with Foresight) ; Foresight removes Ghost's immunities. - db NORMAL, GHOST, NO_EFFECT - db FIGHTING, GHOST, NO_EFFECT + db NORMAL, GHOST, NO_EFFECT + db FIGHTING, GHOST, NO_EFFECT db -1 ; end + +InverseTypeMatchups: + ; attacker, defender, *= + db NORMAL, ROCK, SUPER_EFFECTIVE + db NORMAL, STEEL, SUPER_EFFECTIVE + db FIRE, FIRE, SUPER_EFFECTIVE + db FIRE, WATER, SUPER_EFFECTIVE + db FIRE, GRASS, NOT_VERY_EFFECTIVE + db FIRE, ICE, NOT_VERY_EFFECTIVE + db FIRE, BUG, NOT_VERY_EFFECTIVE + db FIRE, ROCK, SUPER_EFFECTIVE + db FIRE, DRAGON, SUPER_EFFECTIVE + db FIRE, STEEL, NOT_VERY_EFFECTIVE + db WATER, FIRE, NOT_VERY_EFFECTIVE + db WATER, WATER, SUPER_EFFECTIVE + db WATER, GRASS, SUPER_EFFECTIVE + db WATER, GROUND, NOT_VERY_EFFECTIVE + db WATER, ROCK, NOT_VERY_EFFECTIVE + db WATER, DRAGON, SUPER_EFFECTIVE + db ELECTRIC, WATER, NOT_VERY_EFFECTIVE + db ELECTRIC, ELECTRIC, SUPER_EFFECTIVE + db ELECTRIC, GRASS, SUPER_EFFECTIVE + db ELECTRIC, GROUND, SUPER_EFFECTIVE + db ELECTRIC, FLYING, NOT_VERY_EFFECTIVE + db ELECTRIC, DRAGON, SUPER_EFFECTIVE + db GRASS, FIRE, SUPER_EFFECTIVE + db GRASS, WATER, NOT_VERY_EFFECTIVE + db GRASS, GRASS, SUPER_EFFECTIVE + db GRASS, POISON, SUPER_EFFECTIVE + db GRASS, GROUND, NOT_VERY_EFFECTIVE + db GRASS, FLYING, SUPER_EFFECTIVE + db GRASS, BUG, SUPER_EFFECTIVE + db GRASS, ROCK, NOT_VERY_EFFECTIVE + db GRASS, DRAGON, SUPER_EFFECTIVE + db GRASS, STEEL, SUPER_EFFECTIVE + db ICE, WATER, SUPER_EFFECTIVE + db ICE, GRASS, NOT_VERY_EFFECTIVE + db ICE, ICE, SUPER_EFFECTIVE + db ICE, GROUND, NOT_VERY_EFFECTIVE + db ICE, FLYING, NOT_VERY_EFFECTIVE + db ICE, DRAGON, NOT_VERY_EFFECTIVE + db ICE, STEEL, SUPER_EFFECTIVE + db ICE, FIRE, SUPER_EFFECTIVE + db FIGHTING, NORMAL, NOT_VERY_EFFECTIVE + db FIGHTING, ICE, NOT_VERY_EFFECTIVE + db FIGHTING, POISON, SUPER_EFFECTIVE + db FIGHTING, FLYING, SUPER_EFFECTIVE + db FIGHTING, PSYCHIC_TYPE, SUPER_EFFECTIVE + db FIGHTING, BUG, SUPER_EFFECTIVE + db FIGHTING, ROCK, NOT_VERY_EFFECTIVE + db FIGHTING, DARK, NOT_VERY_EFFECTIVE + db FIGHTING, STEEL, NOT_VERY_EFFECTIVE + db POISON, GRASS, NOT_VERY_EFFECTIVE + db POISON, POISON, SUPER_EFFECTIVE + db POISON, GROUND, SUPER_EFFECTIVE + db POISON, ROCK, SUPER_EFFECTIVE + db POISON, GHOST, SUPER_EFFECTIVE + db POISON, STEEL, SUPER_EFFECTIVE + db GROUND, FIRE, NOT_VERY_EFFECTIVE + db GROUND, ELECTRIC, NOT_VERY_EFFECTIVE + db GROUND, GRASS, SUPER_EFFECTIVE + db GROUND, POISON, NOT_VERY_EFFECTIVE + db GROUND, FLYING, SUPER_EFFECTIVE + db GROUND, BUG, SUPER_EFFECTIVE + db GROUND, ROCK, NOT_VERY_EFFECTIVE + db GROUND, STEEL, NOT_VERY_EFFECTIVE + db FLYING, ELECTRIC, SUPER_EFFECTIVE + db FLYING, GRASS, NOT_VERY_EFFECTIVE + db FLYING, FIGHTING, NOT_VERY_EFFECTIVE + db FLYING, BUG, NOT_VERY_EFFECTIVE + db FLYING, ROCK, SUPER_EFFECTIVE + db FLYING, STEEL, SUPER_EFFECTIVE + db PSYCHIC_TYPE, FIGHTING, NOT_VERY_EFFECTIVE + db PSYCHIC_TYPE, POISON, NOT_VERY_EFFECTIVE + db PSYCHIC_TYPE, PSYCHIC_TYPE, SUPER_EFFECTIVE + db PSYCHIC_TYPE, DARK, SUPER_EFFECTIVE + db PSYCHIC_TYPE, STEEL, SUPER_EFFECTIVE + db BUG, FIRE, SUPER_EFFECTIVE + db BUG, GRASS, NOT_VERY_EFFECTIVE + db BUG, FIGHTING, SUPER_EFFECTIVE + db BUG, POISON, SUPER_EFFECTIVE + db BUG, FLYING, SUPER_EFFECTIVE + db BUG, PSYCHIC_TYPE, NOT_VERY_EFFECTIVE + db BUG, GHOST, SUPER_EFFECTIVE + db BUG, DARK, NOT_VERY_EFFECTIVE + db BUG, STEEL, SUPER_EFFECTIVE + db ROCK, FIRE, NOT_VERY_EFFECTIVE + db ROCK, ICE, NOT_VERY_EFFECTIVE + db ROCK, FIGHTING, SUPER_EFFECTIVE + db ROCK, GROUND, SUPER_EFFECTIVE + db ROCK, FLYING, NOT_VERY_EFFECTIVE + db ROCK, BUG, NOT_VERY_EFFECTIVE + db ROCK, STEEL, SUPER_EFFECTIVE + db GHOST, NORMAL, SUPER_EFFECTIVE + db GHOST, PSYCHIC_TYPE, NOT_VERY_EFFECTIVE + db GHOST, DARK, SUPER_EFFECTIVE + db GHOST, STEEL, SUPER_EFFECTIVE + db GHOST, GHOST, NOT_VERY_EFFECTIVE + db DRAGON, DRAGON, NOT_VERY_EFFECTIVE + db DRAGON, STEEL, SUPER_EFFECTIVE + db DARK, FIGHTING, SUPER_EFFECTIVE + db DARK, PSYCHIC_TYPE, NOT_VERY_EFFECTIVE + db DARK, GHOST, NOT_VERY_EFFECTIVE + db DARK, DARK, SUPER_EFFECTIVE + db DARK, STEEL, SUPER_EFFECTIVE + db STEEL, FIRE, SUPER_EFFECTIVE + db STEEL, WATER, SUPER_EFFECTIVE + db STEEL, ELECTRIC, SUPER_EFFECTIVE + db STEEL, ICE, NOT_VERY_EFFECTIVE + db STEEL, ROCK, NOT_VERY_EFFECTIVE + db STEEL, STEEL, SUPER_EFFECTIVE + db NORMAL, GHOST, SUPER_EFFECTIVE + db FIGHTING, GHOST, SUPER_EFFECTIVE + db FAIRY, FIRE, SUPER_EFFECTIVE + db FAIRY, BUG, NOT_VERY_EFFECTIVE + db FAIRY, FIGHTING, NOT_VERY_EFFECTIVE + db FAIRY, ICE, SUPER_EFFECTIVE + db FAIRY, DRAGON, NOT_VERY_EFFECTIVE + db FAIRY, DARK, NOT_VERY_EFFECTIVE + db FAIRY, STEEL, SUPER_EFFECTIVE + db -1 ; end diff --git a/engine/battle/effect_commands.asm b/engine/battle/effect_commands.asm index 29cc929..6d3141b 100644 --- a/engine/battle/effect_commands.asm +++ b/engine/battle/effect_commands.asm @@ -359,7 +359,7 @@ CantMove: ld a, BATTLE_VARS_MOVE_ANIM call GetBattleVar push hl - ld hl, .fly_dig_moves + ld hl, FlyDigMoves call CheckMoveInList pop hl ret nc @@ -371,13 +371,6 @@ CantMove: res SUBSTATUS_UNDERWATER, [hl] jp AppearUserRaiseSub -.fly_dig_moves - dw FLY - dw DIG - dw BOUNCE - dw WATER_SPORT - dw -1 - OpponentCantMove: call BattleCommand_SwitchTurn call CantMove @@ -1370,7 +1363,13 @@ BattleCommand_Stab: ld a, BATTLE_VARS_MOVE_TYPE call GetBattleVar ld b, a + ld a, [wBattleType] + cp BATTLETYPE_INVERSE + jr z, .inverse ld hl, TypeMatchups + jr .TypesLoop +.inverse + ld hl, InverseTypeMatchups .TypesLoop: ; ld a, [hli] @@ -1497,7 +1496,13 @@ CheckTypeMatchup: ld c, [hl] ld a, EFFECTIVE ld [wTypeMatchup], a + ld a, [wBattleType] + cp BATTLETYPE_INVERSE + jr z, .inverse ld hl, TypeMatchups + jr .TypesLoop +.inverse + ld hl, InverseTypeMatchups .TypesLoop: ; ld a, [hli] call GetNextTypeMatchupsByte @@ -1511,7 +1516,6 @@ CheckTypeMatchup: bit SUBSTATUS_IDENTIFIED, a jr nz, .End jr .TypesLoop - .Next: cp d jr nz, .Nope @@ -1788,6 +1792,7 @@ BattleCommand_CheckHit: call GetBattleVar and 1 << SUBSTATUS_FLYING | 1 << SUBSTATUS_UNDERGROUND jr nz, .flying_or_underground + ld a, BATTLE_VARS_SUBSTATUS4_OPP call GetBattleVar and 1 << SUBSTATUS_UNDERWATER @@ -1795,12 +1800,34 @@ BattleCommand_CheckHit: ld a, BATTLE_VARS_MOVE_ANIM call GetBattleVar - cp SURF + ld hl, SURF + call GetMoveIDFromIndex + ld a, h + if HIGH(SURF) + cp HIGH(SURF) + else + and a + endc + ld a, l + pop hl + ret nz + cp LOW(SURF) ret z - cp WHIRLPOOL + ld hl, WHIRLPOOL + call GetMoveIDFromIndex + ld a, h + if HIGH(WHIRLPOOL) + cp HIGH(WHIRLPOOL) + else + and a + endc + ld a, l + pop hl + ret nz + cp LOW(WHIRLPOOL) ret -.flying_or_underground +.flying_or_underground bit SUBSTATUS_FLYING, a ld hl, .FlyMoves jr z, .check_move_in_list @@ -2071,18 +2098,11 @@ BattleCommand_MoveAnimNoSub: ld a, BATTLE_VARS_MOVE_ANIM call GetBattleVar - ld hl, .fly_dig_moves + ld hl, FlyDigMoves call CheckMoveInList ret nc jp AppearUserLowerSub -.fly_dig_moves - dw FLY - dw DIG - dw BOUNCE - dw WATER_SPORT - dw -1 - .alternate_anim ld a, [wBattleAnimParam] and 1 @@ -2167,7 +2187,7 @@ BattleCommand_FailureText: call GetBattleVarAddr push hl - ld hl, .fly_dig_moves + ld hl, FlyDigMoves call CheckMoveInList pop hl jr c, .fly_dig @@ -2200,13 +2220,6 @@ BattleCommand_FailureText: call AppearUserRaiseSub jp EndMoveEffect -.fly_dig_moves - dw FLY - dw DIG - dw WATER_SPORT - dw BOUNCE - dw -1 - BattleCommand_ApplyDamage: ld a, BATTLE_VARS_SUBSTATUS1_OPP call GetBattleVar @@ -5645,26 +5658,134 @@ BattleCommand_Charge: call LoadMoveAnim ld a, BATTLE_VARS_MOVE_ANIM call GetBattleVar - - ld hl, .fly_dig_moves ; attempt to resolve 16-bit issue with bounce and water sport - this can probably be made more efficient with a farcallable list - call CheckMoveInList + ld hl, WATER_SPORT + call GetMoveIDFromIndex + ld a, h + if HIGH(WATER_SPORT) + cp HIGH(WATER_SPORT) + else + and a + endc + ld a, l pop hl - jr c, .got_move_type + ret nz + cp LOW(WATER_SPORT) + jp z, .set_diving + ld hl, FLY + call GetMoveIDFromIndex + ld a, h + if HIGH(FLY) + cp HIGH(FLY) + else + and a + endc + ld a, l + pop hl + ret nz + cp LOW(FLY) + jr z, .set_flying + ld hl, BOUNCE + call GetMoveIDFromIndex + ld a, h + if HIGH(BOUNCE) + cp HIGH(BOUNCE) + else + and a + endc + ld a, l + pop hl + ret nz + cp LOW(BOUNCE) + jr z, .set_flying + ld hl, DIG + call GetMoveIDFromIndex + ld a, h + if HIGH(DIG) + cp HIGH(DIG) + else + and a + endc + ld a, l + pop hl + ret nz + cp LOW(DIG) + jr z, .set_flying call BattleCommand_RaiseSub - xor a + jr .not_flying -.got_move_type - ; a will contain the substatus 3 bit to set (1 << bit), or 0 if none (not flying/digging underground) - and a - ld l, a - push hl - call nz, DisappearUser +.flying + call DisappearUser +.not_flying ld a, BATTLE_VARS_SUBSTATUS3 call GetBattleVarAddr - pop bc - ld a, c - or [hl] - ld [hl], a + ld a, BATTLE_VARS_MOVE_ANIM + call GetBattleVar + ld b, a + ld hl, WATER_SPORT + call GetMoveIDFromIndex + ld a, h + if HIGH(WATER_SPORT) + cp HIGH(WATER_SPORT) + else + and a + endc + ld a, l + pop hl + ret nz + cp LOW(WATER_SPORT) + jr z, .set_diving + ld hl, FLY + call GetMoveIDFromIndex + ld a, h + if HIGH(FLY) + cp HIGH(FLY) + else + and a + endc + ld a, l + pop hl + ret nz + cp LOW(FLY) + jr z, .set_flying + ld hl, BOUNCE + call GetMoveIDFromIndex + ld a, h + if HIGH(BOUNCE) + cp HIGH(BOUNCE) + else + and a + endc + ld a, l + pop hl + ret nz + cp LOW(BOUNCE) + jr z, .set_flying + ld hl, DIG + call GetMoveIDFromIndex + ld a, h + if HIGH(DIG) + cp HIGH(DIG) + else + and a + endc + ld a, l + pop hl + ret nz + cp LOW(DIG) + jr z, .set_flying + jr nz, .dont_set_digging + set SUBSTATUS_UNDERGROUND, [hl] + jr .dont_set_digging + +.set_diving + ld a, BATTLE_VARS_SUBSTATUS4 + call GetBattleVarAddr + set SUBSTATUS_UNDERWATER, [hl] + jr .dont_set_digging +.set_flying + set SUBSTATUS_FLYING, [hl] + +.dont_set_digging call CheckUserIsCharging jr nz, .mimic ld a, BATTLE_VARS_LAST_COUNTER_MOVE @@ -5750,13 +5871,6 @@ BattleCommand_Charge: text_jump HidUnderwaterText db "@" -.fly_dig_moves - dw FLY - dw DIG - dw BOUNCE - dw WATER_SPORT - dw -1 - BattleCommand_TrapTarget: ld a, [wAttackMissed] and a @@ -6132,6 +6246,7 @@ BattleCommand_DoubleUnderwaterDamage: ld a, BATTLE_VARS_SUBSTATUS4_OPP call GetBattleVar bit SUBSTATUS_UNDERWATER, a + ret z ; fallthrough DoubleDamage: @@ -6952,3 +7067,10 @@ CheckMoveInList: pop de pop bc ret + +FlyDigMoves: + dw FLY + dw DIG + dw BOUNCE + dw WATER_SPORT + dw -1 diff --git a/maps/DebugRoom.asm b/maps/DebugRoom.asm index f8a404b..1826396 100644 --- a/maps/DebugRoom.asm +++ b/maps/DebugRoom.asm @@ -8,12 +8,12 @@ DebugRoom_MapScripts: DebugPokemon1Script: opentext - getmonname STRING_BUFFER_3, AZUMARILL + getmonname STRING_BUFFER_3, BIPULLA writetext ReceivedDebugPokemonText playsound SFX_CAUGHT_MON waitsfx promptbutton - givepoke AZUMARILL, 4, HM_WATER_SPORT + givepoke BIPULLA, 15, HM_WATER_SPORT closetext end @@ -39,11 +39,11 @@ DebugPokemon3Script: faceplayer opentext writetext DebugTextA - cry STROMEN + cry BELLSPROUT pause 15 closetext - loadvar VAR_BATTLETYPE, BATTLETYPE_SHINY - loadwildmon COATL, 75 + loadvar VAR_BATTLETYPE, BATTLETYPE_INVERSE + loadwildmon BELLSPROUT, 10 startbattle reloadmapafterbattle end @@ -56,11 +56,11 @@ DebugPokemon4Script: faceplayer opentext writetext DebugTextB - cry STROMEN + cry BELLSPROUT pause 15 closetext loadvar VAR_BATTLETYPE, BATTLETYPE_SUICUNE - loadwildmon COATL, 75 + loadwildmon BELLSPROUT, 10 startbattle reloadmapafterbattle end From 2efe31c4069f807223f3b30a53780f595fed04a0 Mon Sep 17 00:00:00 2001 From: Llinos Evans <36418502+PlagueVonKarma@users.noreply.github.com> Date: Sat, 11 Jan 2025 15:27:40 +0000 Subject: [PATCH 2/8] Annihilape, Ursaluna, and Tangrowth sprites Taken from JohtoLegends. Tangrowth was left uncredited. https://github.com/aforward9600/JohtoLegends --- README.md | 1 + gfx/pokemon/annihilape/anim.asm | 13 ++++++++++++- gfx/pokemon/annihilape/anim_idle.asm | 6 +++++- gfx/pokemon/annihilape/back.png | Bin 304 -> 501 bytes gfx/pokemon/annihilape/credit.txt | 4 ++++ gfx/pokemon/annihilape/front.png | Bin 315 -> 1080 bytes gfx/pokemon/annihilape/normal.pal | 3 +++ gfx/pokemon/annihilape/shiny.pal | 5 +++-- gfx/pokemon/tangrowth/anim.asm | 16 +++++++++++++++- gfx/pokemon/tangrowth/anim_idle.asm | 6 +++++- gfx/pokemon/tangrowth/back.png | Bin 304 -> 1144 bytes gfx/pokemon/tangrowth/credit.txt | 4 ++++ gfx/pokemon/tangrowth/front.png | Bin 315 -> 17079 bytes gfx/pokemon/tangrowth/shiny.pal | 5 +++-- gfx/pokemon/ursaluna/anim.asm | 16 +++++++++++++++- gfx/pokemon/ursaluna/anim_idle.asm | 8 +++++++- gfx/pokemon/ursaluna/back.png | Bin 304 -> 416 bytes gfx/pokemon/ursaluna/credit.txt | 4 ++++ gfx/pokemon/ursaluna/front.png | Bin 315 -> 1325 bytes gfx/pokemon/ursaluna/normal.pal | 3 +++ gfx/pokemon/ursaluna/shiny.pal | 5 +++-- 21 files changed, 87 insertions(+), 12 deletions(-) create mode 100644 gfx/pokemon/annihilape/credit.txt create mode 100644 gfx/pokemon/annihilape/normal.pal create mode 100644 gfx/pokemon/tangrowth/credit.txt create mode 100644 gfx/pokemon/ursaluna/credit.txt create mode 100644 gfx/pokemon/ursaluna/normal.pal diff --git a/README.md b/README.md index 3e36ff1..e06ba86 100644 --- a/README.md +++ b/README.md @@ -161,6 +161,7 @@ JEP-affiliated spriters require sprites to be used with direct credit for non-co - Tom Wang: Gold/Chris running sprite - Seasick: Kris running sprite - Pigu-A, RevoSucks, walle303 - Contributors to Pokemon Anniversary Red's repository, where we reused the Green/FeMC sprites. +- ShadowOne333: Annihilape and Ursaluna sprites used in [JohtoLegends](https://github.com/aforward9600/JohtoLegends) ## Music Credits diff --git a/gfx/pokemon/annihilape/anim.asm b/gfx/pokemon/annihilape/anim.asm index 875f7be..1be4999 100644 --- a/gfx/pokemon/annihilape/anim.asm +++ b/gfx/pokemon/annihilape/anim.asm @@ -1 +1,12 @@ - endanim \ No newline at end of file + frame 0, 08 + setrepeat 2 + frame 1, 10 + frame 2, 10 + dorepeat 2 + frame 3, 08 + setrepeat 3 + frame 3, 06 + frame 4, 06 + dorepeat 7 + frame 3, 06 + endanim diff --git a/gfx/pokemon/annihilape/anim_idle.asm b/gfx/pokemon/annihilape/anim_idle.asm index 875f7be..7f7e533 100644 --- a/gfx/pokemon/annihilape/anim_idle.asm +++ b/gfx/pokemon/annihilape/anim_idle.asm @@ -1 +1,5 @@ - endanim \ No newline at end of file + setrepeat 2 + frame 0, 10 + frame 5, 10 + dorepeat 1 + endanim diff --git a/gfx/pokemon/annihilape/back.png b/gfx/pokemon/annihilape/back.png index c7216be8a6b643ae0f808a7c3d303e86af6d8dfa..6aa10fd6bcd9e646a9c85b4f6ccaf437108d5f28 100644 GIT binary patch delta 487 zcmVnGk;Zo;#a%{b86tN0&bl* zwF-{xLEO6Dxdy6yDW-krZh|4_>KItNs{c)q2*lg@${0z|4ZZ=>g7ZP4!XS2_38Bnk za4l*wxb1DR##g@u9h8qI=vnE3>TTHEpEt$)M5j1;b$Y);p6)G_e13g1D`SWRugpUQ>69ZnZd zg}%4@8R!aO#k$~fF4>f-ADG8{zt07F)<&H2&qoES)+HALJdwehAC~!&nR9{TMha=L z%!qu#?a>#_etwNx_@dioC8@~tNOS}&GchP4o(e1F@vm delta 289 zcmey$yn$(gL_G&H0|P_C9nP&liYLG)#P$FG|9hWv6i)&28G>?msskyOk|4iep!ok> z4Yx`lf2*g9V@SoVqgMj?nhkiEFRa-2f3EsM$AuPUMlIL$HR^a-GLBR;zj$`>?Bdz( z=Ks|W$es}OsGILBDbpk&F(HmiF<{s2mX70#owhaC3-XFhG(RN#Usj@E-sYc6bU8hC zGkuP#W81g(^piS^Z4VEs)~Ry!II?Jew4Lb~og_A+{XC=S3&s;QD=b(QADPIvJ{43= z_|L(*?Ru71N50ro#rG@2AO7R%ju2&E6|NG0Pi^zs_xl&@zA68Jxy^^~nZL(bTc8j4 gQX@Rme0>?Tq<|a_AO?X;!IMFhr>mdKI;Vst0D-h{aR2}S diff --git a/gfx/pokemon/annihilape/credit.txt b/gfx/pokemon/annihilape/credit.txt new file mode 100644 index 0000000..758278e --- /dev/null +++ b/gfx/pokemon/annihilape/credit.txt @@ -0,0 +1,4 @@ +Sprited by ShadowOne333. + +Taken from Johto Legends +https://github.com/aforward9600/JohtoLegends \ No newline at end of file diff --git a/gfx/pokemon/annihilape/front.png b/gfx/pokemon/annihilape/front.png index e0a9da9b43992ebb15c6f0ee1221e0d9e64105eb..b4bc3935074baca8dfeef5a996a569fa7555d1c4 100644 GIT binary patch literal 1080 zcmV-81jqY{P)$!nOYF~+1nG11*bmEa#{M33=9nkWCP-)a2M#AJ zFXhPuM-$(}VZc%~juITk6mdvdZoy_m)s~CcM2jRdSXK9)?9nPD+Lkx&abISY7*l%Z^NtCl z)zvfuY-&WVxScp#x=EZEgnSfT;j47%lFHcHxwG@)C2pikhk^g}^{3k-+U%t}iLtzQ zcbiZuwX(#Ey$`o#8u&+f4u1aXAp}8O$#ZPq{ZbFkkY;%!b+yK;d#6cu_A$^702&pE zUxU=38G8ve~D6HbBTTlEHavjt~S# z7zmEowZb`Khd<*Sv46GBIbx}Dj#v&kN9i(fj?%T^9N}ek%sFBw-{&1|F(nH}jC1Pf z$HEcgoI3iraKtz>M~B}Rj@H8tb95X%&K;?C>gbs}%^fLL=IGn+a!06dReN zUv3>$|KZ5`OK|k`^=G`Jy+_-;qbH99M^AP{M?3%N=$vb;&qlyI zI{XO)N56sK$P^u!|L*ABejY6yEgk*;jtuehNERHG_jS3W^1d#2RNmJWj`XFYrK6>z z_r;MoA6eXdq=08N7W0wpggtXHA34)*XfNg?fIeJu^HDc+`1z<0H~f4AjxZlVEX+ra yI3M-I`ABP=n0000~)o$APU*nop2@caMzJkhJBYWG+dh3uV@Y^1zl z@-&oTG=oY!Xz2?|zvP!aNouVXD;D(Z%HM_H}%`{$`dFR36K>440+ZUZy&p)Ai z==I09cKiST@U&rE`-`*qw{lc8&@X(c5uRzjz6@GGHU|)cz@^~HAj;F#&t;ucLK6U- C0e)Bj diff --git a/gfx/pokemon/annihilape/normal.pal b/gfx/pokemon/annihilape/normal.pal new file mode 100644 index 0000000..8795947 --- /dev/null +++ b/gfx/pokemon/annihilape/normal.pal @@ -0,0 +1,3 @@ + + RGB 17, 16, 17 + RGB 29, 00, 11 diff --git a/gfx/pokemon/annihilape/shiny.pal b/gfx/pokemon/annihilape/shiny.pal index 5c88669..b0721cc 100644 --- a/gfx/pokemon/annihilape/shiny.pal +++ b/gfx/pokemon/annihilape/shiny.pal @@ -1,2 +1,3 @@ - RGB 22, 22, 12 - RGB 07, 15, 25 \ No newline at end of file + + RGB 12, 08, 24 + RGB 31, 13, 00 diff --git a/gfx/pokemon/tangrowth/anim.asm b/gfx/pokemon/tangrowth/anim.asm index 875f7be..f083ff9 100644 --- a/gfx/pokemon/tangrowth/anim.asm +++ b/gfx/pokemon/tangrowth/anim.asm @@ -1 +1,15 @@ - endanim \ No newline at end of file + setrepeat 2 + frame 1, 04 + frame 2, 04 + frame 1, 04 + frame 0, 04 + dorepeat 1 + setrepeat 2 + frame 5, 04 + frame 0, 04 + dorepeat 7 + setrepeat 2 + frame 3, 04 + frame 4, 04 + dorepeat 11 + endanim diff --git a/gfx/pokemon/tangrowth/anim_idle.asm b/gfx/pokemon/tangrowth/anim_idle.asm index 875f7be..5227590 100644 --- a/gfx/pokemon/tangrowth/anim_idle.asm +++ b/gfx/pokemon/tangrowth/anim_idle.asm @@ -1 +1,5 @@ - endanim \ No newline at end of file + setrepeat 2 + frame 5, 08 + frame 0, 08 + dorepeat 1 + endanim diff --git a/gfx/pokemon/tangrowth/back.png b/gfx/pokemon/tangrowth/back.png index c7216be8a6b643ae0f808a7c3d303e86af6d8dfa..c7835c39189d6e98e2f2e8c40fa826a7371aafc1 100644 GIT binary patch delta 1134 zcmV-!1d;o&0{94!8Gi-<00374`G)`i1V2ecK~!i3?U+H56h{n2y9r+lBG@oqnG={Z zz)9c?_yqRKu(S_0>Y)vRgN!JYDSdr?WoFe3bG#qp@B@!0Kd|;i`p*Ww z_X++yf&cvpe7JjaI3ADdbMuDzjNW<-k$jr(|9tLMuVW04$Ff(%@9 zlw1jF_?XMu!8P#_r^TOGbFi6{{!8;+C%}v7G2b8F4h;{3U1yBqi*?u8;q)(y@elqX zXjzIiriH7Xrhl={UTgsIcOTx4ZT})%BE;B)g1jDLsuhRdMwz<_%&!?oj%b#k_>5Np zdkfdbTvux?{2S7QZNJ3JwfVgBDSXZT%E?UpHMG+!#O}KTop_2fw0ln?#hIf`zQk?K zr&q`qsft(dR&!ZUyuK8xue0V^r^Dczon#8*!x zam*2q$bUZnpsMj~!bZW=#?0SpqHQ1(a-PDs3Rl4j!Jiz7oAHsG8Zw9Z+5ZPFy}Tq@ ztnL`GZXnvHi^C@uR(`PL;iHLeoV^42=}h9fa~862N1j4vIBTTsxMseS26Fc^A;o8* znJ99_$$!I|G0VYkj#zWI?8!TjcMZ`JCV}KLA&Kqg$(eJposXDx^J9Yl>>bG6c2@xA znE4Ykn?I)USyR+FYXE09!8(WHA0s4r_RbZrtuOOQ100V>WdQ}d#(pdD)>3@cM*O4! z9Np-e=y132)mkaO+qkxYuG230YXw)a9iJHO=6_4f{Q@YsBi!rbCusfz-kS$5>*on{ z9PJ5Ik}h$t?@|*fHaXMpji|d1er>?ruOzvC?3^YPaSaDe@NA8>fi2KuV)aw(j@Cvl zT@h;ANd1HoJNZ=t$E^m!o*f>3rKTB9fi)wWaEEP>xIX4N@Y6(IrS(?{uTbvDj3`OB z=6`Z6;ztvEhYfc1iM0(t{$Dn+N4&xld#Q=_1ZocOp2GSL zxcd?S6pT$0F?+4K^3^=z)|g?)=`ihANFYg&D}eR2LviFKmz>7ab~V&g8(bR5-A|yT zm9Uc3_?~rF$9h_TIIRQF# zjHLGE#m~?(cZbqXTz~R{$zdJ&DmHn{!?&J-os8hJL)rmq*VQk6ug(0LV+>2o$7gl5 zXg@oF0UCJ^!yR<3)qkxuUrVjz(2pgimc-~=v2-yO>uxj8^+=fBU1Am6t@X*}`jQpj z)zLRNzKGYEmbuR*Y!}xjhur$HKE~44yo{0e2_z72+2~(76#xJL07*qoM6N<$g8zC* AI{*Lx delta 288 zcmeytv4LrVWIZzj14F_c&aFU-C%`Af_5c6>d!KU@PXY27f^v7N11Xl0AirRs`2SoD zw@M&?tEY=&NX4zAR|5H(4S1L@tl0N|uKGg9g%)K-E!Xrl>Udc)j#M+hcy{sZ;@R%z z|J4r2o)Gn@o9`?s(ROMK${>`dpIZ{~aXAn%=f?m6e) z-?{hPmp|Uhpuj2pTwGls27K;jcP_-#aoy0k3tT|s5D73ofu7$#UgaIGFC|MYINw?xvpRzRia7*hJ}dPLV9=24pz3c z22WLLbuy(Knd&PB4Kx&0zygFV;PE+3YBY<-r?Q!xXsTd5Uq)r~`FwV?g2&@=nKpzu6Z=KQp+@21lw~W zw~kHMS;ji66lP=FyRb}-)ibdi+Y*RENPnfZYgnC@?Plof34A-scK;6MZ;oMzLzF}t z%I?b6>&;HIsu-O?ra`=8!J2rx-EQ~$sv$mrkdB=IiRgbI6)q@)tTtun+SVV8V_^%FqhF$mHwNF=vvA0IGHjQQHbds zi@2lVe<^owR|WsIP1Nm)@_&&#`)+)-GIkX7*DI+Id!T?p6$TYSW~+YSV0o>rYt`8M zM`G19QE%%n;4#35&cwdkO&!&E(^^$J|+HLTPZVhL38M4{0SUPChE$z8-c$T)6P0|((kspv83YG}SR`=~^TBCJTsR=aB8iKb4^B(s!T})` zNnFHya9R=<4hXSG;v(jQ(~`JwK!`;W7cn24mc)evLM)QFi22~OBrY5fVv)o}%m=3> zap8avizF^$J~%Cj3kQT)Bykb*!D&fcI3UC#iHn#IPD|p#0U;JiT*Q2ES`rry2(d`w zBIbkBlDKd{h(!_?F&~_k#DxPwERwj0`QWr9E*ubIk;FyJ2d5=*;eZf}Brak;I4y|_ z2ZUH8aS`*uX-Ql-AjBexic3f{=2$OD2U5R^Iwg3^~j(DUEG^)3YI84z@DJ_NyAAm~HY#=o5Mhaji*Q+>Td zjaMGzPS-S1-t)U0S$Ns++4`?ivYR$6E>>48npEHOhdE*6vVIXwpR#Z`zt1lJeUtaL zz6`5cxG3$V*?Dfvz(p@we|hp`d|SQv)0b_75{5~u{(MaAI!4mC-17Y96RYyvY3mDX z59GNya@}H`kxH9cGB4SMFit?%K_l`As!+N(R$gQq=dPl`9r^;(uaMt^iFZFIF~g;!SCsU*R{iq;um*D+Sar(dm{$|e|@j<-WD|=>y&)gyK z*w%!sNpC&7X@*mHNoh>Lvp%J5tCn2Y9PZf=J6lpXVp)K(=$~*rE`pL4~^8^2qSwBjM@Wll4nV5yk!(kxyGr z!}jx*qQ%8+1y^K;vbTO(oZO?_G<=Ia*@;%3tT-1#8%XL|iUT)gcE4hU6{he&dgZ;mP5e%$OJg>MvBz((o)uXmi z`+NkCSBHFa-SUP11!>z_?x-6POYYX(o_P9h+Qm}!*kUK`F@BiYHMaQLCF#}-T1A?w z>h!eQLsf#wg=tr^M>R_>?kRCTH-vs+j56!%GZG6$^+R1maoM(cU&KZ4Z&nn2d~WsL z^|Qy9xs7aXPWx)}pYlRB&td(P!JC%4yl%se4{p}?6E&`8ft305s}sF-zI9%=zA%N?d5vCB-!FCEf=fQGbM#MzvCD2#&pk{$ zyrU)QabA3#;mOlViMgJ?YiUVQrTe0s+dHj0*WS9AJZbH!8=_^CZh|>vSUJuvws5xD zVbf}zQdzVx$S7?zNu52vJ!_ig1m@!sAbna2CfI6Dlj>uvm2z`^@#AnqiZlew;zyC> z8{ZGiA?Hk0X*M=1n^{JwsDNc~rV@)%LZZ<@=Vm^8f?nxAeF5$1bChduk(LcdIG5V)u0L9dVD|Wbssgbk%|`8~UqguJ*X;N}qlf)ZJlNk3sHs zWmI9=o9t{sy&KjGl=`n8<$Y!wE|$~Q+@nPso?B8cnSx_C)1Kx1NTN8K50eL)XY}+@*kX44Uc}=(~6F{EUABfqMWm literal 315 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sJOMr-uK)l4-}{`ScnXlu5R|)9 z9Z0d11o;I6#sBAOxK#rA2RvOILn>~)o$APU*nop2@caMzJkhJBYWG+dh3uV@Y^1zl z@-&oTG=oY!Xz2?|zvP!aNouVXD;D(Z%HM_H}%`{$`dFR36K>440+ZUZy&p)Ai z==I09cKiST@U&rE`-`*qw{lc8&@X(c5uRzjz6@GGHU|)cz@^~HAj;F#&t;ucLK6U- C0e)Bj diff --git a/gfx/pokemon/tangrowth/shiny.pal b/gfx/pokemon/tangrowth/shiny.pal index 5c88669..4a1bfc9 100644 --- a/gfx/pokemon/tangrowth/shiny.pal +++ b/gfx/pokemon/tangrowth/shiny.pal @@ -1,2 +1,3 @@ - RGB 22, 22, 12 - RGB 07, 15, 25 \ No newline at end of file + + RGB 31, 17, 16 + RGB 12, 27, 10 diff --git a/gfx/pokemon/ursaluna/anim.asm b/gfx/pokemon/ursaluna/anim.asm index 875f7be..8dd5d5d 100644 --- a/gfx/pokemon/ursaluna/anim.asm +++ b/gfx/pokemon/ursaluna/anim.asm @@ -1 +1,15 @@ - endanim \ No newline at end of file + setrepeat 2 + frame 0, 06 + frame 1, 06 + frame 2, 06 + frame 1, 06 + dorepeat 1 + frame 3, 06 + setrepeat 3 + frame 4, 05 + frame 5, 05 + frame 6, 05 + dorepeat 8 + frame 4, 05 + frame 3, 05 + endanim diff --git a/gfx/pokemon/ursaluna/anim_idle.asm b/gfx/pokemon/ursaluna/anim_idle.asm index 875f7be..aa5c7a2 100644 --- a/gfx/pokemon/ursaluna/anim_idle.asm +++ b/gfx/pokemon/ursaluna/anim_idle.asm @@ -1 +1,7 @@ - endanim \ No newline at end of file + setrepeat 2 + frame 0, 06 + frame 1, 06 + frame 2, 06 + frame 1, 06 + dorepeat 1 + endanim diff --git a/gfx/pokemon/ursaluna/back.png b/gfx/pokemon/ursaluna/back.png index c7216be8a6b643ae0f808a7c3d303e86af6d8dfa..60537622c306f2c9c49e9e9249bc6711e8ec78cd 100644 GIT binary patch delta 402 zcmV;D0d4-U0-yts7=Ho)0000u*}nP!00C!7L_t(|+Lh3;P69y?fZMxEIB+6H*7to6N2N=~WVu`-;+|s6eB^c0 zWE7VM{hA~cJcE(55ITMg3~;AS@KNL$cZw%{a9IPwr`G{+IcgH{umzAN)Ci-C-aRyE zWDy1}nkYh-(0}Rm03dG=-?pv^r-(yBjuPOA!HJ0op-DIz5lq4n;l(5yyqbhw7(WP| z>urEnB0f(NsN;bM-BbcKw#2jSCx9an||D01E&B07*qoM6N<$f==eGnE(I) delta 289 zcmZ3$yn$(gL_G&H0|P_C9nP&liYLG)#P$FG|9hWv6i)&28G>?msskyOk|4iep!ok> z4Yx`lf2*g9V@SoVqgMj?nhkiEFRa-2f3EsM$AuPUMlIL$HR^a-GLBR;zj$`>?Bdz( z=Ks|W$es}OsGILBDbpk&F(HmiF<{s2mX70#owhaC3-XFhG(RN#Usj@E-sYc6bU8hC zGkuP#W81g(^piS^Z4VEs)~Ry!II?Jew4Lb~og_A+{XC=S3&s;QD=b(QADPIvJ{43= z_|L(*?Ru71N50ro#rG@2AO7R%ju2&E6|NG0Pi^zs_xl&@zA68Jxy^^~nZL(bTc8j4 gQX@Rme0>?Tq<|a_AO?X;!IMFhr>mdKI;Vst03p9{8~^|S diff --git a/gfx/pokemon/ursaluna/credit.txt b/gfx/pokemon/ursaluna/credit.txt new file mode 100644 index 0000000..fe20b1e --- /dev/null +++ b/gfx/pokemon/ursaluna/credit.txt @@ -0,0 +1,4 @@ +Sprited by ShadowOne333, Cure, and Scarlax. + +Taken from Johto Legends +https://github.com/aforward9600/JohtoLegends \ No newline at end of file diff --git a/gfx/pokemon/ursaluna/front.png b/gfx/pokemon/ursaluna/front.png index e0a9da9b43992ebb15c6f0ee1221e0d9e64105eb..6ceb0182b532d1751e80a67d1b1144dfe755b6c5 100644 GIT binary patch literal 1325 zcmV+|1=9M7P)s00000d*EcE000E^Nklqv=AR)5&7lYNB7&7z!5qpa*0zS}j?X*)GE*r%cu~3oA$&8F zu-VLq--K9rnB-`iWgi4Tns32T*6ru!ad-~;lU{1afk4+oUQ!+Q!+zb%k`8fJfuxh> zst#FJ@^bUp;f;l?#zvi7P1X6fL342@>EPUT&da^5;N}TiV{B=CbHF)0n zQFT0tSF@+>+~W38P0v0m^77)g$Z4g1tRQmRInC<>pJ5*2UXHF2tJuT2s@Q#comezR z63}PoyJv|B8l)iSXLVcP6tThq;*w>R9^+MK-b9k3&gsn z=}HAy0@g`_OXq&iGG38^>|Q4-pX7#~Sp*ov5LA;%T@|%r`8uG-T*q5+SMC8{$@xPJbTT*G|5fF=`@Tdi#TwX8Ufu z1SoB|3ybez>%y`7I36eO%FQCk9W2lwH&n^-OmvParlljsVtO;j*MOx4t-5H;&FDtxtMRvVV2-<2oCEh*l^A@?K?7EcN{G^rS)L#%8#ZGx3*f2+trE5DAFsdoxte9X(}9Lk<~s*wF49QwQi!> ztTeqw5e_=CS*3CahXFbgtTYy_Xds~@CRk-bF;bwSqnKc&GhWp}II>x>HeO!o7Le2nY@>A2kR~4HIkrtiX zojd8=<<>8GUfZ!?9g%ewpkaP_^GqN+wr+hJxcHCJl>j=c@zpb}JwiuTPuNkr!+at%3w@0oc je~$u=aF1G!{^{s%vpiJQ(7fds00000NkvXXu0mjfsM3YD literal 315 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sJOMr-uK)l4-}{`ScnXlu5R|)9 z9Z0d11o;I6#sBAOxK#rA2RvOILn>~)o$APU*nop2@caMzJkhJBYWG+dh3uV@Y^1zl z@-&oTG=oY!Xz2?|zvP!aNouVXD;D(Z%HM_H}%`{$`dFR36K>440+ZUZy&p)Ai z==I09cKiST@U&rE`-`*qw{lc8&@X(c5uRzjz6@GGHU|)cz@^~HAj;F#&t;ucLK6U- C0e)Bj diff --git a/gfx/pokemon/ursaluna/normal.pal b/gfx/pokemon/ursaluna/normal.pal new file mode 100644 index 0000000..5a03e4d --- /dev/null +++ b/gfx/pokemon/ursaluna/normal.pal @@ -0,0 +1,3 @@ + + RGB 18, 16, 15 + RGB 09, 06, 06 diff --git a/gfx/pokemon/ursaluna/shiny.pal b/gfx/pokemon/ursaluna/shiny.pal index 5c88669..75a24c9 100644 --- a/gfx/pokemon/ursaluna/shiny.pal +++ b/gfx/pokemon/ursaluna/shiny.pal @@ -1,2 +1,3 @@ - RGB 22, 22, 12 - RGB 07, 15, 25 \ No newline at end of file + + RGB 19, 17, 15 + RGB 12, 04, 03 From 35c0bdf83abd0a21b2e870f559b2149538039315 Mon Sep 17 00:00:00 2001 From: Llinos Evans <36418502+PlagueVonKarma@users.noreply.github.com> Date: Sat, 11 Jan 2025 16:12:05 +0000 Subject: [PATCH 3/8] ShadowOne333/polishedcrystal sprites Alolan Dugtrio, Kleavor, Mr. Rime, Galarian Ponyta, Hisuian Sneasel, Galarian Weezing, and Galarian Zapdos. https://github.com/ShadowOne333/polishedcrystal/ --- README.md | 2 ++ gfx/pokemon/dugtrioa/anim.asm | 11 +++++++++++ gfx/pokemon/dugtrioa/anim_idle.asm | 6 ++++++ gfx/pokemon/dugtrioa/back.png | Bin 0 -> 390 bytes gfx/pokemon/dugtrioa/credit.txt | 3 +++ gfx/pokemon/dugtrioa/front.png | Bin 0 -> 1141 bytes gfx/pokemon/dugtrioa/normal.pal | 4 ++++ gfx/pokemon/dugtrioa/shiny.pal | 4 ++++ gfx/pokemon/kleavor/anim.asm | 17 +++++++++++++++++ gfx/pokemon/kleavor/anim_idle.asm | 6 ++++++ gfx/pokemon/kleavor/back.png | Bin 5181 -> 500 bytes gfx/pokemon/kleavor/credit.txt | 3 +++ gfx/pokemon/kleavor/front.png | Bin 16592 -> 1562 bytes gfx/pokemon/kleavor/normal.pal | 4 ++++ gfx/pokemon/kleavor/shiny.pal | 4 ++-- gfx/pokemon/mr__rime/anim.asm | 21 +++++++++++++++++++++ gfx/pokemon/mr__rime/anim_idle.asm | 5 +++++ gfx/pokemon/mr__rime/back.png | Bin 0 -> 387 bytes gfx/pokemon/mr__rime/credit.txt | 3 +++ gfx/pokemon/mr__rime/front.png | Bin 0 -> 1389 bytes gfx/pokemon/mr__rime/normal.pal | 4 ++++ gfx/pokemon/mr__rime/shiny.pal | 4 ++++ gfx/pokemon/ponytag/anim.asm | 9 +++++++++ gfx/pokemon/ponytag/anim_idle.asm | 4 ++++ gfx/pokemon/ponytag/back.png | Bin 0 -> 479 bytes gfx/pokemon/ponytag/credit.txt | 3 +++ gfx/pokemon/ponytag/front.png | Bin 0 -> 1440 bytes gfx/pokemon/ponytag/normal.pal | 4 ++++ gfx/pokemon/ponytag/shiny.pal | 4 ++++ gfx/pokemon/sneaselh/anim.asm | 16 ++++++++++++++++ gfx/pokemon/sneaselh/anim_idle.asm | 9 +++++++++ gfx/pokemon/sneaselh/back.png | Bin 0 -> 439 bytes gfx/pokemon/sneaselh/credit.txt | 3 +++ gfx/pokemon/sneaselh/front.png | Bin 0 -> 865 bytes gfx/pokemon/sneaselh/normal.pal | 4 ++++ gfx/pokemon/sneaselh/shiny.pal | 4 ++++ gfx/pokemon/sneasler/anim.asm | 18 ++++++++++++++++++ gfx/pokemon/sneasler/anim_idle.asm | 7 +++++++ gfx/pokemon/sneasler/back.png | Bin 0 -> 422 bytes gfx/pokemon/sneasler/credit.txt | 3 +++ gfx/pokemon/sneasler/front.png | Bin 0 -> 1149 bytes gfx/pokemon/sneasler/normal.pal | 4 ++++ gfx/pokemon/sneasler/shiny.pal | 4 ++++ gfx/pokemon/tangrowth/credit.txt | 3 ++- gfx/pokemon/weezingg/anim.asm | 9 +++++++++ gfx/pokemon/weezingg/anim_idle.asm | 5 +++++ gfx/pokemon/weezingg/back.png | Bin 0 -> 434 bytes gfx/pokemon/weezingg/credit.txt | 3 +++ gfx/pokemon/weezingg/front.png | Bin 0 -> 2299 bytes gfx/pokemon/weezingg/normal.pal | 4 ++++ gfx/pokemon/weezingg/shiny.pal | 4 ++++ gfx/pokemon/zapdosg/anim.asm | 11 +++++++++++ gfx/pokemon/zapdosg/anim_idle.asm | 5 +++++ gfx/pokemon/zapdosg/back.png | Bin 0 -> 420 bytes gfx/pokemon/zapdosg/credit.txt | 3 +++ gfx/pokemon/zapdosg/front.png | Bin 0 -> 1281 bytes gfx/pokemon/zapdosg/normal.pal | 4 ++++ gfx/pokemon/zapdosg/shiny.pal | 4 ++++ 58 files changed, 249 insertions(+), 3 deletions(-) create mode 100644 gfx/pokemon/dugtrioa/anim.asm create mode 100644 gfx/pokemon/dugtrioa/anim_idle.asm create mode 100644 gfx/pokemon/dugtrioa/back.png create mode 100644 gfx/pokemon/dugtrioa/credit.txt create mode 100644 gfx/pokemon/dugtrioa/front.png create mode 100644 gfx/pokemon/dugtrioa/normal.pal create mode 100644 gfx/pokemon/dugtrioa/shiny.pal create mode 100644 gfx/pokemon/kleavor/credit.txt create mode 100644 gfx/pokemon/kleavor/normal.pal create mode 100644 gfx/pokemon/mr__rime/anim.asm create mode 100644 gfx/pokemon/mr__rime/anim_idle.asm create mode 100644 gfx/pokemon/mr__rime/back.png create mode 100644 gfx/pokemon/mr__rime/credit.txt create mode 100644 gfx/pokemon/mr__rime/front.png create mode 100644 gfx/pokemon/mr__rime/normal.pal create mode 100644 gfx/pokemon/mr__rime/shiny.pal create mode 100644 gfx/pokemon/ponytag/anim.asm create mode 100644 gfx/pokemon/ponytag/anim_idle.asm create mode 100644 gfx/pokemon/ponytag/back.png create mode 100644 gfx/pokemon/ponytag/credit.txt create mode 100644 gfx/pokemon/ponytag/front.png create mode 100644 gfx/pokemon/ponytag/normal.pal create mode 100644 gfx/pokemon/ponytag/shiny.pal create mode 100644 gfx/pokemon/sneaselh/anim.asm create mode 100644 gfx/pokemon/sneaselh/anim_idle.asm create mode 100644 gfx/pokemon/sneaselh/back.png create mode 100644 gfx/pokemon/sneaselh/credit.txt create mode 100644 gfx/pokemon/sneaselh/front.png create mode 100644 gfx/pokemon/sneaselh/normal.pal create mode 100644 gfx/pokemon/sneaselh/shiny.pal create mode 100644 gfx/pokemon/sneasler/anim.asm create mode 100644 gfx/pokemon/sneasler/anim_idle.asm create mode 100644 gfx/pokemon/sneasler/back.png create mode 100644 gfx/pokemon/sneasler/credit.txt create mode 100644 gfx/pokemon/sneasler/front.png create mode 100644 gfx/pokemon/sneasler/normal.pal create mode 100644 gfx/pokemon/sneasler/shiny.pal create mode 100644 gfx/pokemon/weezingg/anim.asm create mode 100644 gfx/pokemon/weezingg/anim_idle.asm create mode 100644 gfx/pokemon/weezingg/back.png create mode 100644 gfx/pokemon/weezingg/credit.txt create mode 100644 gfx/pokemon/weezingg/front.png create mode 100644 gfx/pokemon/weezingg/normal.pal create mode 100644 gfx/pokemon/weezingg/shiny.pal create mode 100644 gfx/pokemon/zapdosg/anim.asm create mode 100644 gfx/pokemon/zapdosg/anim_idle.asm create mode 100644 gfx/pokemon/zapdosg/back.png create mode 100644 gfx/pokemon/zapdosg/credit.txt create mode 100644 gfx/pokemon/zapdosg/front.png create mode 100644 gfx/pokemon/zapdosg/normal.pal create mode 100644 gfx/pokemon/zapdosg/shiny.pal diff --git a/README.md b/README.md index e06ba86..f4d3ccd 100644 --- a/README.md +++ b/README.md @@ -151,6 +151,7 @@ JEP-affiliated spriters require sprites to be used with direct credit for non-co - LadyMisticus: Sprite edits of Imposter Oak, Archer, Ariana, Prof.Blue, Giovanni (both), Green; Cal, Blaine (original) ### Unaffiliated +Many sprites in this hack are taken from different artists and ROM Hacks, aggressively curated and sometimes even edited and worked upon by JEP developers. The grand aim was to get a consistent GSC artstyle. - [nuuk](https://x.com/nuukiie): Azurill, Electivire, Farigiraf, Glaceon, Honchkrow, Leafeon, Magmortar, Magnezone, Mamoswine, Porygon-Z, Sylveon, Wyrdeer, Clodsire (back) - Scarlax, Pix, BloodlessNX, Kam, Poket, BimbelyGimbly: Animated sprites from [Pokemon October](https://github.com/pokeachromicdevs/pokeoctober): Bellignan, Caretorker (Adbarstork), Inoshika (Aggroswine), Bipulla, Sonegg (Clefling), Kolta (Coalta), Coinpur, Dodaerie, Bundra (Germifrost), Kiwooked (Kiwacki), Eucala (Koalyptus), Trebir, Burgela, Gorotora, Pockle (Shuqlour, edited by Martha), Moibelle, Molambino, Dokuroar (Necrorex), Orfry, Smujj, Stricheel, SW99 Feraligatr (edited by Plague von Karma), Belledam, Feradactyl (Gargranite) - Gorotora is edited from RacieBeep's Yellow sprite in the Helix Chamber PokeThon ROM Hack. A full list of Helix Chamber sprites are available [here](https://cdn.discordapp.com/attachments/1014321591657709569/1015347305483878521/unknown.png). Helix Chamber spriters have a "must credit" policy. @@ -162,6 +163,7 @@ JEP-affiliated spriters require sprites to be used with direct credit for non-co - Seasick: Kris running sprite - Pigu-A, RevoSucks, walle303 - Contributors to Pokemon Anniversary Red's repository, where we reused the Green/FeMC sprites. - ShadowOne333: Annihilape and Ursaluna sprites used in [JohtoLegends](https://github.com/aforward9600/JohtoLegends) +- [ShadowOne333 & Rangi/polishedcrystal](https://github.com/ShadowOne333/polishedcrystal/): Alolan Dugtrio, Kleavor, Mr. Rime, Galarian Ponyta, Hisuian Sneasel, Galarian Weezing, and Galarian Zapdos. ShadowOne333's repository contained animations for some Pokemon that the [mother branch](https://github.com/Rangi42/polishedcrystal] did not. ## Music Credits diff --git a/gfx/pokemon/dugtrioa/anim.asm b/gfx/pokemon/dugtrioa/anim.asm new file mode 100644 index 0000000..46a586d --- /dev/null +++ b/gfx/pokemon/dugtrioa/anim.asm @@ -0,0 +1,11 @@ + frame 0, 12 + frame 1, 06 + setrepeat 3 + frame 2, 12 + frame 3, 12 + dorepeat 3 + frame 0, 12 + frame 4, 5 + frame 5, 5 + frame 6, 5 + endanim diff --git a/gfx/pokemon/dugtrioa/anim_idle.asm b/gfx/pokemon/dugtrioa/anim_idle.asm new file mode 100644 index 0000000..31e9051 --- /dev/null +++ b/gfx/pokemon/dugtrioa/anim_idle.asm @@ -0,0 +1,6 @@ + frame 0, 12 + setrepeat 2 + frame 1, 05 + frame 0, 05 + dorepeat 2 + endanim diff --git a/gfx/pokemon/dugtrioa/back.png b/gfx/pokemon/dugtrioa/back.png new file mode 100644 index 0000000000000000000000000000000000000000..f8a6c9a6011ae67860807b56998b183741a382e8 GIT binary patch literal 390 zcmV;10eSw3P)>ndEA8YPbkN-;5fZ^Vlt3Op6fVWZM+n79msFhMqF4#(8GL|d(4mup zA5YM|Lly&q#$M0KO>7^)EXgnbo11e%tz7W`$e^)A7jOQMEf5an9vIolNbK*9i z0+jhp&tXTGP5xGPijpT2F6Twb)1q{jWlSaFazC$%2{~`9%a#VpU3#$rnJ#Bnk*vd8 zSq_Y$3sYSNMyqDQ4kNBx*4~AH8cl^pQ;4?bK+En!-*aro73&~`;Tos00000d*EcE000C$NklltJqKDZnXZ{qnVu*&+)_?n3ME791M3fHILwhXLspZcrO1OyZaHtM z9D?+8aA~20q(mXp;ik>fE=LRDy!e#h9Ldli>)xl&s~?WMmRu>VynQ42m0t0F^4bO( zd%^Xmk9sDBN4-oAiTas5BMS7Z+=CgB$#2mX)+j|6oxQ6JRYZMvl*97!Gi{)!`O;aQ zvxZihPi2auG#4B|i+1A_j$^y3MT0np1nn1`L7W}(7vxb9CI2xn0h<&?$+s_T9#Z)>M|Qe;hS6aPiVk7B(+UDp99Qz+kEmcM4SAE z=i7sRnmbLt)m@cOzBot6^EDz=O$+F(i>S$m?wfX7=CdCx`H%zKc_ef03$1??-6_BK zD9H<+Hjk{CFs=1;o{v-D>@MJXxmT1aC;0Mdux|Ed0pg@COxeBnzj>JCG@`TdwX>{8 z8FFqZG8;PQK4)uvL%|Q<{giXIidbJVHet!3{-+pGy@eRZ9jyZI<&-L#dRilSV}`{Q9F-GFDdgbk%)el#IjC zQlSv;tmxU*9v;0WIR6euoLNVR_`h|;Q_ni$qu1$3MJMZsA9U{Mb)*<`L?>g8LT}8` z#kixx8Ol03uqoq+rX5c_x=Ix_+Ri3Z7&!`Ys!dmpLcliB=;55ZylSQCDEoyMGEd_S z_WIG$Ku;VY@FFI0CR518%Ik>edzn1KjveJ`!fL>d%0$~q4pGHLPxMBtOn1FQ?I;@> zv)X!aGjt+lYLf=+sJtho2!IlN$wo0scJ!RDC)#p?!~F@zww&NsI4uwiP z_%d4Wm3bNGiFBl; z%6NBWM^>sVcEsC}(61cXX?7w<8(xy}_T=6^i&A)vj&xMH$#aSvmDy2+9Z3s8h$cJI z{k2mk-H&2Nw(D$RAw0Ljm9a&J!?@--K+Ms8TmxK8sB&@{bGK^${@pg!l;?@|6%L@E!;P z_K9%d=l7N!u)z9BJn)q6~V+8;DM;b7vR2*h;ni4#DD!fJP1yxDqnBJT~=Vc zY5`BZin~Kal7JGyjaI>=8<2|$rVaQ6$)p@`Vgh*MR2&+JHcbRt7Se_^O zFoaqZK`_wAP=Ct80U(iiDZA?Np47SMjN4x+V>PQjEyElFsxVZCjM!yMD^E=#wues3 z_Ls;V(7rp5S@0uruh_yzLRSpZ>*HrIA1O2jT>9b%AD5%Ouu31klMn_0mGib5?{g@px)X@WEFc3U50CK`t@?- zELm&YA+$Pgz7?SI(3Rl<$fVMt;|@3ynr`!QFOeKv6Co6%es4C-Lg>D90y!C@-Zpal c+mfgJ0bBYAck>~|?*IS*07*qoM6N<$f~Zy9i~s-t literal 5181 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 diff --git a/gfx/pokemon/kleavor/credit.txt b/gfx/pokemon/kleavor/credit.txt new file mode 100644 index 0000000..e398142 --- /dev/null +++ b/gfx/pokemon/kleavor/credit.txt @@ -0,0 +1,3 @@ +Taken from ShadowOne333's fork of PolishedCrystal. + +https://github.com/ShadowOne333/polishedcrystal/blob/master/gfx/pokemon/zapdos_galarian/front.png \ No newline at end of file diff --git a/gfx/pokemon/kleavor/front.png b/gfx/pokemon/kleavor/front.png index c93f781179adcd9cce2f2fc44b51faf5ac9c97f0..5c138bafd137b4a99c8c67fa0531f53d4b5a4f6c 100644 GIT binary patch literal 1562 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 VcOPk+B{Kj3002ovPDHLkV1gi}+|mF5 literal 0 HcmV?d00001 diff --git a/gfx/pokemon/ponytag/credit.txt b/gfx/pokemon/ponytag/credit.txt new file mode 100644 index 0000000..e398142 --- /dev/null +++ b/gfx/pokemon/ponytag/credit.txt @@ -0,0 +1,3 @@ +Taken from ShadowOne333's fork of PolishedCrystal. + +https://github.com/ShadowOne333/polishedcrystal/blob/master/gfx/pokemon/zapdos_galarian/front.png \ No newline at end of file diff --git a/gfx/pokemon/ponytag/front.png b/gfx/pokemon/ponytag/front.png new file mode 100644 index 0000000000000000000000000000000000000000..814d33aa824c808e430682bb6c183ee28afcdb65 GIT binary patch literal 1440 zcmV;R1z-A!P)4^wmcBMZdH(N z%stuDQE|g8b5;y!X&s5iP)M~`r=i1Mpx!u564)NN690k_ zd(aj!uGgIrtB?T_h*)DO5^dW~+G5V&>CX643V3t82O!4VL@JsiUP(&90A4qWjX|~% zC=BC`hl+qC5=qeWqre+?i`E>R1!;N(@2n(vv;)7-HF@|H2gDu1! zlM^^U5g_}}^%mKy*8%E5l0l^au^x^3!dJ$qBsQ9(UjBA7nmQWI7(X}Ea%LlH!rSM} z-^!P>In>;hHNFGkkiV@j%L zF_P83Sg9v;T~s2*zl72|!JhJQx!riYz|oF)xDwooY!nLF+lteIJv7o+jZ@AVS~v=U zn8O8j^DxV~Bh14MHV}pa?-KiWdP_X!4fKr9Tet3cgSDQwevqH!4L{}$`@IeOy=9-O zw@19s+d|Xlt>O39EwA&u@pQN6t#@&~&)dXvh-O* zilx{Fl5)mQvOh@dyF+w|>_6e+TZ+uCA}&kQ+X1o%GjHvcwg~ek#;-=0H+go8==E(Y zhnY9Hx*C`_k;;^LlR>7gx0uvTnYTe$OOfl%yvva5ZSWL8nRz<{FvGmvr?SYrP4XBs zZ~8p?zi&_I+aLCpta#o+t)#%lWtgkE-ZtG*6oq+99R-DXdqaSS%v=8{sO6bA@I4*+V_1ljb~9f$}BgxVp~TX%~WPzx$KN$(o& zsvZ!K0>|W1Z|Hi%^rmV0ag$33(wIO+ZQyV)3-CezVYqTUf+1|_f4C(`X*0VeLHORjdqxQ`z~+w4KIhGV~5i>sP2Vjw{M_a zfuCJ(6L(=uW!}c%?wP08xBuLE`jXkVADq6WkPPXR(>K#w?Y7;w!~pt5fqRy>j;e+l zV{p&%)-`SnfSm2Eanu-(sO3%6(#9(T)ajdo)I3Ob-}D-i7r^oMtAI49JAJz};_I8~ zt-k1Zd&}qT?2o?lwEZXFd73zEdu!6JlU#MhK2N7|p&3zW*ym|yuKbzYZhPza;6kNy u+&xc|_gcr;d78dbW!}PXLg2`s=-Y2{%20LD(w5W!0000;nm za12QQf;I&a2|n-T^_OqD54m^mOOEli!~Vlm)}T+WR>%dz6`q<+Wr>#$FqW7BfWAOP zDD#Of-%$aoJhUZz0Fy_a#8h00P>&H&-#*vcGTRW~h-%sH zAx$7W-*plLoWnmn+xjK6;{>WP_#xOb&K{>4T@myIGLHhDz(su|YD@|AT`fjSXZ#Co ziCaR5iiEO`wnFf93AfDncmeyB@sY>n=!ZFa0{wD~(76@~Xxa$%FrTMu7GaF-h%v`; zEQ<4;>2ixD@+>Q|y<_r|(HRIdup{bh{Nn=+48{_23(Z|98p-*#b8qRi+!vuxov5{V zUo1+hW(1e_Wr0~kHK#SCeG#UC4?CxrK9Ad)2arLp6)!6aDunz7-iT?13Y0u+Q|oRM hd=pANrjO7X`~l{De8;+>Ne2J`002ovPDHLkV1f^;yJG+V literal 0 HcmV?d00001 diff --git a/gfx/pokemon/sneaselh/credit.txt b/gfx/pokemon/sneaselh/credit.txt new file mode 100644 index 0000000..e398142 --- /dev/null +++ b/gfx/pokemon/sneaselh/credit.txt @@ -0,0 +1,3 @@ +Taken from ShadowOne333's fork of PolishedCrystal. + +https://github.com/ShadowOne333/polishedcrystal/blob/master/gfx/pokemon/zapdos_galarian/front.png \ No newline at end of file diff --git a/gfx/pokemon/sneaselh/front.png b/gfx/pokemon/sneaselh/front.png new file mode 100644 index 0000000000000000000000000000000000000000..ec936b49f858c612167b4aa681fe452985ff0677 GIT binary patch literal 865 zcmV-n1D^beP)3AA68;H=vK99J*0` z;Jo;w$jJW7_TbjAu{sL`|88yWD&8=1xj3UmkrULLmgEXTUc6rg$2$He);foHj{GNcmcMGH?W4KSd z$D}O7C!2c*R(v_nde0u8C?#1y4>UG+QV-DNfB^C2{al57hlDRZI za*LHv64r>T*5Hhgwxc2-<~md_WBNmbGy{1*`~*O|b#W0dqHbdRMBX+J?1yA>Ctk#J zYp}88K1R_8)D}IubkvAqNXH?4xlf8=jIaA`>Kqd+f{~t2sdEDoBm%z{p&1R>6f0{t zhm-;g%`i;Vr?gWrY!RM`s+9H^(8JJ~TXMvPRmx%1djT5byevN2)0)$q_fd2|0}D+h z!OB5bTzMyU&~_0IPlWOPNbGQ*#@qN-ob`|1$(YI(#huLRIeV_q`ce zZ?n0#|JEC&sW<4cxwK;0b!Rkf!~dW$bK^(Ky~Oyu7F zowrx1x5kLh6K^^uDE0z%1QaaSbfJ z*)@H|-7&UgENKr89qElvzVX_Jj`YS)dncvhyv( rm&~^ipYkU0srj~+oo~e}H{X5$>nd~z100000NkvXXu0mjffqJF< literal 0 HcmV?d00001 diff --git a/gfx/pokemon/sneaselh/normal.pal b/gfx/pokemon/sneaselh/normal.pal new file mode 100644 index 0000000..d02b3fc --- /dev/null +++ b/gfx/pokemon/sneaselh/normal.pal @@ -0,0 +1,4 @@ + + RGB 21, 22, 23 + RGB 15, 13, 20 + diff --git a/gfx/pokemon/sneaselh/shiny.pal b/gfx/pokemon/sneaselh/shiny.pal new file mode 100644 index 0000000..fe1489b --- /dev/null +++ b/gfx/pokemon/sneaselh/shiny.pal @@ -0,0 +1,4 @@ + + RGB 14, 16, 17 + RGB 28, 24, 10 + diff --git a/gfx/pokemon/sneasler/anim.asm b/gfx/pokemon/sneasler/anim.asm new file mode 100644 index 0000000..e6f40b6 --- /dev/null +++ b/gfx/pokemon/sneasler/anim.asm @@ -0,0 +1,18 @@ + frame 0, 08 + frame 1, 07 + frame 2, 07 + frame 3, 07 + frame 4, 07 + frame 1, 07 + frame 5, 07 + frame 1, 07 + frame 6, 07 + frame 7, 07 + frame 8, 07 + frame 9, 07 + frame 10, 07 + frame 11, 07 + frame 12, 07 + frame 13, 07 + frame 6, 07 + endanim diff --git a/gfx/pokemon/sneasler/anim_idle.asm b/gfx/pokemon/sneasler/anim_idle.asm new file mode 100644 index 0000000..ab1cf5f --- /dev/null +++ b/gfx/pokemon/sneasler/anim_idle.asm @@ -0,0 +1,7 @@ + setrepeat 2 + frame 0, 08 + frame 1, 05 + frame 5, 05 + frame 1, 05 + dorepeat 1 + endanim diff --git a/gfx/pokemon/sneasler/back.png b/gfx/pokemon/sneasler/back.png new file mode 100644 index 0000000000000000000000000000000000000000..b1fb2679cf44c369a9e5078b72a8a301eca5ee8c GIT binary patch literal 422 zcmV;X0a^ZuP)tFCyuttrC(i|YHa4P(b^~rbLRVOg z3sUl&DHMs$?#sOS-^@Jl!239rR`UfS2=~c%_u!F7y35%*}>YoV)TqII53&U!(e3es@T{Zx#OlKYK0v1#p)%G zTnAl*ZfBa1Y>}`ts6*N4*>YiJqvsdo%d{=~0riS^F9?d8 QDgXcg07*qoM6N<$f(X^Y*#H0l literal 0 HcmV?d00001 diff --git a/gfx/pokemon/sneasler/credit.txt b/gfx/pokemon/sneasler/credit.txt new file mode 100644 index 0000000..e398142 --- /dev/null +++ b/gfx/pokemon/sneasler/credit.txt @@ -0,0 +1,3 @@ +Taken from ShadowOne333's fork of PolishedCrystal. + +https://github.com/ShadowOne333/polishedcrystal/blob/master/gfx/pokemon/zapdos_galarian/front.png \ No newline at end of file diff --git a/gfx/pokemon/sneasler/front.png b/gfx/pokemon/sneasler/front.png new file mode 100644 index 0000000000000000000000000000000000000000..4adca14a7f32ed2c37013730654e9824445b7468 GIT binary patch literal 1149 zcmV-@1cLjCP)^Jc9`U zXzb?+S!C}(0Q__Ic}A2d&c1gEke0d_#fb)Udt^Qv#Ur@1PL<>izk0>1gnAf8Cu*~CGHvIB-|1I`qaFrms*1K=+lz`nFPL#W|`yRXMM{&4m zWv?gE{oQJumXbJCta_b|>YL$2hqWztFiN6jwekmR;8%kP#aeay?LWZZ3gfVGqd|Ly z7e&8V%fC^AIKnZRv_CVvdK6D-g+2619M|}YwG$(XKlL8b-k<Y zFX(kGitc!2{9(C!pG7~sJpQWkfJe{ZH*Xu4Fi5L3+0ty`M$;OSt^>geLq+r zU*j@SG7sYQf^Rnp@6c=#X>McmcPEWUhM!rA+-C9h-8lZd^EsRU z{dyEX*>3UQdK`;Z3p`biqh8G!?(B3SjDCIHGo15&A&lPI`JZ)nG&hQ_u8!smSf9m@ zak>uSi@d0griaXtoj7u>JG(onlv!@m`ly>a8d_FXa5TqQVMnHPBppddFy)TYdNj2* zt#%sSL(3AcDl8&Ln;*PXjsQCf|8f#XK};P5_oj|~o&-nQ@oR!3r$MOT$jRNx3yvIu z9C^138Nrc1Zz4y!eoJ(u*NEuIF&9KfZncga6%6EPBpu0mboGw>)De%P)Da)p5b6=Y zuaG)o%F36M)DcrAI0}?~lQ;^LX^A7Q%uXF~W&467rpyo=F=e77u1s*mm5GkHGQrVE zI+Fd7tVgmQ$$j0`IMR?K{%C?DZvi>-ROHB0aDSxY{%9WcN1&tr2z2C#NkRRQQ$vni z6ZJ>FiTWcb;{NDZ_D8Q+Jz7PM3d&v4(anKlqUcCXS#d`l zqHCxg-6mo^x~brLbcXBE6C&%8bo8p!BXSSz>l6*`>(mY8NYT;0&NT1geVrjX@)K5} zBU3|;&aNRxZWcMZP@csRdA|Orh5Mr>?vL`aKa!4Qf0Q_iX+(~^4SZg=fzRvePd%?Q zQMqmI+Bj$dEE=qAMImD3)qo{9f5RoMUMUjG%J61NZQZ+ P00000NkvXXu0mjfHZLvp literal 0 HcmV?d00001 diff --git a/gfx/pokemon/sneasler/normal.pal b/gfx/pokemon/sneasler/normal.pal new file mode 100644 index 0000000..d02b3fc --- /dev/null +++ b/gfx/pokemon/sneasler/normal.pal @@ -0,0 +1,4 @@ + + RGB 21, 22, 23 + RGB 15, 13, 20 + diff --git a/gfx/pokemon/sneasler/shiny.pal b/gfx/pokemon/sneasler/shiny.pal new file mode 100644 index 0000000..bedff8e --- /dev/null +++ b/gfx/pokemon/sneasler/shiny.pal @@ -0,0 +1,4 @@ + + RGB 12, 10, 11 + RGB 26, 25, 18 + diff --git a/gfx/pokemon/tangrowth/credit.txt b/gfx/pokemon/tangrowth/credit.txt index 2a774b2..3dc1da2 100644 --- a/gfx/pokemon/tangrowth/credit.txt +++ b/gfx/pokemon/tangrowth/credit.txt @@ -1,4 +1,5 @@ -Taken from JohtoLegends +Taken from JohtoLegends, ultimately from PolishedCrystal https://github.com/aforward9600/JohtoLegends +https://github.com/Rangi42/polishedcrystal Artist is uncredited. \ No newline at end of file diff --git a/gfx/pokemon/weezingg/anim.asm b/gfx/pokemon/weezingg/anim.asm new file mode 100644 index 0000000..6c1a5a8 --- /dev/null +++ b/gfx/pokemon/weezingg/anim.asm @@ -0,0 +1,9 @@ + frame 0, 8 + frame 1, 18 + frame 2, 18 + frame 3, 18 + frame 4, 12 + frame 5, 12 + frame 6, 12 + frame 7, 12 + endanim diff --git a/gfx/pokemon/weezingg/anim_idle.asm b/gfx/pokemon/weezingg/anim_idle.asm new file mode 100644 index 0000000..e1662b9 --- /dev/null +++ b/gfx/pokemon/weezingg/anim_idle.asm @@ -0,0 +1,5 @@ + frame 0, 12 + frame 8, 12 + frame 0, 12 + frame 9, 12 + endanim diff --git a/gfx/pokemon/weezingg/back.png b/gfx/pokemon/weezingg/back.png new file mode 100644 index 0000000000000000000000000000000000000000..05650383a1830739ff39761ca31905f7aee58699 GIT binary patch literal 434 zcmV;j0ZsmiP){nJ(2Q}3=ojP&XcQ5(ktIXeCLz(7 zfkzRnRqI=dIn1P$A%az}rQvPokl1yicZGEX17Q#?7_}Kef9z>k{N~B^yBa)BZz-xd z1`onXvByX%d@%SC!RnO@G9-)G%klLc`<6mQU2e1V1;ekVXxrj61D#>5p5sK6S~=_* zDs)qnUA$$atJ(yp;Au2>Ko^KNj7Z^kiXNjDCaSE1E^pM7GGbtc5a>h0O4NG$DDa#w z`l6QjsNs|jB1kfnO-dn_i2H$tCt`*$xvVeBXd@cF8N#X`pz8y;jRJrA`MT3ozo%Fj z@}P&)3Fi&(PO8~DXkbt@6ejmE3gD(IE^}SfQ69n%X3;o?&;QiGQWXX|_l0OUAhVVd c?7#!(5BxGFWcujwG5`Po07*qoM6N<$g1tt-T>t<8 literal 0 HcmV?d00001 diff --git a/gfx/pokemon/weezingg/credit.txt b/gfx/pokemon/weezingg/credit.txt new file mode 100644 index 0000000..dda122c --- /dev/null +++ b/gfx/pokemon/weezingg/credit.txt @@ -0,0 +1,3 @@ +Taken from ShadowOne333's fork of PolishedCrystal. + +https://github.com/ShadowOne333/polishedcrystal/ \ No newline at end of file diff --git a/gfx/pokemon/weezingg/front.png b/gfx/pokemon/weezingg/front.png new file mode 100644 index 0000000000000000000000000000000000000000..41b2d11d88cd899373e6ad8e2016d488d98f2a6c GIT binary patch literal 2299 zcmV{ACmry7% zYTXzIQ%Ln76Y0saD_8eh*d-5nxiwmuO6^NZEQp%Y_kz1uZgtp(vO4Yb_nY0@-63*_ z8^_p1dXc`&Y4&b!KKJ|0924PBUM!eAa)I3GuVKf7_UYn9pV6=Ur*m;o7wCP^7!@6z6)`^=?M-FB@DhZaL+@ z@}qykxVFJLUTHw%l|GE^yPV_Hg_A6!Q+$*2O7Ykl7hH3h=$ysK_HS~|8DRV|#tN(E zbhZbhC~~g#vYf`)s|FKWcww!NeX}||d$q+xi!R)kIjh0!Rh-$N3-ipIH7K0MXs+Xh zt8DT#Me>R82d8w=KyG`+f|G@>$%K&WTbgD z*1xo-Jx?!TjMI~T8W`J$@djrZo*6n`f~99MexC+&{FRI0+8CfG&w2L10WdHY7-Kp9 z1bgzG9+P5$R|Se6~NF^=$@{`!WFcfUe6_U73!ot_8dLlp1a9nx}KuQ0lw_?-1Y z?Yk_qpY`pPv9hg~%bO#N<>iXauW?P>=-o^2BgVc0-r*-M%O!wuq0Tv6St<&bq6HTh zC(gm;vY_RSi~M^4zk_%30_a&8aHIr-?A!TpwAI4bz&2S?G--6pX8HUITbUMtM>Bgj z&#+A7CxSzET-4KzZeZZev1J5Pz_N+ar09aN433S_kjelWV4)*}MqNxkTqj2~3XPWG zoBu{f1}>F9!v%;OnK*hFes4IA5a`Io_56<$`Wumj2CnCq=gz+rMRe3IOpX)2xya-H^f-kV$zc_-o-;QY9sp`+{kKkbJXnQm{brcIc!(WY~ zpr!D-5M4*TxK54#2jxcT?Qyht^;z+2D#AD{jcN9mip*V6)#Sx9B9QiHPk^LEtgzAW5%8?vR z9LdqdksM7Ng){H$NchW;MBnopSQo-t1$N6qB9Suu!>~|~AtRO~3kV%V=)i+k5{<^P zREBYt<)LM4kunqG0N3zegHE06cyl^`pYQvX?TBEJA8)wm2&AK6PR|+**8V!o$QSdS z&{63d3u#BEeux>D;1C;&>rsv~mWk^TUQ}Z|u1ClSr-~gd-nXMn%F$4zz!OI}wO&aat+14% zz)2_xYSm0T(nB93;DSrZ0dnLUM#IF%Z((W~%tbX=0EKVRAB^;1c@%EwNJi`x;n&#p zQJj|#{ts0vjPrH*VCwqN(E>n;MyXn%Blmnsjs^ui>-g;Adv6?Q;#8uJ>)B)H>r3_L zJRH4-(ZHF1Gli{~*q+11@3Ex={c@(r(UlY9qbWzXCf_^p+r-hWYd<|j_djw3bC)Ky z>DW=@kJQ)2j@%1~z8E_SK7U{Lulwxlgxc2$wXYLvJ39Ia<1FP!&+tmx5ueh(JV$Xo zDya2nBwdf5$))QNPMq|0XEHp0M2j7L*v5*}8#{UnqZo_(x^kNrx3zR%$N7-b*YPh> zkN!7D!Z4d;qk)YZzM<5q;WBK{FZ|q~P7NF(O_-7um{vfe4Sav8+cO;Bg|GnO{s>2# zGA+yf5ny$aKP|aG!kJz7Qhfp+{66lFaBH;;IazVu#{E&vbed4AjY3oIj}C+I?HB7; zZHvv|{^(g`1qWw`@lBb*{ZR=WxgT(PQ{Kk?(P2j}ep>A_xIa3SbZ+k_`y+~}{gG_s zQu`x}*X8~wjt|U{P#p=?kx(3+6lq8NHIZ_ZRUDnx3e}XOpMS`oFDH&(`>1fc{LuTl zN5#>S>ImLd9Kj*QQFk=z>#iJ9`no6I{ak$=IkM&6h7J}YNAj159Z4xx*HNg<=sF5i zM|Ai==t4)$a1gqVKy?JWjvhxxbz|4jr}sye;X0z(upElAoOmRsNo`&uEIAP?`FlAm zPq=#uTzr@pG%8s+D$na2e@Tdm=)4a5t6<6XFX8CzDHsFVGWFMKw0#gA;jo*W*VRZf zIda%)Z4wKh_gN z03sORqj=lN(M!HTCFW;FARQg@@wEF0I#%+Wag>#rt(sG!#cazz^w^qkUL8QjYe8 zqw#s2=_!u3oO_`~A@)_5INUJFk1V-yiKddi)(l=XF~T<-Bh9dsxNMe*wWj V^r(BW&^!PD002ovPDHLkV1g#-hj{=1 literal 0 HcmV?d00001 diff --git a/gfx/pokemon/weezingg/normal.pal b/gfx/pokemon/weezingg/normal.pal new file mode 100644 index 0000000..2ce83c2 --- /dev/null +++ b/gfx/pokemon/weezingg/normal.pal @@ -0,0 +1,4 @@ + + RGB 13, 23, 08 + RGB 12, 12, 11 + diff --git a/gfx/pokemon/weezingg/shiny.pal b/gfx/pokemon/weezingg/shiny.pal new file mode 100644 index 0000000..78140a7 --- /dev/null +++ b/gfx/pokemon/weezingg/shiny.pal @@ -0,0 +1,4 @@ + + RGB 16, 28, 09 + RGB 19, 08, 05 + diff --git a/gfx/pokemon/zapdosg/anim.asm b/gfx/pokemon/zapdosg/anim.asm new file mode 100644 index 0000000..05c36ca --- /dev/null +++ b/gfx/pokemon/zapdosg/anim.asm @@ -0,0 +1,11 @@ + frame 3, 24 + frame 0, 08 + setrepeat 2 + frame 1, 16 + frame 2, 16 + dorepeat 3 + setrepeat 4 + frame 0, 06 + frame 1, 06 + dorepeat 7 + endanim diff --git a/gfx/pokemon/zapdosg/anim_idle.asm b/gfx/pokemon/zapdosg/anim_idle.asm new file mode 100644 index 0000000..4f991f0 --- /dev/null +++ b/gfx/pokemon/zapdosg/anim_idle.asm @@ -0,0 +1,5 @@ + setrepeat 3 + frame 0, 08 + frame 4, 08 + dorepeat 1 + endanim diff --git a/gfx/pokemon/zapdosg/back.png b/gfx/pokemon/zapdosg/back.png new file mode 100644 index 0000000000000000000000000000000000000000..8dbbd235db821cde8acf2fb72dd597b1a5367687 GIT binary patch literal 420 zcmV;V0bBlwP)-CZ}Gd-JEx`*pQ7~bR?bKKs=O25Q~8X3e)2o{2P$XV1ikU z1PZ(0K$t=A?)81|J(TR*K6`%dd5O(E`X}7PJO=X^{$ZqRI(rN8QPL{xJcN4|Z?N>N zX64G}WqFC`4EBazS74MM=WuDe0j7$Z!yVEU0gv*_j*UzJW+>!fOO@zRRzn>UQz8ur z;St4cH3Ty#-ipo8qbLq$7@JY2_zPzG*I{eVP<_;6wE%630nLsj;3jDSut$0jc`^v7 zPbA#rf{NnOrtH=!m$7(J2u}soUQ2C+=iTKE%tK3J8@M&hzDv3g1=NN5q2BH3fP z8<~8zvT6x@o|t^%Na+i_RBw(%LP0>iKNWD-#X3N>A||vsCJtak!(Zrr!PZ-e0Iu%i z!9g>?tL5X7ACZU1+hN}jufZ`HFrRmTD57pHh!C1Oqx}kd=aHg{68izdbFEdHe<=C@ O0000!hMCTAr)>!sy(}L=LPKhpu0=?1X3_jpcxu6N=z8w&Ng%|*kN6s$~BB{UzYE*~# zYum`c9Pmg5x1Z zkx_yI>*66Qo6n>snO*Fz;2*o5*2p%fTHxU&meZ`p(Xw!#SQ1*erW{kJcOo{Gw+|EZgBu*1NsP4}Qzk zRj;yDcg}yxmogJooh2Qs^@X6v%aQEgb>yb?h|YX6k~2T>cBpsj-OEPqE`Q(!L}#ad zeqiL&8=}s|uzb&-Hu7x~kuJP6j4QbPkKmkg^shLw(j55-jvNVv1V?@bIu^tn`Hj`RTtDV$-d}m* zhA~I;SLWr(%9ta@Du2!G=Eocn?R#Dky)j2r&oW}l8*@ah6;w)2IHEy_+mgSJI3iuC z4ueO%2}d+rePLm3%n?zew$(7PB92HGYKIMkF-J7$)XI*Wa6~%4;akCkBfcDE1>Y=A zI3oS^g1Y36IbwPDDq?%g5z*1iGe?RsNBn}zi*ICNj_B!9_U7f7BYNx~EiJ?x(G2}| z!Hqd$80rs2%#r5!_A8D?FvJ}7D9I5~ilcE2PBO*1}D2M03q6 z365y*;iXp`X}kZOD<&M#K*PrO?U*B7)pHx|m?Ls(-Rgr8M@II!W)7GQgpP@)2vu`UqTd+H*_z1?gm2Kq(HxBS3-*$Me zJiHSkn8M`qI^i0IAzRDlr{4Aqad+6)a5Si}%zHVGTr=IOgBvPmMV+q4zIi;6m-Q^; ziuYMQ!IuG6J0Wf|3|xfO7d~Q6;{Aw)Z1uRux3+GL`q6RqprOtzU(_%a^`p5}kY`KH z2nP1`Kwi4QMKtCp|1nMj#T>nL!^6#(BfWH$e*|KV^jAOjAkmL*mXaJDeI$|`Jr*gB zqIUF(qw^__bScG=7XLqvPUpJQxh|gTZvSPjYozD8XQ{caR7%ZtZ;I4hx0{~p2B&k~ rDM$Ztjt Date: Mon, 13 Jan 2025 11:45:18 +0000 Subject: [PATCH 4/8] Mysteries of the Earth + Updated palettes Put Giovanni's book in Cal's room, allowing people to access a bit of lore they may have missed in KEP. Also, Ursaluna and Annihilape needed palettes in order for the ROM to build, which they now have! --- gfx/pics.asm | 19 ++++++----- gfx/pokemon/annihilape/back.png | Bin 501 -> 17042 bytes gfx/pokemon/annihilape/front.png | Bin 1080 -> 11613 bytes gfx/pokemon/tangrowth/back.png | Bin 1144 -> 15474 bytes gfx/pokemon/tangrowth/front.png | Bin 17079 -> 12655 bytes gfx/pokemon/ursaluna/back.png | Bin 416 -> 14383 bytes gfx/pokemon/ursaluna/front.png | Bin 1325 -> 11192 bytes maps/CalsHouse2F.ablk | 2 +- maps/CalsHouse2F.asm | 53 +++++++++++++++++++++++++++++++ 9 files changed, 63 insertions(+), 11 deletions(-) diff --git a/gfx/pics.asm b/gfx/pics.asm index 38345ea..97306c6 100644 --- a/gfx/pics.asm +++ b/gfx/pics.asm @@ -707,15 +707,14 @@ UnownYBackpic: INCBIN "gfx/pokemon/unown_y/back.2bpp.lz" UnownPBackpic: INCBIN "gfx/pokemon/unown_p/back.2bpp.lz" UnownIBackpic: INCBIN "gfx/pokemon/unown_i/back.2bpp.lz" UnownRBackpic: INCBIN "gfx/pokemon/unown_r/back.2bpp.lz" - - -SECTION "Pics 19", ROMX - UnownExclamationFrontpic: INCBIN "gfx/pokemon/unown_exclamation/front.animated.2bpp.lz" UnownExclamationBackpic: INCBIN "gfx/pokemon/unown_exclamation/back.2bpp.lz" UnownQuestionFrontpic: INCBIN "gfx/pokemon/unown_question/front.animated.2bpp.lz" UnownQuestionBackpic: INCBIN "gfx/pokemon/unown_question/back.2bpp.lz" + +SECTION "Pics 19", ROMX + BellignanFrontpic: INCBIN "gfx/pokemon/bellignan/front.animated.2bpp.lz" BellignanBackpic: INCBIN "gfx/pokemon/bellignan/back.2bpp.lz" WalkingWakeFrontpic: INCBIN "gfx/pokemon/walking_wake/front.animated.2bpp.lz" @@ -736,12 +735,6 @@ LickilickyFrontpic: INCBIN "gfx/pokemon/lickilicky/front.animated.2bpp.lz" LickilickyBackpic: INCBIN "gfx/pokemon/lickilicky/back.2bpp.lz" LickilordFrontpic: INCBIN "gfx/pokemon/lickilord/front.animated.2bpp.lz" LickilordBackpic: INCBIN "gfx/pokemon/lickilord/back.2bpp.lz" -BurgelaFrontpic: INCBIN "gfx/pokemon/burgela/front.animated.2bpp.lz" -BurgelaBackpic: INCBIN "gfx/pokemon/burgela/back.2bpp.lz" -TangrowthFrontpic: INCBIN "gfx/pokemon/tangrowth/front.animated.2bpp.lz" -TangrowthBackpic: INCBIN "gfx/pokemon/tangrowth/back.2bpp.lz" -JungelaFrontpic: INCBIN "gfx/pokemon/jungela/front.animated.2bpp.lz" -JungelaBackpic: INCBIN "gfx/pokemon/jungela/back.2bpp.lz" MamoswineFrontpic: INCBIN "gfx/pokemon/mamoswine/front.animated.2bpp.lz" MamoswineBackpic: INCBIN "gfx/pokemon/mamoswine/back.2bpp.lz" HirsuswineFrontpic: INCBIN "gfx/pokemon/hirsuswine/front.animated.2bpp.lz" @@ -827,6 +820,12 @@ TotartleFrontpic: INCBIN "gfx/pokemon/totartle/front.animated.2bpp.lz" TotartleBackpic: INCBIN "gfx/pokemon/totartle/back.2bpp.lz" BlastykeFrontpic: INCBIN "gfx/pokemon/blastyke/front.animated.2bpp.lz" BlastykeBackpic: INCBIN "gfx/pokemon/blastyke/back.2bpp.lz" +BurgelaFrontpic: INCBIN "gfx/pokemon/burgela/front.animated.2bpp.lz" +BurgelaBackpic: INCBIN "gfx/pokemon/burgela/back.2bpp.lz" +TangrowthFrontpic: INCBIN "gfx/pokemon/tangrowth/front.animated.2bpp.lz" +TangrowthBackpic: INCBIN "gfx/pokemon/tangrowth/back.2bpp.lz" +JungelaFrontpic: INCBIN "gfx/pokemon/jungela/front.animated.2bpp.lz" +JungelaBackpic: INCBIN "gfx/pokemon/jungela/back.2bpp.lz" SECTION "Pics 22", ROMX CheepFrontpic: INCBIN "gfx/pokemon/cheep/front.animated.2bpp.lz" diff --git a/gfx/pokemon/annihilape/back.png b/gfx/pokemon/annihilape/back.png index 6aa10fd6bcd9e646a9c85b4f6ccaf437108d5f28..f6eef7802856b2340362abf80a53bd08e6ef9b1a 100644 GIT binary patch literal 17042 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 delta 487 zcmVnGgW_o;#a%{b86tN0&bl* zwF-{xLEO6Dxdy6yDW-krZh|4_>KItNs{c)q2*lg@${0z|4ZZ=>g7ZP4!XS2_38Bnk za4l*wxb1DR##g@u9h8qI=vnE3>TTHEpEt;2u5j1;b$Y);p6)G_e13g1D`SWRugpUQ>69ZnZd zg}%4@8R!aO#k$~fF4>f-ADG8{zt07F)<&H2&qoES)+HALJdwehAC~!&nR9{TMha=L z%!qu#?a>#_etwNx_@dioC8@~tNOS}&GchP4o(e1O>Qn## diff --git a/gfx/pokemon/annihilape/front.png b/gfx/pokemon/annihilape/front.png index b4bc3935074baca8dfeef5a996a569fa7555d1c4..95a65a76a6b49b9f601e35221802041a32935305 100644 GIT binary patch literal 11613 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 diff --git a/gfx/pokemon/tangrowth/back.png b/gfx/pokemon/tangrowth/back.png index c7835c39189d6e98e2f2e8c40fa826a7371aafc1..7c97afe7b946a1e20aabf2588f7cb8a4fb44d4d3 100644 GIT binary patch literal 15474 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 delta 1135 zcmV-#1d#jkc=!mA7=H)`000120{Mpk00citL_t(&1?`wYk`zY_MY{=K3nJJsUYQe^ zGr&pU4EO~0%CNK#Hsq_}6~EQW>gu5lfrE@Flqr3EePw3V40F66vQvl`HbFr43T`A@Be=B`h@!F?|*+Teqy&8zua<1*y$k} zbyM2W#1a$B;@6MwHgl$ABXF|@5R}57z4~if_uoHW9%$t5{cj8A>8t0<6=RVcQ-Ta! zbCg^OYWSGT+QBvP5vRqUSaYzMlm1KdT_?bc=rP|P-VO~9gI#Bg;)`|H+2Qmri}4Ts zA!u2OHKv8Do`0sX&R%Q)@pm8Ij&1)UTq4BSgo3;tVyYE~-$t3c3CynsTr{57=GE5z=*1D$w^Gqih8BE^}bO}@l! z&8Jt$7paO@@K$qKP`thrtFN=>S*OF`o1Q>T*h^^M41dqY>}f*bZlt``Zk|AbCB#=x zC2`CVkH~*M|DdYzY{Evt)W*!;YNBl*6LOxyw+dIm3c;ToiJS3}n;J5Q`Pu&mF1@@Y zS*-3Dv2GyRr;EcU7gm0-4o=xFg)_<0okT1m2qmF6-wB zbR6voRFW=nukTV5DK`Ze!k!%-ex;@vPJuNen{bD1khnhPIq=g&UZwR{39nG@$c!jS zw}0kxE#gNLdxs5n^@+6&K>lAgu}8eZ6MLzN^#p97CcBI2zh<7IIx%o1rsK{$v7W;E z4!HXg02GW(5;1$Nx$@OK;?|g9$muZcS4bd9kSl=owL@{_C6}DW({?q~R2y6x$lXt% zq?NFe)cBrtSI2r-hjU~2y*|v(PC#H**H)hR zps{MfCceg5%Q3U&R32{3I>vD)+^^55UxKJafdSO&tD;H$KZTu9XApI5`12 zb&RC;<;Bm?GIxj4Ph5ZUg2`bW`6@Pf%)_^yf}M=uvP0SdYS+~-ey`2^nqv%0%xK4T zwP-&(fdLwM55paFt<`_6HD61up zL3&ZD^xnRp=bU@az4w(nzW3f=H)HJVz1E!TH~ZXc>~&9DQ<deItynr4PHChpVlF6Pg|4=Z0oS`#RVH0KQ}8Sq|P@VoBNO z)|bt3aTNeY6y2W9ctTTC8isFEOxC159_lC49h!4fb+X`I{c(QuSm=aOTC#{n)p;W7 z&U`@}3}I%|XF`|$0*<(+U6-xB$Li?rwHhCYS-EaRSDSBogIMCYHVfW;z zSdrUoLTsONCrzfW;p&${^8Imx>OeVu<_>7WfUT7eb!LapwC-?dG3T}9`=?!}8OtK`A z_rv2>YNeUfJ({81YFdqjNW!wu7$X}#af!wymHKa>53L!+SqEOz`@vT;wSz=Fpj+3B zi}aVDq-m0W$Z{-w?(h73MCXZ}koiPQqpbUjaaH^0evak!1GarFJ7X>NlgEpmg~>P{ z5O?ba-dyqY=zE)XeLbhy;$xbjIeNJ2?(^XhBTqf)m#a+y^%MJFwhQl59=M;>4fese z$BI&28h4MJ>!;km7YvzGR5l--JRh0z-A*hUt$cBM{JpIw>-3$;5u}LWg-lJitLbq7 zG3_J$g}Cq{?YKCxqTo=?cgCxRs=D7&YvD9zI<&E6??#2uab)R^rP9aQFOvcxPkT@6 zx9Cj{)h0ikJAMn*-4}xHvu*Eb8B4tSc8XqoLV9`V!BXoDG5aAzy`zNC)Xk8d7qvCV z05WalGZqxqjrrxUyT@=d(SAQ(}rZFpz~+JRafI-{W}m4A=hs zk7thK_EOo;`F&bF$LmIx?>Mg5iEsLrxm2DIHoR!`u$>6Ive_K~^_%&ofm)7AJMgPp zHS+8I9OYLUz2M>0WL#Pu>A^Q+L^O!^h>{3qkSCIzSK@0?$FXjN>tW;^d8k1T2Y>6OOI zsTCL^f1Hspu(-mW)$3FwlC6rF7A=yH*Td-*1|%{#fs68z$rG z2U$VyT{ucydqyJf(oyy%?%BR%&tX<&f%LOG-L--nU5vzWiOt%YL^wV*syfr|`W-t{ zXz_LbrEOndLu2=mZ)K~Kkn>siW_N~clpH7Q_VYt%YaEI)6`@z)$L~0`ulv%$+z^I< zi{Oh6*K;zja_oKsGAR}g?9_22;f(8>U}Q}b-#wPqU7+YOQm&2^SiPG4w?JCn8jTB5nr03jG_lHWDJF3C> zDtSo?UPEFA+`*-a`T_CFl9Ht$L9NuM?RM9Rq|D3HDQccfZ$sPri)3o?V*pGFdaYp=s1?f`@u)ZlOjZ`2k5uMM32*l`mQP z?dz?Fj`E;++mhnQuq1u@hp7GWRFsp1YgIKX^x3*V`124Bhl!69W89>fcdv!25W8Jo zw)CZFVF+FUeX;x;>Qv4-nNHQsK2q!)ZP!K(YdCfhG?={oEs=-CI{{wI>cM6d?U(n0 zX#hR#9kMrGpFI@&^@kYVbB*Sz!A5bKocJWT3Kc=XIspwX3$)*R2)v`K4G>@ZqM9G# z;n^grTn;McYHi_t_k8julk)>)!Omv1%mb=r{MrhTKF|O!V33Y9DQ}=-o;*K6-RG`H z#lU&gWo@(h6j1eaV1GfQVQ+OEgq)}=)Se|JpRObuDXYx4pU*;4?tbItveUDNy35n` zI5#=fT-r@L2n)%pK!7XloP0F%RJs$UIB&m?1y*OgHefb!TcW&j98=$3ZNl^Z?A4@K zdj)<}eZ>fV3E<7cRIo{iL@jz+w|B*^UtXm3Ed?)`FY|uNUI-r^J``x7Ig{L_Xkx+w z=*!Q08snzXPry6Ve#V57(%~Hmp9c_7+d07$s7yZfI)`piA*jswLc8V^dpHgYf6&Et z_>`1YO{tL4;t)NhMzRa1 z)`zVY**=x319!2i=$E=v$k~sM0CHJn8WLv4nz$HTX1SU?ror1{v9=J%k54Z!;C{?O zh*1vl!ev8MXM!$~DuqF+5-}w|J#Z}Y+Xn$c;Uu!4bve zMhs#dE&02giX@!V9JL4_A`u_8w zo$0+5P52KwW?ekMW}!kz*CV2SguVabB5i0i$}Xb)Fh84=$+w||BR(>#z?an0?;(Ha zw|g;i?w_7-L@cr~lAj1=AcOJ<%Q(aXdQf@RZx;Of**var^nLej5g8^6MjNGsIY?)k z<3v-f0;b!$Y?eaKn31A<#B!s8?ZX_LB$2m_1FMclP2VYIH7OLc^JKlODRT=k5FiRE z+7b1TO}X;AcX-M3N^Vf4 zFluo;p#)hWQ>xl&N8R#|p7o_{8doWOXZ0w^G(*A?6vrb<@HvdAp0M0g4O>}La2+#; zG=8BFow>7|g{)BXe%Sl^l_-N^N(oCdE{}b3Ypjy456jc^2Ar>Y1;w#7KUmqV01}A? z?cHMTpHhVdsr{tbJ4|7;L$APW74msURq*}SArt^1dQ-)8f?F!#ICT=0$Sp+_$yeN< zW^&vlP?C$6+moyIk&VFuukq>Xdua(3Tx2Zr>#OpM+$G=yl>-fR_$!kHgu%ycz4_bR z;|acfjlgwYF>sQ!;;L1baMJ@KTX zgQv-Q<>U`4ag2VzLKI`F9ZW8tt$ez{%dn#66beo45}@USe4yWqCJyPQkpMDsD}C0V zoAs9&qic9&nCv94;&!V;3D4|%&GtZ)QKU0ocg5{d=|>`mm~WhlH3t0uMnK+=p+!^0ym8W?x#c@mSncmy0Jii=UthsBwvU zE#nj~o__VrkcS@Vu1|!V3|AEN4Oh(%EbE-6607h zu;7X|Z@McLjjj`WUfIZQxER%SU|O#T{UJBJy{T8tA?uB^ATx>g^(CH}e%zgt%OA8G zlj)K4Pa^tXbJXVXxrbV$(Im&J=E8wgK9z^&MmosQ&6o%CLJ#KpT_TOSTI=u=00B6D z+M2WM!e==AbvquH)8tOCq<%=(Nqu4;+5<$pn3(XYWH>603WD%s0*CRNbVg~XUftpe za^hRNmq>ZtInL)LznL3-ERmzU9cxwv-q}6V*xrXK&LnGXI3-=&_IEp|%&(xx02$NK>x&e*J<*e4 z#Q@Kko~y5YM3b~gJqk#w9n&M?KM?0csCnj}g;r}Lir;3$vxrn8rK=M-M?cWho&Cp(r;A^t)LcC(iAG=RaG2z2jgcqY*<8|FCEmKS|4AY&G4cJK9t4Z#8+gb!2xtXDCW| zym(VY38zCGw%2{tvpV{eLwBgFL)V^;TEw9#3o{oP=Udh*ak3%Z40-D9WklW>i*N5* zYm^4A(-zHmcHrMDU>NLCj@QvA{Z?y>{$+w3RQw>HQFQH|gQAn=NXzZsW9`D1itWT# za>oip;M6v9K3b?IUaAIWAb@=1FgUdR{fx*Dz~_-Bxgq_eZkUyl)$%lRNZ6Gj3$j4` z#--t9y)#okzuE=e5%MbqY@&hY3-?8=!s7G#z3tAwP*UPHomDB}2PR>K}ge48>f+y~_d) zZuzYEiL(hGNBv7)No3vfY|`8o1-=63GtD^6iF_JE(xoJ&{Z83tJt$*MVMr^0L#m&g ze|mbj;7UsIF{3x8(GO3*GkD|vC%&26DWmMdK6sP0N~P--e5CW?`|_1nds21C+qrdQ zp+?4uWBiuOy;Rhw#{3g%U>%qDrE%`D9jcpc=E7I-l4ZT}DH8aGw6d#6b>%0oizwo^ zw2l;O&isgbAnQ6KJ);**@;WA_$W;TaJShKgTZ-<8~6I+uXmUNAxdRmZtU(Qq5oEUCc9I7)sBn zlq*XMx!p$oT$M}VRJ&}bxmifpW^Njf1VCvja{mLwxaQk*w1GNnv2K*efnXER{Y?=R ziIKZio}gD6DmOP{z2SHe&`xsYYP3c#e-#<1V?TS?AXC*)Hp(YDfRHtU^q zSd%b2SHp;F6P`*Z;q15a%dX_0vuCtrGHezR=O2kbKc=jDC6i;3*Im*q&q7MecrC?J zDURE`wJ1oEgzS9Dc)IPkd!Nqq*yF-(?-nhg1dOnpgadNvc~n=?3zSl@Rfkmb1}2M? zufxjg16-Idn9=qs9j|opCR1hFE`~w$<>EC5)gooS zPTDb@PL*KF^Z`;Lx7l@xHC&dqu-J{H>{LiYOL*bwvPJx}(X?Z^STv3L>ysN#qHyfb z&prH02Fql!Su6H5s%yrD#q?KH*Y#K1$3Je}#c12EpsuG_8t1A8SLgfJ+1nrB(yuuA zadd$l8UlJ5(XV#3jyL708zL4r&ZrN@h(ZdJW4ZH>35HR{ve8@-b4)6*MhZUsqUwNe zrFw`}kx9&k`Q9P(!T}Z0hnis zZzQ#mTpgx~yzi&?Msd7%uhUC_7oU^rAgU-#Fb>poV_QD;*&EqAx>CiK-2}UG31QU^ zpS%h4IQ3>*VSKS&ceSFDjhB`-dKfmFAefpaW66^w@`{MxzLaBX!{k@=3B2%i_{Mz#jXi_siMoPU%84* z_^8eJ*ju&f23Ui&ysa$L(6bPKk6kzA)#WY)=d9be8X*&B_r44F>F*9x-%f@Sa_gdG zkt6D1jyA>-z#yI~IuE;2&5YK;S|$mhSAd`uvZkf7w5>41BDyeEnj+*pIFIwkgi-e( ziu@3V&=KsdCZ6fM92~omqWdLS?Y_$x(|vVmg`%DV>({B)R^%nGBs<<*8CkUvc>ipr ztLa{VWo<>?!uJ;*QX+F5vZ;F< zr?_jBp9#f2@goRVjcEg4g)H(LUBlHaT-JHB1J@-Q+EeI zJPi|zOVDI3(8Q3rD9z1@-P{13biIi$A&$9XR`4ciJp~^SXMA{xiO@)Behj5&0V*)>xjm5JA@dQ#OP%$a7^EfC= ze)7c7?_t-eyI4G#`1$j3yoR3;KVcpC+UB)U=v|| z4IU(Jf7F%@jR^AW-^qr`H8pTmu1=}(DkkbX6yi{&mA_4Ke{0f#Q<{`-cUvhhze=Vd z;9d4RC7o^Qlkyy3F~iQr6bIeG{dU1@nKZHwG%EcWn*Cow*t+qgN6X@kMH{j(&0!{` zS3Al&cQnZ7Hei=Xd1G#v`Yqn?N-3^XSqR`W z?Ij}mnPM3`T9rOCc9quq6vN~Mhy8*#D8)o>hY_ffEj9w}Ro)1=a>ZBYhA=u&>Ge(s z_9*w208=z;YuK1Q_^Gujj;i!_R#P<_&o}LbwS~lq9cDcC_}?Py-x|Ho!?L2#A8{pHT>YY(g}UgicdNznm^y1aeJg(3y1k z&TLA5eEEH2G9b9WOn7)T6QKVA0(l$$K&UJ_c$xIMT_!=}VEwW=+W!howjR_c+Udyj|bB<_OJ_4w6@D-n%|}PeCdPwVH=` zc2QeZkH7X{sEx^^(V|wqY*28QW4-2;Uu><(v)VnWLsA8#v-o>26Hb&BHE$t@yb_DS zkOha*OQo25WZBmxPdXE1Gz2qm8h|}|t?~G-y`elKYO`}p=bm%X<-yr${j&Flhw2M~ z3HjGE=@)CCiKl}IE9w%03W$5}rc5r{4{+uNF*P*&u-{^JYs4dyT1w#%PkEfK&4;sY zx1&K|u|a>SqRG?o@!Sqh&p=taOK_NiMVb1jBkTH)m7K3_Qfr5&0G}rwr4%XBc>n%ags!5}ZxGm#6wn@naYG0R z`S|z<`alI;J?w;p#l^*izz`t_1cc=PdHT6vEPX*Po}3pDzc3Whp4J`?ZWsqw7xoKG zODk6|j1&-vrL+I8pR=2W#vkx5p1*kk>klDcOE)25L9mdsv(TSccw&&=SdiZo`ll;A z^|5E8Lb_;AS1%81G}0UGg5mr#gpKtd>)pIOoPL^PV=aVsLOWwwJ+V@S|043@l=Y7l zf01}W`Kjce;gwZ1wEtkg@R*&0v)fN0*x399*v;M*h=fwU(o*`|APpOgYAEy z(FNrn*s*f|xrE<+{8N1_mxcyH(bd}P!VM~lQb6pCppAnKLevUkEe;d50a-%9;vi8= z7z|_uLyLlhtwmrEQHYog+{X4#5GpR77)uvx^zRT3SO`lSI2vkc0|wa$+gO8O;=&LR z9Ab+_gouivZAHbbZ6IQQg3$7Cz-GOr)Bl$?Hr5DRR}W`PY`Qo&TiT(8++6H_%D4y{ zLc!I^)k6YxqDGN4J5DFe>OAJ~OdttG`!lEEB90U>7hd>cvFydke z!#?~3{Da%oL*LcaNeX!3EcOc<{~&8%o0W|v#`4c_;vfh_Ul@)6LlD?B{3{&R3l6q^ z{}uN|YhsuDmFOr3PmHUF-_NOE{Ynq*{%iDW=;ZLTQL(fCY&i%^>t7zV{%NMoPff9C zzlaY1B<26xRr3dmr>iZ-$I=5WXNL`-6j1Ksjliz`dy`k(} zk3AY2^8eWPLjMi(JT1M^e`lPvy`_sC8vE+`t$F=tMq`_Sr8O7|1wo;3QIIVfCIYg8 zSc!t*mS}7|ZLNjDkiSF!pEUYchKM0V;0O`$ZyEA`V6-?IDlQ6#31dwag@d5NFe{L_ z7~B#Bg~Q=cD;rT!QITIA=6@y9|Ew(j4~!PE21CRlB2bXExR@mfW`(u|!L7kykQKJU zLm(m|;v&}YzozHkMOqpATKrk`|5Z9eL_lC+kT6tV7>p1RML=P|-^`N~y4Y6yUbd1# z|4`V!82+>m!4|-;Iqd!hyIm6cW54uUWncsJzxn&Eq5N-(U}yigkblX)|902E-Ssbd z;9p|?cXs{TUH_5?{w3yrXV?FjyGZ`_#Rctx-Rt^bzo*==<&naEiy_li*GHb8pEoGE zNtsn+Cx-Dfg0MFnD>Y?BKr{gh3OgWnLm7Jl02Eyp7fu>K1rv6X2&1BbBwE5DCxHV` zPaQM?06b?EMLB(=&b2Qcj)U6FL>o^mX+=kJycx|UUs!`W%@Af%Yfp(@vJ@ZK`HntX zM1wcDS<}pz*V8hzsZ@2hLtCB`5ovm-y_Ge8VG~EpS$>!~KfEKAG($B?7!Z{zBov@x zJ{h%dP8AdL8R>CYI=}kt`0=p{DXXi@(woNQxvRW^=(Ibh=eG-*x2kUWWzUL5ox;f?N-BJMyi)s!STY4G0STv>~Z7N}B>Ytveb{ZZ9Y!u7sxb^g`W_piG0Ta~v}^voCiETgEU z?lA`&vk)?SY^IGL_V2gM-ILW)dYjEJ@N|NaP=1aYELuk*?UWd%=99myj=l_N)o)K$ums3EnGE%8XrZB8*{WUK2qezSbbMbLWnXB+(8gz_FB5d*jJByP z#>E8r#v0RacRBAq^GwAmk0H0j)29h>gUm=B@2+epoX<>9S>4O#(YKx)eHM+U3E?$E z$=c}%ns>U&$_cY2wmb>Tk+UV{2FxN)V+vfhH1(848`TreN`q70`7D&JNi{6&m_<|u zjiU;@w@y006u>@83ElN0(+mgo8dJTUl|QQdwrdI z*Cdz%l!%!@CG64DDa)kODJRp7>fF4h{C0&A&IoV9Pf*I`Tu-$9o_0DQ2jrSyVROMK${>`dpIZ{~aXAn%=f?m6e) z-?{hPmp|Uhpuj2pTwGls27K;jcP_-#aoy0k3tT|s5D73ofu7$#UgaIGFC|MYINw?xvpRzRia7*hJ}dPLV9=24pz3c z22WLLbuy(Knd&PB4Kx&0zygFV;PE+3YBY<-r?Q!xXsTd5Uq)r~`FwV?g2&@=nKpzu6Z=KQp+@21lw~W zw~kHMS;ji66lP=FyRb}-)ibdi+Y*RENPnfZYgnC@?Plof34A-scK;6MZ;oMzLzF}t z%I?b6>&;HIsu-O?ra`=8!J2rx-EQ~$sv$mrkdB=IiRgbI6)q@)tTtun+SVV8V_^%FqhF$mHwNF=vvA0IGHjQQHbds zi@2lVe<^owR|WsIP1Nm)@_&&#`)+)-GIkX7*DI+Id!T?p6$TYSW~+YSV0o>rYt`8M zM`G19QE%%n;4#35&cwdkO&!&E(^^$J|+HLTPZVhL38M4{0SUPChE$z8-c$T)6P0|((kspv83YG}SR`=~^TBCJTsR=aB8iKb4^B(s!T})` zNnFHya9R=<4hXSG;v(jQ(~`JwK!`;W7cn24mc)evLM)QFi22~OBrY5fVv)o}%m=3> zap8avizF^$J~%Cj3kQT)Bykb*!D&fcI3UC#iHn#IPD|p#0U;JiT*Q2ES`rry2(d`w zBIbkBlDKd{h(!_?F&~_k#DxPwERwj0`QWr9E*ubIk;FyJ2d5=*;eZf}Brak;I4y|_ z2ZUH8aS`*uX-Ql-AjBexic3f{=2$OD2U5R^Iwg3^~j(DUEG^)3YI84z@DJ_NyAAm~HY#=o5Mhaji*Q+>Td zjaMGzPS-S1-t)U0S$Ns++4`?ivYR$6E>>48npEHOhdE*6vVIXwpR#Z`zt1lJeUtaL zz6`5cxG3$V*?Dfvz(p@we|hp`d|SQv)0b_75{5~u{(MaAI!4mC-17Y96RYyvY3mDX z59GNya@}H`kxH9cGB4SMFit?%K_l`As!+N(R$gQq=dPl`9r^;(uaMt^iFZFIF~g;!SCsU*R{iq;um*D+Sar(dm{$|e|@j<-WD|=>y&)gyK z*w%!sNpC&7X@*mHNoh>Lvp%J5tCn2Y9PZf=J6lpXVp)K(=$~*rE`pL4~^8^2qSwBjM@Wll4nV5yk!(kxyGr z!}jx*qQ%8+1y^K;vbTO(oZO?_G<=Ia*@;%3tT-1#8%XL|iUT)gcE4hU6{he&dgZ;mP5e%$OJg>MvBz((o)uXmi z`+NkCSBHFa-SUP11!>z_?x-6POYYX(o_P9h+Qm}!*kUK`F@BiYHMaQLCF#}-T1A?w z>h!eQLsf#wg=tr^M>R_>?kRCTH-vs+j56!%GZG6$^+R1maoM(cU&KZ4Z&nn2d~WsL z^|Qy9xs7aXPWx)}pYlRB&td(P!JC%4yl%se4{p}?6E&`8ft305s}sF-zI9%=zA%N?d5vCB-!FCEf=fQGbM#MzvCD2#&pk{$ zyrU)QabA3#;mOlViMgJ?YiUVQrTe0s+dHj0*WS9AJZbH!8=_^CZh|>vSUJuvws5xD zVbf}zQdzVx$S7?zNu52vJ!_ig1m@!sAbna2CfI6Dlj>uvm2z`^@#AnqiZlew;zyC> z8{ZGiA?Hk0X*M=1n^{JwsDNc~rV@)%LZZ<@=Vm^8f?nxAeF5$1bChduk(LcdIG5V)u0L9dVD|Wbssgbk%|`8~UqguJ*X;N}qlf)ZJlNk3sHs zWmI9=o9t{sy&KjGl=`n8<$Y!wE|$~Q+@nPso?B8cnSx_C)1Kx1NTN8K50eL)XY}+@*kX44Uc}=(~6F{EUABfqMWm diff --git a/gfx/pokemon/ursaluna/back.png b/gfx/pokemon/ursaluna/back.png index 60537622c306f2c9c49e9e9249bc6711e8ec78cd..05858ccd720dcc6a62d2264f5963e5e66bac5b66 100644 GIT binary patch literal 14383 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 WqTlN(*}u#Il%lMfOr?}r(EkCn$-QR) delta 401 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 z%0A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 delta 1317 zcmV+=1={+!SFH+=8Gir(004X7WTF571oTNnK~#9!?blCe9Ay~C@pqD)7?xmnW#3v# zAy#PBsZA9Gdnr4+>}U)PnO)wek>t>m64rxW1!cF!?L{O>byecQtj&g;M{f2%e}1NpJ5*2UXHF2tJuT2s@Q#comezR63}PoyJv|B8l)iSXLMHHv4A6;Pv{{>HM!-e<*4Q8fBIaf zh8?Z;haG+Kz&nZr9cAD#h}_3fx9137Fgkj|bri2}EEpO)S)L#%8#ZGx3*f2+trE5DAFsdoxte9X@4plWs%iBO0@$M__c1L*{n3ZMiCA=vRS2a z2!{bW609^9t!N;jBPLj7K`~OGqNA8#r88dDK{&Emu{K^}jw6?q%p!8$Wfh55B|Yx5 zinpP;j4B*0Y5m2F3aXrygrkuk(g-CX0aMY@4Mlkq9T5sy;b=KuV#1L;_$xt29e;a^ z#CFtiVFmyC2W}2@p`)d($r-dk-fOfUK}SN)0A})2)4o>~n+lN@o!gx|>D=YkFL_?u zv0xpMbrzsuetGjuAUn2heH*y=kI|I?I;-*3Gp#*BM^;bRQO~^`-8D}W;d!cr9Em*& zIGVp}o@CEa+Gn-u&6B%F-aOfR`}vU1d6jq%eEs(yz1Cd*siPvq#=MxqIZzleb5%BdUiS$t2`R4LPD=N9@6J)Y_wew@3GMq=p>@ zp6d$1|Bw7Va-ZwGJ#rj*d*nLu_UNGF$lD|Dxz67s=ef??Bgc`qN3J7(j~)V!aF1G! b{^{s%vpiJQ(7fds00000NkvXXu0mjfMCXZ_ diff --git a/maps/CalsHouse2F.ablk b/maps/CalsHouse2F.ablk index 883ef3d..63fe61f 100644 --- a/maps/CalsHouse2F.ablk +++ b/maps/CalsHouse2F.ablk @@ -1 +1 @@ -  \ No newline at end of file + %&' \ No newline at end of file diff --git a/maps/CalsHouse2F.asm b/maps/CalsHouse2F.asm index d76c66d..121c01a 100644 --- a/maps/CalsHouse2F.asm +++ b/maps/CalsHouse2F.asm @@ -12,6 +12,7 @@ object_const_def const CALSHOUSE_KEN + const CALSHOUSE_BOOK CalsHouse2F_MapScripts: def_scene_scripts @@ -21,6 +22,17 @@ CalsHouse2F_MapScripts: CalsHouseKen: jumptextfaceplayer CalsHouseKenText +CalsHouseBook: + opentext + writetext CalsHouseBookIntro + yesorno + iffalse .Done + writetext CalsHouseBookText + waitbutton +.Done: + closetext + end + CalsHouseKenText: text "CAL? He's my" line "brother!" @@ -37,6 +49,46 @@ CalsHouseKenText: line "He's so cool!" done +CalsHouseBookIntro: + text "There's a book" + line "on CAL's desk…" + + para "MYSTERIES OF" + line "THE EARTH" + + para "It's written by..." + line "GIOVANNI?!" + + para "Read it anyway?" + done + +CalsHouseBookText: + text "In this book, I" + line "will reveal the" + cont "highest form of" + cont "RHYDON." + + para "Its name is" + line "RHYPERIOR." + + para "We can't get it" + line "obtained with" + cont "items native to" + cont "KANTO. We must" + cont "use a PROTECTOR." + + para "Unfortunately," + line "RHYPERIOR does" + cont "not address" + cont "RHYDON's poor" + cont "SPEED. Ergo, it" + cont "cannot use my" + cont "own technique," + cont "FISSURE, to its" + cont "full potential." + done + + ; Usually, there's a thing about Skarmory here, but Silver's House details it, so let's use this unused quote instead. CalsHousePCText: jumpstd SilphPokegearScript @@ -109,3 +161,4 @@ CalsHouse2F_MapEvents: def_object_events object_event 8, 1, SPRITE_ROCKER, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, CalsHouseKen, -1 + object_event 1, 5, SPRITE_POKEDEX, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, CalsHouseBook, -1 From e3486fb9b72c3568cf3976cb6722a84622b61235 Mon Sep 17 00:00:00 2001 From: Martha Schilling Date: Mon, 13 Jan 2025 23:12:04 +0000 Subject: [PATCH 5/8] You are now a Legendary, my child - Buffed Dokuroar's stats, it now has a 580 BST like the Birds and the Beasts. - Nerfed Dokuroar's catch rate, buffed its EXP yield, and made it genderless. - Removed Dokuroar's Egg moves, and changed its learnset slightly - it no longer gets Leer, instead getting Scary Face, and now learns Bonemerang by level up. --- data/pokemon/base_stats/dokuroar.asm | 8 ++++---- data/pokemon/egg_moves_johto.asm | 10 +--------- data/pokemon/evos_attacks_johto.asm | 5 +++-- 3 files changed, 8 insertions(+), 15 deletions(-) diff --git a/data/pokemon/base_stats/dokuroar.asm b/data/pokemon/base_stats/dokuroar.asm index b4714df..57de921 100644 --- a/data/pokemon/base_stats/dokuroar.asm +++ b/data/pokemon/base_stats/dokuroar.asm @@ -1,13 +1,13 @@ db 0 ; species ID placeholder - db 87, 125, 110, 66, 66, 66 + db 101, 131, 119, 76, 69, 84 ; hp atk def spd sat sdf db GHOST, ROCK ; type - db 25 ; catch rate - db 166 ; base exp + db 3 ; catch rate + db 203 ; base exp db THICK_CLUB, THICK_CLUB ; items - db GENDER_F50 ; gender ratio + db GENDER_UNKNOWN ; gender ratio db 100 ; unknown 1 db 120 ; step cycles to hatch db 5 ; unknown 2 diff --git a/data/pokemon/egg_moves_johto.asm b/data/pokemon/egg_moves_johto.asm index 79b5cfd..f9e3991 100644 --- a/data/pokemon/egg_moves_johto.asm +++ b/data/pokemon/egg_moves_johto.asm @@ -165,7 +165,7 @@ EggMovePointers2:: dw RuddernautEggMoves dw XylodonEggMoves dw NoEggMoves2 - dw DokuroarEggMoves ; Dokuroar + dw NoEggMoves2 ; Dokuroar dw NoEggMoves2 dw NoEggMoves2 dw NoEggMoves2 @@ -788,14 +788,6 @@ XylodonEggMoves: dw THRASH dw -1 ;end -DokuroarEggMoves: - dw BONEMERANG - dw BONE_RUSH - dw BONE_CLUB - dw ROCK_SLIDE - dw SCARY_FACE - dw -1 ;end - LarvitarEggMoves: dw PURSUIT dw STOMP diff --git a/data/pokemon/evos_attacks_johto.asm b/data/pokemon/evos_attacks_johto.asm index e83304b..de4c562 100644 --- a/data/pokemon/evos_attacks_johto.asm +++ b/data/pokemon/evos_attacks_johto.asm @@ -2813,11 +2813,12 @@ XylofinEvosAttacks: DokuroarEvosAttacks: db 0 ; no more evolutions dbw 1, SCRATCH - dbw 1, LEER + dbw 1, SCARY_FACE + dbw 1, BONE_CLUB dbw 7, SPITE dbw 14, NIGHT_SHADE dbw 21, ANCIENTPOWER - dbw 28, BONE_CLUB + dbw 28, BONEMERANG dbw 35, SLASH dbw 42, ROCK_HEAD dbw 49, BONE_RUSH From c3f9e786fe7cfaf91d92706c0ed1d8f30cbbb519 Mon Sep 17 00:00:00 2001 From: Martha Schilling Date: Mon, 13 Jan 2025 23:35:51 +0000 Subject: [PATCH 6/8] Update dokuroar.asm Dex entry! --- data/pokemon/dex_entries/dokuroar.asm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/data/pokemon/dex_entries/dokuroar.asm b/data/pokemon/dex_entries/dokuroar.asm index 7843239..d4bcfe3 100644 --- a/data/pokemon/dex_entries/dokuroar.asm +++ b/data/pokemon/dex_entries/dokuroar.asm @@ -1,10 +1,10 @@ db "SKELETAL@" ; species name dw 902, 4960 ; height, weight - placeholder - db "Believed to be a" - next "spirit inhabiting" - next "a super-ancient" + db "The skeleton of a" + next "dinosaur given new" + next "life. It harbors" - page "#MON skeleton," - next "but research is" - next "still needed.@" + page "intense malice due" + next "to being forgotten" + next "for so long.@" From 9c27542c28eec7e899f69a7b4cf44bcf7b6392cd Mon Sep 17 00:00:00 2001 From: Luisa Karlson Date: Sat, 25 Jan 2025 13:03:38 +0100 Subject: [PATCH 7/8] Hot Savoy In Your Area (#55) * Deep in the Crater Here it is. I'm probably taking a small break after this one, I'm sure you understand! * Hot Savoys In Your Area How...? Just accept this FREE pull request * Savoy City + small fixes Savoy uses the Savoy music now, also fixed a mistake I made with Sepia where the theme would only play on the overworld --- audio.asm | 1 + audio/music/SavoyCity.asm | 1110 +++++++++++++++++++++++++++++++++ audio/music_pointers.asm | 1 + constants/music_constants.asm | 1 + data/maps/maps.asm | 18 +- 5 files changed, 1122 insertions(+), 9 deletions(-) create mode 100644 audio/music/SavoyCity.asm diff --git a/audio.asm b/audio.asm index 63ea9d8..36d07da 100644 --- a/audio.asm +++ b/audio.asm @@ -168,6 +168,7 @@ INCLUDE "audio/music/mart.asm" INCLUDE "audio/music/SepiaCity.asm" INCLUDE "audio/music/CoralCity.asm" INCLUDE "audio/music/CrystalCrater.asm" +INCLUDE "audio/music/SavoyCity.asm" SECTION "Sound Effects", ROMX diff --git a/audio/music/SavoyCity.asm b/audio/music/SavoyCity.asm new file mode 100644 index 0000000..f26570b --- /dev/null +++ b/audio/music/SavoyCity.asm @@ -0,0 +1,1110 @@ +; Savoy City theme +; 4/4 rhythm, composed in B Mixolydian. +; An urban theme, loosely inspired by A Cyber's World by Toby Fox. +; This theme has an upbeat feeling, emphasised by a simple backing and a repeating motif. +; Channel 1 and 2 work in tandem for a reverb effect, in a similar vein to my Area Zero theme demake in KEP. +; Stereo panning is limited to the backing channel, as the soundscape got way too cluttered with the lead notes bouncing around the metaphorical room. +; Composed by LuciShrimp. + +Music_SavoyCity: + channel_count 4 + channel 1, Music_SavoyCity_Ch1 + channel 2, Music_SavoyCity_Ch2 + channel 3, Music_SavoyCity_Ch3 + channel 4, Music_SavoyCity_Ch4 + +Music_SavoyCity_Ch1: + tempo 256 + volume 7, 7 + note_type 12, 15, 8 + octave 5 + sound_call .sub1 + duty_cycle 3 + octave 3 + volume_envelope 8, 5 + vibrato 8, 2, 1 + note A_, 1 + note G#, 1 + note F#, 1 + note G#, 1 + octave 5 + sound_call .sub1 + note_type 12, 8, 5 + duty_cycle 3 + octave 4 + vibrato 8, 2, 1 + note F#, 1 + note E_, 1 + note D#, 1 + note C#, 1 + octave 2 + volume_envelope 12, 5 + note F#, 6 + note F#, 6 + note F#, 4 + note G#, 6 + note G#, 6 + note E_, 4 + note F#, 8 + octave 4 + volume_envelope 4, 5 + note C#, 2 + rest 1 + octave 3 + note E_, 2 + note G#, 1 + note A_, 2 + volume_envelope 12, 5 + octave 2 + note B_, 3 + note A_, 3 + note G#, 3 + note F#, 3 + note D#, 1 + note E_, 1 + note F#, 1 + note A_, 1 + octave 8 +.mainLoop: + volume_envelope 12, 5 + vibrato 8, 2, 1 + octave 2 + note B_, 6 + note B_, 6 + note B_, 4 + octave 3 + note C#, 6 + note C#, 6 + octave 2 + note A_, 4 + note B_, 8 + volume_envelope 4, 5 + octave 4 + note C#, 2 + octave 3 + rest 1 + note E_, 2 + note G#, 1 + note A_, 2 + volume_envelope 12, 5 + note E_, 3 + note D#, 3 + note C#, 3 + octave 2 + note B_, 3 + note F#, 1 + note G#, 1 + note A_, 1 + note B_, 1 + octave 3 + note_type 12, 12, 5 + note C#, 6 + note C#, 6 + octave 2 + note A_, 4 + note B_, 6 + note B_, 6 + note G#, 4 + note F#, 8 + octave 4 + volume_envelope 4, 5 + note G#, 2 + octave 3 + note B_, 2 + octave 2 + volume_envelope 12, 5 + note G#, 1 + note A_, 1 + note B_, 1 + octave 3 + note C#, 1 + note D#, 8 + octave 4 + volume_envelope 4, 5 + note G#, 2 + note B_, 2 + note G#, 2 + octave 5 + note C#, 1 + octave 4 + note B_, 1 + octave 3 + volume_envelope 12, 5 + note E_, 6 + note E_, 6 + note D#, 4 + note F#, 6 + note C#, 6 + note D#, 4 + note E_, 4 + note C#, 2 + note D#, 4 + octave 2 + note B_, 2 + octave 3 + note C#, 4 + octave 2 + note B_, 4 + note G#, 2 + note A_, 4 + note F#, 2 + note G#, 1 + note A_, 1 + note B_, 1 + octave 3 + note C#, 1 +.loop1: + vibrato 8, 2, 1 + note D#, 4 + octave 2 + note B_, 2 + note A_, 1 + note B_, 1 + octave 3 + note C#, 4 + octave 2 + note A_, 4 + note B_, 4 + note A_, 2 + note E_, 1 + note F#, 1 + note G#, 2 + note B_, 2 + octave 3 + note E_, 2 + note D#, 1 + note C#, 1 + sound_loop 2, .loop1 + vibrato 5, 1, 1 + duty_cycle 3 + octave 3 + sound_call .sub2 + vibrato 8, 2, 1 + octave 4 + note C#, 2 + octave 3 + sound_call .sub2 + note_type 12, 12, 5 + vibrato 8, 2, 1 + octave 4 + note C#, 2 + octave 3 + note F#, 6 + note F#, 6 + note F#, 4 + note G#, 6 + note G#, 6 + note E_, 4 + volume_envelope 12, 7 + vibrato 19, 3, 1 + note F#, 16 + rest 16 + vibrato 8, 2, 1 + volume_envelope 12, 5 + note B_, 6 + note B_, 6 + note B_, 4 + octave 4 + note C#, 6 + note C#, 6 + octave 3 + note A_, 4 + note B_, 8 + octave 4 + volume_envelope 2, 5 + note C#, 2 + rest 1 + octave 3 + volume_envelope 3, 5 + note E_, 2 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + octave 3 + note B_, 2 + volume_envelope 4, 5 + note G#, 2 + note A_, 2 + octave 4 + note C#, 2 + note E_, 2 + note C#, 2 + note F#, 1 + note E_, 1 + octave 8 + sound_loop 0, .mainLoop + +.sub1: + duty_cycle 3 + tempo 153 + volume_envelope 8, 5 + vibrato 8, 2, 1 + octave 3 + note B_, 3 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + octave 3 + note E_, 3 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + octave 3 + note B_, 2 + note G#, 2 + note A_, 2 + octave 4 + note C#, 2 + note E_, 2 + note C#, 2 + octave 5 + sound_ret + +.sub2: + vibrato 8, 2, 1 + note G#, 4 + note E_, 2 + note D#, 1 + note E_, 1 + note F#, 4 + note D#, 4 + note E_, 4 + note D#, 2 + octave 2 + note A_, 1 + note B_, 1 + octave 3 + note C#, 2 + note E_, 2 + note G#, 1 + note A_, 1 + sound_ret + +Music_SavoyCity_Ch2: + note_type 12, 15, 8 + rest 3 + vibrato 5, 1, 1 + duty_cycle 3 + volume_envelope 4, 5 + octave 3 + note B_, 2 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + octave 3 + rest 1 + note E_, 2 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + octave 3 + note B_, 2 + note G#, 2 + note A_, 2 + octave 4 + note C#, 2 + note E_, 2 + note C#, 2 + octave 3 + note A_, 1 + note G#, 1 + note F#, 1 + note G#, 1 + rest 1 + note B_, 2 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + octave 3 + rest 1 + note E_, 2 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + octave 3 + note B_, 2 + note G#, 2 + note A_, 2 + octave 4 + note C#, 2 + note E_, 2 + note C#, 2 + note_type 12, 15, 8 + rest 2 + volume_envelope 8, 5 + sound_call .sub1 + octave 8 +.mainLoop: + octave 4 + sound_call .sub1 + note_type 12, 8, 5 + sound_call .sub2 + note E_, 1 + note D#, 1 + octave 4 + note C#, 1 + note D#, 1 + sound_call .sub2 + note_type 12, 8, 5 + octave 5 + note C#, 1 + octave 4 + note B_, 1 + note A_, 1 + note G#, 1 + note_type 12, 15, 8 + sound_call .sub2 + octave 4 + note_type 12, 8, 5 + note E_, 1 + note D#, 1 + note C#, 1 + note D#, 1 + sound_call .sub2 + octave 4 + note_type 12, 8, 5 + note F#, 1 + note E_, 1 + note D#, 1 + note C#, 1 + sound_call .sub1 + note_type 12, 8, 5 + octave 4 + sound_call .sub3 + note_type 12, 6, 7 + octave 4 + note C#, 6 + note C#, 6 + note C#, 4 + note D#, 6 + note D#, 6 + octave 3 + note B_, 4 + octave 4 + note C#, 16 + rest 16 + volume_envelope 1, 5 + octave 3 + note B_, 3 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + octave 3 + volume_envelope 2, 5 + note E_, 3 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + volume_envelope 3, 5 + octave 3 + note B_, 2 + note G#, 2 + note A_, 2 + octave 4 + note C#, 2 + volume_envelope 4, 5 + note E_, 2 + note C#, 2 + octave 3 + note A_, 1 + note G#, 1 + note F#, 1 + note G#, 1 + volume_envelope 5, 5 + note B_, 3 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + octave 3 + volume_envelope 6, 5 + note E_, 3 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + volume_envelope 7, 5 + octave 3 + note B_, 2 + note G#, 2 + note A_, 2 + octave 4 + note C#, 2 + volume_envelope 8, 5 + note E_, 2 + note C#, 2 + note F#, 1 + note E_, 1 + note D#, 1 + note C#, 1 + octave 8 + sound_loop 0, .mainLoop + +.sub1: + volume_envelope 8, 5 + octave 3 + note B_, 3 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + octave 3 + note E_, 3 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + octave 3 + note B_, 2 + note G#, 2 + note A_, 2 + octave 4 + note C#, 2 + note E_, 2 + note C#, 2 + octave 3 + note A_, 1 + note G#, 1 + note F#, 1 + note G#, 1 + note B_, 3 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + octave 3 + note E_, 3 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + octave 3 + note B_, 2 + note G#, 2 + note A_, 2 + octave 4 + note C#, 2 + note E_, 2 + note C#, 2 + note F#, 1 + note E_, 1 + note D#, 1 + note C#, 1 + sound_ret + +.sub2: + volume_envelope 8, 5 + note F#, 3 + note D#, 1 + note E_, 2 + note G#, 2 + octave 3 + note B_, 3 + octave 4 + note D#, 1 + note E_, 2 + note G#, 2 + note F#, 2 + note D#, 2 + note E_, 2 + note G#, 2 + note B_, 2 + note G#, 2 + sound_ret + +.sub3: + octave 3 + note B_, 3 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + octave 3 + note E_, 3 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + octave 3 + note B_, 2 + note G#, 2 + note A_, 2 + octave 4 + note C#, 2 + note E_, 2 + note C#, 2 + octave 3 + note B_, 1 + note G#, 1 + note F#, 1 + note G#, 1 + note B_, 3 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + octave 3 + note E_, 3 + note G#, 1 + note A_, 2 + octave 4 + note C#, 2 + octave 3 + note B_, 2 + note G#, 2 + note A_, 2 + octave 4 + note C#, 2 + note E_, 2 + note C#, 2 + note F#, 1 + note E_, 1 + note D#, 1 + note C#, 1 + sound_ret + +Music_SavoyCity_Ch3: + note_type 12, 1, 0 + rest 16 + rest 16 + rest 16 + rest 16 + volume_envelope 2, 3 + vibrato 4, 2, 2 + octave 1 + note B_, 4 + stereo_panning TRUE, FALSE + note B_, 4 + stereo_panning TRUE, TRUE + note B_, 4 + stereo_panning FALSE, TRUE + note B_, 3 + octave 2 + note C#, 1 + stereo_panning TRUE, TRUE + note D#, 4 + stereo_panning TRUE, FALSE + note D#, 4 + stereo_panning TRUE, TRUE + note D#, 3 + note E_, 1 + stereo_panning FALSE, TRUE + note F#, 3 + note E_, 1 + octave 1 + stereo_panning TRUE, TRUE + note B_, 4 + stereo_panning TRUE, FALSE + note B_, 4 + stereo_panning TRUE, TRUE + note B_, 4 + stereo_panning FALSE, TRUE + note B_, 3 + octave 2 + note C#, 1 + stereo_panning TRUE, TRUE + note F#, 4 + stereo_panning TRUE, FALSE + note E_, 4 + stereo_panning TRUE, TRUE + note D#, 4 + stereo_panning FALSE, TRUE + note C#, 2 + octave 1 + note B_, 1 + note A_, 1 + octave 8 +.mainLoop: + volume_envelope 2, 3 + octave 1 + stereo_panning TRUE, TRUE + note B_, 4 + stereo_panning TRUE, FALSE + note B_, 4 + octave 2 + stereo_panning TRUE, TRUE + note F#, 2 + note E_, 2 + octave 1 + stereo_panning FALSE, TRUE + note B_, 4 + octave 2 + stereo_panning TRUE, TRUE + note D#, 4 + stereo_panning TRUE, FALSE + note F#, 2 + note E_, 2 + octave 1 + stereo_panning TRUE, TRUE + note B_, 4 + octave 2 + stereo_panning FALSE, TRUE + note F#, 4 + octave 1 + stereo_panning TRUE, TRUE + note B_, 4 + octave 2 + stereo_panning TRUE, FALSE + note D#, 2 + note C#, 2 + octave 1 + stereo_panning TRUE, TRUE + note B_, 4 + octave 2 + stereo_panning FALSE, TRUE + note D#, 2 + note C#, 2 + octave 1 + stereo_panning TRUE, TRUE + note B_, 4 + octave 2 + stereo_panning TRUE, FALSE + note F#, 4 + stereo_panning TRUE, TRUE + note E_, 2 + note D#, 2 + stereo_panning FALSE, TRUE + note C#, 2 + octave 1 + note A_, 2 + sound_call .sub1 + octave 2 + stereo_panning TRUE, TRUE + note A_, 4 + stereo_panning TRUE, FALSE + note A_, 4 + stereo_panning TRUE, TRUE + note A_, 3 + note B_, 1 + octave 3 + stereo_panning FALSE, TRUE + note C#, 4 + octave 1 + sound_call .sub1 + note_type 12, 2, 3 + octave 3 + stereo_panning TRUE, TRUE + note C#, 4 + octave 2 + stereo_panning TRUE, FALSE + note B_, 4 + stereo_panning TRUE, TRUE + note A_, 3 + note G#, 1 + stereo_panning FALSE, TRUE + note E_, 4 + stereo_panning TRUE, TRUE + note F#, 4 + stereo_panning TRUE, FALSE + note F#, 4 + octave 3 + stereo_panning TRUE, TRUE + note C#, 2 + octave 2 + note B_, 2 + stereo_panning FALSE, TRUE + note F#, 4 + octave 3 + stereo_panning TRUE, TRUE + note C#, 4 + octave 2 + stereo_panning TRUE, FALSE + note B_, 2 + note A_, 2 + stereo_panning TRUE, TRUE + note F#, 4 + stereo_panning FALSE, TRUE + note B_, 4 + stereo_panning TRUE, TRUE + note F#, 4 + stereo_panning TRUE, FALSE + note A_, 3 + note G#, 1 + stereo_panning TRUE, TRUE + note F#, 4 + stereo_panning FALSE, TRUE + note A_, 3 + note G#, 1 + stereo_panning TRUE, TRUE + note F#, 4 + octave 3 + stereo_panning TRUE, FALSE + note C#, 1 + note C#, 2 + octave 2 + note B_, 1 + stereo_panning TRUE, TRUE + note A_, 2 + note G#, 2 + stereo_panning FALSE, TRUE + note F#, 1 + note E_, 1 + note D#, 1 + note E_, 1 + sound_call .sub2 + octave 2 + note C#, 2 + octave 1 + stereo_panning TRUE, TRUE + note A_, 2 + octave 2 + note C#, 2 + octave 1 + stereo_panning FALSE, TRUE + note B_, 2 + octave 2 + note C#, 2 + sound_call .sub2 + note_type 12, 2, 3 + octave 2 + note C#, 2 + octave 1 + stereo_panning TRUE, TRUE + note A_, 2 + octave 2 + note C#, 2 + octave 1 + stereo_panning FALSE, TRUE + note B_, 2 + octave 2 + note C#, 2 +.loop3: + stereo_panning TRUE, TRUE + note E_, 1 + note E_, 2 + note E_, 1 + stereo_panning TRUE, FALSE + note G#, 2 + octave 2 + note B_, 2 + stereo_panning TRUE, TRUE + note D#, 2 + note F#, 2 + stereo_panning FALSE, TRUE + note D#, 2 + note F#, 2 + octave 3 + stereo_panning TRUE, TRUE + note C#, 1 + octave 2 + note A_, 2 + note F#, 1 + stereo_panning TRUE, FALSE + note E_, 2 + note F#, 2 + stereo_panning TRUE, TRUE + note D#, 2 + note F#, 2 + stereo_panning FALSE, TRUE + note E_, 2 + note F#, 2 + sound_loop 2, .loop3 + octave 1 + stereo_panning TRUE, TRUE + note B_, 4 + stereo_panning TRUE, FALSE + note B_, 4 + stereo_panning TRUE, TRUE + note B_, 4 + stereo_panning FALSE, TRUE + note B_, 3 + octave 2 + note C#, 1 + stereo_panning TRUE, TRUE + note D#, 4 + stereo_panning TRUE, FALSE + note D#, 4 + stereo_panning TRUE, TRUE + note D#, 3 + note E_, 1 + stereo_panning FALSE, TRUE + note F#, 3 + note E_, 1 + octave 1 + stereo_panning TRUE, TRUE + note B_, 4 + stereo_panning TRUE, FALSE + note B_, 4 + stereo_panning TRUE, TRUE + note B_, 4 + stereo_panning FALSE, TRUE + note B_, 3 + octave 2 + note C#, 1 + stereo_panning TRUE, TRUE + note F#, 4 + stereo_panning TRUE, FALSE + note E_, 4 + stereo_panning TRUE, TRUE + note D#, 4 + stereo_panning FALSE, TRUE + note C#, 2 + octave 1 + note B_, 1 + note A_, 1 + stereo_panning TRUE, TRUE + note B_, 4 + stereo_panning TRUE, FALSE + note B_, 4 + octave 2 + stereo_panning TRUE, TRUE + note F#, 2 + note E_, 2 + octave 1 + stereo_panning FALSE, TRUE + note B_, 4 + octave 2 + stereo_panning TRUE, TRUE + note D#, 4 + stereo_panning TRUE, FALSE + note F#, 2 + note E_, 2 + octave 1 + stereo_panning TRUE, TRUE + note B_, 4 + octave 2 + stereo_panning FALSE, TRUE + note F#, 4 + octave 1 + stereo_panning TRUE, TRUE + note B_, 4 + octave 2 + stereo_panning TRUE, FALSE + note D#, 2 + note C#, 2 + octave 1 + stereo_panning TRUE, TRUE + note B_, 4 + octave 2 + stereo_panning FALSE, TRUE + note D#, 2 + note C#, 2 + octave 1 + stereo_panning TRUE, TRUE + note B_, 4 + octave 2 + stereo_panning TRUE, FALSE + note F#, 4 + stereo_panning TRUE, TRUE + note E_, 2 + note D#, 2 + stereo_panning FALSE, TRUE + note C#, 2 + octave 1 + note A_, 2 + octave 8 + sound_loop 0, .mainLoop + +.sub1: + octave 2 + stereo_panning TRUE, TRUE + note F#, 4 + stereo_panning TRUE, FALSE + note F#, 4 + stereo_panning TRUE, TRUE + note F#, 4 + stereo_panning FALSE, TRUE + note F#, 3 + note G#, 1 + octave 1 + sound_ret + +.sub2: + octave 1 + stereo_panning TRUE, TRUE + note B_, 1 + note B_, 2 + note B_, 1 + octave 2 + stereo_panning TRUE, FALSE + note D#, 2 + note F#, 2 + octave 1 + stereo_panning TRUE, TRUE + note A_, 2 + octave 2 + note C#, 2 + octave 1 + stereo_panning FALSE, TRUE + note A_, 2 + octave 2 + note C#, 2 + stereo_panning TRUE, TRUE + note G#, 1 + note E_, 2 + note C#, 1 + octave 1 + stereo_panning TRUE, FALSE + note B_, 2 + octave 2 + sound_ret + +Music_SavoyCity_Ch4: + toggle_noise 0 + drum_speed 12 + rest 16 + rest 16 + rest 16 + rest 16 + octave 5 +.loop2: + toggle_noise + toggle_noise 3 + drum_note 2, 4 + drum_note 2, 4 + drum_note 2, 3 + drum_note 2, 1 + drum_note 3, 2 + drum_note 3, 2 + sound_loop 3, .loop2 + toggle_noise + toggle_noise 3 + drum_note 2, 4 + drum_note 2, 4 + drum_note 2, 1 + drum_note 2, 1 + drum_note 2, 1 + drum_note 2, 1 + drum_note 3, 1 + drum_note 3, 1 + drum_note 3, 1 + drum_note 3, 1 + octave 8 +.mainLoop: + toggle_noise + toggle_noise 3 + octave 5 +.loop1: + toggle_noise + toggle_noise 3 + drum_note 12, 4 + octave 6 + drum_note 3, 4 + drum_note 2, 4 + drum_note 3, 4 + drum_note 2, 4 + drum_note 3, 4 + drum_note 2, 2 + drum_note 2, 2 + drum_note 3, 2 + drum_note 3, 1 + drum_note 3, 1 + drum_note 2, 3 + drum_note 2, 1 + drum_note 3, 3 + drum_note 3, 1 + drum_note 2, 3 + drum_note 2, 1 + drum_note 3, 3 + drum_note 3, 1 + drum_note 2, 3 + drum_note 2, 1 + drum_note 3, 3 + drum_note 3, 1 + drum_note 2, 2 + drum_note 2, 1 + drum_note 2, 1 + drum_note 3, 1 + drum_note 3, 1 + drum_note 3, 1 + drum_note 3, 1 + sound_call .sub1 + octave 5 + sound_loop 3, .loop1 + drum_speed 12 + octave 6 + toggle_noise + toggle_noise 3 + drum_note 2, 2 + drum_note 2, 1 + drum_note 2, 1 + drum_note 3, 3 + drum_note 3, 1 + drum_note 2, 2 + drum_note 2, 1 + drum_note 2, 1 + drum_note 3, 3 + drum_note 3, 1 + drum_note 2, 2 + drum_note 2, 1 + drum_note 2, 1 + drum_note 3, 3 + drum_note 3, 1 + drum_note 2, 2 + drum_note 2, 1 + drum_note 2, 1 + drum_note 3, 1 + drum_note 3, 1 + drum_note 3, 1 + drum_note 3, 1 + drum_note 2, 1 + drum_note 2, 2 + drum_note 2, 1 + drum_note 3, 2 + drum_note 3, 2 + drum_note 2, 1 + drum_note 2, 2 + drum_note 2, 1 + drum_note 3, 2 + drum_note 3, 2 + rest 16 + octave 8 + sound_loop 0, .mainLoop + +.sub1: + toggle_noise + toggle_noise 3 + drum_note 2, 2 + drum_note 2, 1 + drum_note 2, 1 + drum_note 3, 3 + drum_note 3, 1 + drum_note 2, 2 + drum_note 2, 1 + drum_note 2, 1 + drum_note 3, 3 + drum_note 3, 1 + drum_note 2, 2 + drum_note 2, 1 + drum_note 2, 1 + drum_note 3, 3 + drum_note 3, 1 + drum_note 2, 2 + drum_note 2, 1 + drum_note 2, 1 + drum_note 3, 1 + drum_note 3, 1 + drum_note 3, 1 + drum_note 3, 1 + drum_note 2, 1 + drum_note 2, 2 + drum_note 2, 1 + drum_note 3, 2 + drum_note 3, 2 + drum_note 2, 1 + drum_note 2, 2 + drum_note 2, 1 + drum_note 3, 2 + drum_note 3, 2 + drum_note 2, 1 + drum_note 2, 2 + drum_note 2, 1 + drum_note 3, 2 + drum_note 3, 2 + drum_note 2, 2 + drum_note 2, 1 + drum_note 2, 1 + drum_note 3, 1 + drum_note 3, 1 + drum_note 3, 1 + drum_note 3, 1 + sound_ret diff --git a/audio/music_pointers.asm b/audio/music_pointers.asm index cdd2995..06bad1f 100644 --- a/audio/music_pointers.asm +++ b/audio/music_pointers.asm @@ -123,4 +123,5 @@ Music: dba Music_CoralCity dba Music_SepiaCity dba Music_CrystalCrater + dba Music_SavoyCity assert_table_length NUM_MUSIC_SONGS diff --git a/constants/music_constants.asm b/constants/music_constants.asm index b4ff64a..eafb846 100644 --- a/constants/music_constants.asm +++ b/constants/music_constants.asm @@ -121,6 +121,7 @@ const MUSIC_CORALCITY ; 74 const MUSIC_SEPIACITY ; 75 const MUSIC_CRYSTALCRATER ; 76 + const MUSIC_SAVOYCITY ; 77 DEF NUM_MUSIC_SONGS EQU const_value ; GetMapMusic picks music for this value (see home/map.asm) diff --git a/data/maps/maps.asm b/data/maps/maps.asm index 6dfa43a..03902fd 100644 --- a/data/maps/maps.asm +++ b/data/maps/maps.asm @@ -718,28 +718,28 @@ MapGroup_OldCity: map OldCity, TILESET_NIHON_OLD, TOWN, LANDMARK_OLD_CITY, MUSIC_SEPIACITY, TRUE, PALETTE_AUTO, FISHGROUP_POND map OldCityPokecenter1F, TILESET_POKECENTER, INDOOR, LANDMARK_OLD_CITY, MUSIC_POKEMON_CENTER, FALSE, PALETTE_DAY, FISHGROUP_NONE map OldMart, TILESET_NIHON_MART, INDOOR, LANDMARK_OLD_CITY, MUSIC_MART, FALSE, PALETTE_DAY, FISHGROUP_NONE - map HoneyGrandmasHouse, TILESET_TRADITIONAL_HOUSE, INDOOR, LANDMARK_OLD_CITY, MUSIC_VIOLET_CITY, FALSE, PALETTE_DAY, FISHGROUP_NONE - map OldCityEarlsHouse, TILESET_TRADITIONAL_HOUSE, INDOOR, LANDMARK_OLD_CITY, MUSIC_VIOLET_CITY, FALSE, PALETTE_DAY, FISHGROUP_NONE - map OldCityFamilyHouse, TILESET_TRADITIONAL_HOUSE, INDOOR, LANDMARK_OLD_CITY, MUSIC_VIOLET_CITY, FALSE, PALETTE_DAY, FISHGROUP_NONE - map SepiaSchool, TILESET_LAB, INDOOR, LANDMARK_OLD_CITY, MUSIC_VIOLET_CITY, FALSE, PALETTE_DAY, FISHGROUP_NONE + map HoneyGrandmasHouse, TILESET_TRADITIONAL_HOUSE, INDOOR, LANDMARK_OLD_CITY, MUSIC_SEPIACITY, FALSE, PALETTE_DAY, FISHGROUP_NONE + map OldCityEarlsHouse, TILESET_TRADITIONAL_HOUSE, INDOOR, LANDMARK_OLD_CITY, MUSIC_SEPIACITY, FALSE, PALETTE_DAY, FISHGROUP_NONE + map OldCityFamilyHouse, TILESET_TRADITIONAL_HOUSE, INDOOR, LANDMARK_OLD_CITY, MUSIC_SEPIACITY, FALSE, PALETTE_DAY, FISHGROUP_NONE + map SepiaSchool, TILESET_LAB, INDOOR, LANDMARK_OLD_CITY, MUSIC_SEPIACITY, FALSE, PALETTE_DAY, FISHGROUP_NONE map OldCityGym, TILESET_TOWER, INDOOR, LANDMARK_OLD_CITY, MUSIC_GYM, FALSE, PALETTE_DAY, FISHGROUP_NONE - map OldCityMuseum, TILESET_TOWER, INDOOR, LANDMARK_OLD_CITY, MUSIC_VIOLET_CITY, FALSE, PALETTE_DAY, FISHGROUP_NONE + map OldCityMuseum, TILESET_TOWER, INDOOR, LANDMARK_OLD_CITY, MUSIC_SEPIACITY, FALSE, PALETTE_DAY, FISHGROUP_NONE map PokemonPagoda1F, TILESET_TOWER, INDOOR, LANDMARK_POKEMON_PAGODA, MUSIC_SPROUT_TOWER, FALSE, PALETTE_DAY, FISHGROUP_NONE map PokemonPagoda2F, TILESET_TOWER, INDOOR, LANDMARK_POKEMON_PAGODA, MUSIC_SPROUT_TOWER, FALSE, PALETTE_DAY, FISHGROUP_NONE map PokemonPagoda3F, TILESET_TOWER, INDOOR, LANDMARK_POKEMON_PAGODA, MUSIC_SPROUT_TOWER, FALSE, PALETTE_DAY, FISHGROUP_NONE map PokemonPagoda4F, TILESET_TOWER, INDOOR, LANDMARK_POKEMON_PAGODA, MUSIC_SPROUT_TOWER, FALSE, PALETTE_DAY, FISHGROUP_NONE map PokemonPagoda5F, TILESET_TOWER, INDOOR, LANDMARK_POKEMON_PAGODA, MUSIC_SPROUT_TOWER, FALSE, PALETTE_DAY, FISHGROUP_NONE map Route50, TILESET_NIHON_OLD, ROUTE, LANDMARK_ROUTE_50, MUSIC_PEACEFULTHEME, TRUE, PALETTE_AUTO, FISHGROUP_NONE - map JackysHouse, TILESET_HOUSE, INDOOR, LANDMARK_ROUTE_50, MUSIC_VIOLET_CITY, FALSE, PALETTE_DAY, FISHGROUP_NONE + map JackysHouse, TILESET_HOUSE, INDOOR, LANDMARK_ROUTE_50, MUSIC_SEPIACITY, FALSE, PALETTE_DAY, FISHGROUP_NONE assert_table_length NUM_OLD_CITY_MAPS MapGroup_SavoyCity: table_width MAP_LENGTH, MapGroup_SavoyCity - map SavoyCity, TILESET_NIHON_WEST, TOWN, LANDMARK_SAVOY_CITY, MUSIC_VERMILION_CITY, FALSE, PALETTE_AUTO, FISHGROUP_SHORE + map SavoyCity, TILESET_NIHON_WEST, TOWN, LANDMARK_SAVOY_CITY, MUSIC_SAVOYCITY, FALSE, PALETTE_AUTO, FISHGROUP_SHORE map Route50SavoyCityGate, TILESET_NIHON_GATE, GATE, LANDMARK_ROUTE_50, MUSIC_PEACEFULTHEME, FALSE, PALETTE_DAY, FISHGROUP_NONE map SavoyCityPokecenter1F, TILESET_POKECENTER, INDOOR, LANDMARK_SAVOY_CITY, MUSIC_POKEMON_CENTER, FALSE, PALETTE_DAY, FISHGROUP_NONE - map SavoyCityBigHouse1, TILESET_PLAYERS_HOUSE, INDOOR, LANDMARK_SAVOY_CITY, MUSIC_VERMILION_CITY, FALSE, PALETTE_DAY, FISHGROUP_NONE - map SavoyCityBigHouse2, TILESET_PLAYERS_HOUSE, INDOOR, LANDMARK_SAVOY_CITY, MUSIC_VERMILION_CITY, FALSE, PALETTE_DAY, FISHGROUP_NONE + map SavoyCityBigHouse1, TILESET_PLAYERS_HOUSE, INDOOR, LANDMARK_SAVOY_CITY, MUSIC_SAVOYCITY, FALSE, PALETTE_DAY, FISHGROUP_NONE + map SavoyCityBigHouse2, TILESET_PLAYERS_HOUSE, INDOOR, LANDMARK_SAVOY_CITY, MUSIC_SAVOYCITY, FALSE, PALETTE_DAY, FISHGROUP_NONE map SavoyCityRocketBlockedHouse, TILESET_PLAYERS_HOUSE, INDOOR, LANDMARK_SAVOY_CITY, MUSIC_VERMILION_CITY, FALSE, PALETTE_DAY, FISHGROUP_NONE assert_table_length NUM_SAVOY_CITY_MAPS From c18f3871bdc688a1b056a60f325f65956d91502d Mon Sep 17 00:00:00 2001 From: Misty Date: Sat, 25 Jan 2025 16:09:06 -0500 Subject: [PATCH 8/8] Fix Audio.asm bank 1000 GIGABYTES MORE RAM TO LUCI --- audio.asm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/audio.asm b/audio.asm index 63ea9d8..5b22aca 100644 --- a/audio.asm +++ b/audio.asm @@ -166,6 +166,9 @@ INCLUDE "audio/music/NorthCity.asm" INCLUDE "audio/music/Tanoby01.asm" INCLUDE "audio/music/mart.asm" INCLUDE "audio/music/SepiaCity.asm" + +SECTION "New Songs 2", ROMX + INCLUDE "audio/music/CoralCity.asm" INCLUDE "audio/music/CrystalCrater.asm"