kep-hack/scripts/SilphGauntlet4F.asm
Martha Schilling 508a4e790e The Big One.
Whoa, this one's been in the making for a while now. This one has been my attempt to fix as much as I could within a little over a month. Here's what I've got for you.

- Fixed a bug in Silph Gauntlet where the trainers would not see you unless you spoke to them

- Removed the unnecessary Gawarhed and Wugtrio static encounters. In what was once Gawarhed's place is a Rare Candy.

- Implemented a working ferry system (huge thanks to Red++) that allows travelling to Faraway Island and Citrine City with the right tickets. Currently both maps use a copy of the SS Anne, which may be revised later.

- Bittybat, Magnetite and Burgela have been removed to fix a Pokedex bug where entries wouldn't display correctly if the total number wasn't a multiple of 8.

- Fixed a bug where fishing up a Wiglett and Wugtrio would play the trainer battle and Champion battle themes respectively

- Restructured the Pokedex a little. Don't worry, Lickitung's still number 108!

- All references to betamon in the disassembly have had their names updated to match the new Ogasawara ones

- Removed Blastyke as a Game Corner prize, replacing it with Squeamata.

- Garnet Cavern is now properly listed as a dungeon map

- Fixed an issue where trying to leave Bill's House after entering the garden would put you back in the garden

- Moved Silph Gauntlet's Beauty down 1 floor to make the number of trainers on each floor more consistent

- Finished Gauntlet 6F except for the trainer text (PvK please help)

- Gavillain's stats updated to match KEP 1.4 on the Showdown server. It's now a Dragon/Electric type with less Ice coverage.

- Fixed Clefable's and Wigglytuff's starting movesets from an earlier commit

- Fixed an ABSOLUTELY HORRIBLE, EGREGIOUSLY FRUSTRATING BUG that caused the Pokedex's seen counter to rarely update. This is what caused this commit to be delayed for so long. No joke.

- New sprites, courtesy of Albatross, for Sylveon's back sprite, Alolan Marowak, Alolan Muk, Galarian Weezing and Magnezone!

- Fixed a bug preventing the trade for Haunter from being accessed.
2023-09-19 23:34:25 +01:00

187 lines
4.3 KiB
NASM

