mirror of
https://github.com/thornAvery/kep-hack.git
synced 2025-09-16 18:30:50 +12:00
Fix Mt Moon Square NPCs, new Battle Tent system
This fixes the issue with Mt Moon Square's NPC text and changes the Battle Tent to a continuous system. The Battle Tent's new system circumvents the issue with wBTStreakCnt while providing the player with more agency. They'll get constant prize money after each battle and can abandon the challenge at any time. It may feel more grindy but in my opinion works just as well.
This commit is contained in:
parent
4262a0de0d
commit
48b25069f8
|
@ -8,11 +8,11 @@ MtMoonSquare_Object:
|
||||||
warp_event 11, 5, MT_MOON_SQUARE_HOUSE, 2
|
warp_event 11, 5, MT_MOON_SQUARE_HOUSE, 2
|
||||||
|
|
||||||
def_bg_events
|
def_bg_events
|
||||||
bg_event 15, 5, 2 ; Sign
|
bg_event 15, 5, 4 ; Sign
|
||||||
|
|
||||||
def_object_events
|
def_object_events
|
||||||
object_event 7, 5, SPRITE_FAIRY, WALK, ANY_DIR, 1 ; person
|
object_event 7, 5, SPRITE_FAIRY, WALK, ANY_DIR, 1 ; person
|
||||||
object_event 5, 4, SPRITE_FAIRY, WALK, ANY_DIR, 1 ; person
|
object_event 5, 4, SPRITE_FAIRY, WALK, ANY_DIR, 2 ; person
|
||||||
object_event 4, 6, SPRITE_FAIRY, WALK, ANY_DIR, 1 ; person
|
object_event 4, 6, SPRITE_FAIRY, WALK, ANY_DIR, 3 ; person
|
||||||
|
|
||||||
def_warps_to MT_MOON_SQUARE
|
def_warps_to MT_MOON_SQUARE
|
||||||
|
|
|
@ -5,7 +5,9 @@ RedsHouse2F_Object:
|
||||||
warp_event 7, 1, REDS_HOUSE_1F, 3
|
warp_event 7, 1, REDS_HOUSE_1F, 3
|
||||||
;warp_event 5, 1, SILPH_GAUNTLET_7F, 1 ; - Test Chief
|
;warp_event 5, 1, SILPH_GAUNTLET_7F, 1 ; - Test Chief
|
||||||
;warp_event 5, 1, SILPH_CO_11F, 1 ; - Test Omega & Giovanni
|
;warp_event 5, 1, SILPH_CO_11F, 1 ; - Test Omega & Giovanni
|
||||||
warp_event 5, 1, ROCKET_HIDEOUT_B4F, 2 ; - Test Giovanni 1
|
;warp_event 5, 1, ROCKET_HIDEOUT_B4F, 2 ; - Test Giovanni 1
|
||||||
|
;warp_event 5, 1, MT_MOON_SQUARE, 1 ; - Test Shop, NPCs, and Crater
|
||||||
|
warp_event 5, 1, CELESTE_HILL, 1 ; - Test Birds
|
||||||
|
|
||||||
def_bg_events
|
def_bg_events
|
||||||
|
|
||||||
|
|
|
@ -970,8 +970,8 @@ TrainerBattleVictory:
|
||||||
call DelayFrames
|
call DelayFrames
|
||||||
call PrintEndBattleText
|
call PrintEndBattleText
|
||||||
ld a, [wCurMap]
|
ld a, [wCurMap]
|
||||||
cp BATTLE_TENT
|
; cp BATTLE_TENT - originally the battle tent would not do this, but with the new system, it does.
|
||||||
ret z ; We will give it later ;)
|
; ret z ; We will give it later ;)
|
||||||
; win money
|
; win money
|
||||||
ld hl, MoneyForWinningText
|
ld hl, MoneyForWinningText
|
||||||
call PrintText
|
call PrintText
|
||||||
|
|
|
@ -597,22 +597,51 @@ BattleTentGuy_After:
|
||||||
ld hl, BattleTentSeeYouAgain
|
ld hl, BattleTentSeeYouAgain
|
||||||
call PrintText
|
call PrintText
|
||||||
jp TextScriptEnd
|
jp TextScriptEnd
|
||||||
|
|
||||||
|
; The Battle Tent has a new progression system for two reasons:
|
||||||
|
; 1) The battles are all trainer-based now, so money is given after battle.
|
||||||
|
; 2) wBTStreakCnt would not increment properly for unknown reasons, making it infinite.
|
||||||
|
; Thus, now the player can constantly battle and abandon the challenge when they want.
|
||||||
|
; Arguably a better system, but I do wish the counter incremented...
|
||||||
BattleTentGuy2:
|
BattleTentGuy2:
|
||||||
db $8
|
db $8
|
||||||
ld a, [wBTStreakCnt]
|
ld a, [wBTStreakCnt] ; The streak counter is still used for message continuity.
|
||||||
and a
|
and a
|
||||||
ld hl, BattleTentGuy2_Streak
|
|
||||||
jr nz, .skip
|
; Old System
|
||||||
inc a
|
; ld hl, BattleTentGuy2_Streak
|
||||||
ld [wBTStreakCnt], a
|
; jr nz, .skip
|
||||||
ld hl, BattleTentGuy2_Init
|
; inc a
|
||||||
jr .skip2
|
; ld [wBTStreakCnt], a
|
||||||
.skip
|
; ld hl, BattleTentGuy2_Init
|
||||||
cp 11
|
; jr .skip2
|
||||||
jr nz, .skip2
|
;.skip
|
||||||
|
; cp 11
|
||||||
|
; jr nz, .skip2
|
||||||
|
|
||||||
|
; New System
|
||||||
|
ld hl, BattleTentGuy2_Streak ; The message has been changed appropriately down below.
|
||||||
|
jr z, .skip2
|
||||||
|
xor a ; The D-Pad is locked at this point, so blank out wJoyIgnore to allow manual option selection.
|
||||||
|
ld [wJoyIgnore], a
|
||||||
|
ld hl, BattleTentGuy2_Continue ; Continue prompt.
|
||||||
|
call PrintText
|
||||||
|
call YesNoChoice
|
||||||
|
ld a, [wCurrentMenuItem]
|
||||||
|
and a
|
||||||
|
jr nz, .refused ; If 0, move to refused.
|
||||||
|
jr .cont ; Otherwise, continue as if nothing happened.
|
||||||
|
.refused
|
||||||
ld hl, BattleTentGuy2_Win
|
ld hl, BattleTentGuy2_Win
|
||||||
.skip2
|
call PrintText
|
||||||
|
ld a, 9 ; Load BattleTent_PlayerWalkBack, which takes it from here.
|
||||||
|
ld [wBattleTentCurScript], a
|
||||||
|
jp TextScriptEnd
|
||||||
|
.cont
|
||||||
|
ld hl, BattleTentGuy2_Init ; Load the next battle.
|
||||||
|
jr .skip2
|
||||||
|
|
||||||
|
.skip2 ; This handles BattleTentGuy2_Streak and BattleTentGuy2_Init at once.
|
||||||
call PrintText
|
call PrintText
|
||||||
jp TextScriptEnd
|
jp TextScriptEnd
|
||||||
|
|
||||||
|
@ -692,12 +721,14 @@ BattleTentWelcome:
|
||||||
para "Here, TRAINERs"
|
para "Here, TRAINERs"
|
||||||
line "from far and"
|
line "from far and"
|
||||||
cont "wide come to"
|
cont "wide come to"
|
||||||
cont "face a gauntlet"
|
;cont "face a gauntlet"
|
||||||
cont "of 10 TRAINERs!"
|
;cont "of 10 TRAINERs!"
|
||||||
|
cont "spar against"
|
||||||
|
cont "one another!"
|
||||||
|
|
||||||
para "If you win them"
|
;para "If you win them"
|
||||||
line "all, you win"
|
;line "all, you win"
|
||||||
cont "a prize!"
|
;cont "a prize!"
|
||||||
|
|
||||||
para "Would you like"
|
para "Would you like"
|
||||||
line "to participate?"
|
line "to participate?"
|
||||||
|
@ -778,20 +809,32 @@ BattleTentGuy2_Init:
|
||||||
|
|
||||||
para "Good luck!"
|
para "Good luck!"
|
||||||
done
|
done
|
||||||
|
|
||||||
|
; Cut in favour of a different system.
|
||||||
BattleTentGuy2_Streak:
|
BattleTentGuy2_Streak:
|
||||||
text "Opponent No.@" ; could be a №?
|
; text "Opponent No.@" ; could be a №?
|
||||||
text_decimal wBTStreakCnt, 1, 2
|
; text_decimal wBTStreakCnt, 1, 2
|
||||||
text_start
|
; text_start
|
||||||
line "is up next."
|
; line "is up next."
|
||||||
para "Good luck!"
|
; para "Good luck!"
|
||||||
|
; done
|
||||||
|
text "Here comes a"
|
||||||
|
line "new challenger!" ; I really like fighting games.
|
||||||
done
|
done
|
||||||
|
|
||||||
BattleTentGuy2_Win:
|
BattleTentGuy2_Continue:
|
||||||
text "Congratulations!"
|
text "Congratulations!"
|
||||||
|
|
||||||
para "You have defeated"
|
para "Do you want to"
|
||||||
line "all 10 opponents!"
|
line "continue?"
|
||||||
|
prompt
|
||||||
|
|
||||||
|
BattleTentGuy2_Win:
|
||||||
|
;text "Congratulations!"
|
||||||
|
text "Well done!"
|
||||||
|
|
||||||
|
;para "You have defeated"
|
||||||
|
;line "all 10 opponents!"
|
||||||
|
|
||||||
para "Please go back to"
|
para "Please go back to"
|
||||||
line "the counter to"
|
line "the counter to"
|
||||||
|
|
|
@ -2,6 +2,8 @@ MtMoonSquare_Script:
|
||||||
jp EnableAutoTextBoxDrawing
|
jp EnableAutoTextBoxDrawing
|
||||||
|
|
||||||
MtMoonSquare_TextPointers:
|
MtMoonSquare_TextPointers:
|
||||||
|
dw MtMoonSquareClefairy
|
||||||
|
dw MtMoonSquareClefairy
|
||||||
dw MtMoonSquareClefairy
|
dw MtMoonSquareClefairy
|
||||||
dw MtMoonSquareSign
|
dw MtMoonSquareSign
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue