Fighting Dojo script revamp

This restructures the Fighting Dojo to match the new map, as well as add a few more features and safety mechanisms.
- Koichi, the Karate Master, now plays the Gym Leader theme when fought.
- Hitmontop is now an optional reward.
- Post-Game Rematch is available in addition to the gym scaling to be consistent with other Gym Leaders.
- A safety lock is on the Poke Balls prior to defeating the Karate Master, as the new structure now demands it. Indeed, this is why the reward area in vanilla is like that.
- Architecturally, there is now only one EVENT_GOT_HITMON constant, which is all that was actually needed in the vanilla game. Extreme microoptimisation, as event constants appear to be 16-bit.
This commit is contained in:
Llinos Evans 2023-06-27 21:09:38 +01:00
parent 18dd9715d0
commit 262c862a76
8 changed files with 161 additions and 22 deletions

View file

@ -384,6 +384,7 @@ PokemonMansion1FHS:
FightingDojoHS:
db FIGHTING_DOJO, $06, SHOW ; HS_FIGHTING_DOJO_GIFT_1
db FIGHTING_DOJO, $07, SHOW ; HS_FIGHTING_DOJO_GIFT_2
db FIGHTING_DOJO, $08, SHOW ; HS_FIGHTING_DOJO_GIFT_3
SilphCo1FHS:
db SILPH_CO_1F, $01, HIDE ; HS_SILPH_CO_1F_RECEPTIONIST
PowerPlantHS:

View file

@ -1,5 +1,5 @@
FightingDojo_Object:
db $3 ; border block
db $0 ; border block
def_warp_events
warp_event 4, 11, LAST_MAP, 2
@ -8,12 +8,13 @@ FightingDojo_Object:
def_bg_events
def_object_events
object_event 6, 3, SPRITE_HIKER, STAY, DOWN, 1, OPP_BLACKBELT, 1 ; koichi
object_event 3, 4, SPRITE_HIKER, STAY, RIGHT, 2, OPP_BLACKBELT, 9
object_event 3, 6, SPRITE_HIKER, STAY, RIGHT, 3, OPP_BLACKBELT, 10
object_event 6, 5, SPRITE_HIKER, STAY, LEFT, 4, OPP_BLACKBELT, 11
object_event 6, 8, SPRITE_HIKER, STAY, LEFT, 5, OPP_BLACKBELT, 12
object_event 5, 1, SPRITE_POKE_BALL, STAY, NONE, 6 ; person
object_event 7, 1, SPRITE_POKE_BALL, STAY, NONE, 7 ; person
object_event 4, 1, SPRITE_HIKER, STAY, DOWN, 1, OPP_BLACKBELT, 1 ; koichi
object_event 3, 3, SPRITE_HIKER, STAY, RIGHT, 2, OPP_BLACKBELT, 11
object_event 3, 5, SPRITE_HIKER, STAY, RIGHT, 3, OPP_BLACKBELT, 12
object_event 6, 4, SPRITE_HIKER, STAY, LEFT, 4, OPP_BLACKBELT, 13
object_event 6, 6, SPRITE_HIKER, STAY, LEFT, 5, OPP_BLACKBELT, 14
object_event 5, 1, SPRITE_POKE_BALL, STAY, NONE, 6 ; Hitmonlee
object_event 7, 1, SPRITE_POKE_BALL, STAY, NONE, 7 ; Hitmonchan
object_event 6, 1, SPRITE_POKE_BALL, STAY, NONE, 8 ; Hitmontop
def_warps_to FIGHTING_DOJO