SilphGauntlet4F_Script:
call EnableAutoTextBoxDrawing
ld hl, SilphGauntlet4FTrainerHeaders
ld de, SilphGauntlet4F_ScriptPointers
ld a, [wSilphGauntlet4FCurScript]
call ExecuteCurMapScriptInTable
ld [wSilphGauntlet4FCurScript], a
ret
SilphGauntlet4F_ScriptPointers:
dw PurifiedZoneScript
dw DisplayEnemyTrainerTextAndStartBattle
dw EndTrainerBattle
PurifiedZoneScript:
ld hl, CoordsData_PureZone
call ArePlayerCoordsInArray
jr c, .asm_60960
ld hl, wd72e
res 4, [hl]
ResetEvent EVENT_IN_PURIFIED_ZONE
jp CheckFightingMapTrainers
.asm_60960
CheckAndSetEvent EVENT_IN_PURIFIED_ZONE
ret nz
xor a
ldh [hJoyHeld], a
ld a, $f0
ld [wJoyIgnore], a
ld hl, wd72e
set 4, [hl]
predef HealParty
call GBFadeOutToWhite
call Delay3
call Delay3
call GBFadeInFromWhite
ld a, $7
ldh [hSpriteIndexOrTextID], a
call DisplayTextID
xor a
ld [wJoyIgnore], a
ret
CoordsData_PureZone:
dbmapcoord 10, 12
dbmapcoord 11, 12
dbmapcoord 10, 13
dbmapcoord 11, 13
db -1 ; end
SilphGauntlet4F_TextPointers:
dw SilphGauntlet4FText1
dw SilphGauntlet4FText2
dw SilphGauntlet4FText3
dw SilphGauntlet4FText4
dw SilphGauntlet4FText5
dw SilphGauntlet4FText6
dw PurifiedZoneText
SilphGauntlet4FTrainerHeaders:
def_trainers
SilphGauntlet4FTrainerHeader0:
trainer EVENT_BEAT_GAUNTLET_SCIENTIST, 1, SilphGauntlet4FBattleText1, SilphGauntlet4FEndBattleText1, SilphGauntlet4FAfterBattleText1
SilphGauntlet4FTrainerHeader1:
trainer EVENT_BEAT_GAUNTLET_GAMBLER, 2, SilphGauntlet4FBattleText2, SilphGauntlet4FEndBattleText2, SilphGauntlet4FAfterBattleText2
SilphGauntlet4FTrainerHeader2:
trainer EVENT_BEAT_GAUNTLET_ROCKET, 2, SilphGauntlet4FBattleText3, SilphGauntlet4FEndBattleText3, SilphGauntlet4FAfterBattleText3
SilphGauntlet4FTrainerHeader3:
trainer EVENT_BEAT_GAUNTLET_BIKER, 2, SilphGauntlet4FBattleText4, SilphGauntlet4FEndBattleText4, SilphGauntlet4FAfterBattleText4
SilphGauntlet4FTrainerHeader4:
trainer EVENT_BEAT_GAUNTLET_BURGLAR, 2, SilphGauntlet4FBattleText5, SilphGauntlet4FEndBattleText5, SilphGauntlet4FAfterBattleText5
SilphGauntlet4FTrainerHeader5:
trainer EVENT_BEAT_GAUNTLET_CHANNELER, 2, SilphGauntlet4FBattleText6, SilphGauntlet4FEndBattleText6, SilphGauntlet4FAfterBattleText6
db -1 ; end
SilphGauntlet4FText1:
text_asm
ld hl, SilphGauntlet4FTrainerHeader0
call TalkToTrainer
jp TextScriptEnd
SilphGauntlet4FBattleText1:
text_far _SilphGauntlet4FBattleText1
text_end
SilphGauntlet4FEndBattleText1:
text_far _SilphGauntlet4FEndBattleText1
text_end
SilphGauntlet4FAfterBattleText1:
text_far _SilphGauntlet4FAfterBattleText1
text_end
SilphGauntlet4FText2:
text_asm
ld hl, SilphGauntlet4FTrainerHeader1
call TalkToTrainer
jp TextScriptEnd
SilphGauntlet4FBattleText2:
text_far _SilphGauntlet4FBattleText2
text_end
SilphGauntlet4FEndBattleText2:
text_far _SilphGauntlet4FEndBattleText2
text_end
SilphGauntlet4FAfterBattleText2:
text_far _SilphGauntlet4FAfterBattleText2
text_end
SilphGauntlet4FText3:
text_asm
ld hl, SilphGauntlet4FTrainerHeader2
call TalkToTrainer
jp TextScriptEnd
SilphGauntlet4FBattleText3:
text_far _SilphGauntlet4FBattleText3
text_end
SilphGauntlet4FEndBattleText3:
text_far _SilphGauntlet4FEndBattleText3
text_end
SilphGauntlet4FAfterBattleText3:
text_far _SilphGauntlet4FAfterBattleText3
text_end
SilphGauntlet4FText4:
text_asm
ld hl, SilphGauntlet4FTrainerHeader3
call TalkToTrainer
jp TextScriptEnd
SilphGauntlet4FBattleText4:
text_far _SilphGauntlet4FBattleText4
text_end
SilphGauntlet4FEndBattleText4:
text_far _SilphGauntlet4FEndBattleText4
text_end
SilphGauntlet4FAfterBattleText4:
text_far _SilphGauntlet4FAfterBattleText4
text_end
SilphGauntlet4FText5:
text_asm
ld hl, SilphGauntlet4FTrainerHeader4
call TalkToTrainer
jp TextScriptEnd
SilphGauntlet4FBattleText5:
text_far _SilphGauntlet4FBattleText5
text_end
SilphGauntlet4FEndBattleText5:
text_far _SilphGauntlet4FEndBattleText5
text_end
SilphGauntlet4FAfterBattleText5:
text_far _SilphGauntlet4FAfterBattleText5
text_end
SilphGauntlet4FText6:
text_asm
ld hl, SilphGauntlet4FTrainerHeader5
call TalkToTrainer
jp TextScriptEnd
SilphGauntlet4FBattleText6:
text_far _SilphGauntlet4FBattleText6
text_end
SilphGauntlet4FEndBattleText6:
text_far _SilphGauntlet4FEndBattleText6
text_end
SilphGauntlet4FAfterBattleText6:
text_far _SilphGauntlet4FAfterBattleText6
text_end
PurifiedZoneText:
text_far _PurifiedZoneText
text_end