diff --git a/data/maps/objects/MtMoonSquare.asm b/data/maps/objects/MtMoonSquare.asm index 38d9555c..079254c0 100644 --- a/data/maps/objects/MtMoonSquare.asm +++ b/data/maps/objects/MtMoonSquare.asm @@ -8,11 +8,11 @@ MtMoonSquare_Object: warp_event 11, 5, MT_MOON_SQUARE_HOUSE, 2 def_bg_events - bg_event 15, 5, 2 ; Sign + bg_event 15, 5, 4 ; Sign def_object_events object_event 7, 5, SPRITE_FAIRY, WALK, ANY_DIR, 1 ; person - object_event 5, 4, SPRITE_FAIRY, WALK, ANY_DIR, 1 ; person - object_event 4, 6, 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, 3 ; person def_warps_to MT_MOON_SQUARE diff --git a/data/maps/objects/RedsHouse2F.asm b/data/maps/objects/RedsHouse2F.asm index b99d48e8..d673e2b9 100644 --- a/data/maps/objects/RedsHouse2F.asm +++ b/data/maps/objects/RedsHouse2F.asm @@ -5,7 +5,9 @@ RedsHouse2F_Object: warp_event 7, 1, REDS_HOUSE_1F, 3 ;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, 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 diff --git a/engine/battle/core.asm b/engine/battle/core.asm index 7fc65e53..98d50408 100644 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -970,8 +970,8 @@ TrainerBattleVictory: call DelayFrames call PrintEndBattleText ld a, [wCurMap] - cp BATTLE_TENT - ret z ; We will give it later ;) +; 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 ;) ; win money ld hl, MoneyForWinningText call PrintText diff --git a/scripts/BattleTent.asm b/scripts/BattleTent.asm index d134b884..12c1a266 100644 --- a/scripts/BattleTent.asm +++ b/scripts/BattleTent.asm @@ -597,22 +597,51 @@ BattleTentGuy_After: ld hl, BattleTentSeeYouAgain call PrintText 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: db $8 - ld a, [wBTStreakCnt] + ld a, [wBTStreakCnt] ; The streak counter is still used for message continuity. and a - ld hl, BattleTentGuy2_Streak - jr nz, .skip - inc a - ld [wBTStreakCnt], a - ld hl, BattleTentGuy2_Init - jr .skip2 -.skip - cp 11 - jr nz, .skip2 + + ; Old System +; ld hl, BattleTentGuy2_Streak +; jr nz, .skip +; inc a +; ld [wBTStreakCnt], a +; ld hl, BattleTentGuy2_Init +; jr .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 -.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 jp TextScriptEnd @@ -692,12 +721,14 @@ BattleTentWelcome: para "Here, TRAINERs" line "from far and" cont "wide come to" - cont "face a gauntlet" - cont "of 10 TRAINERs!" + ;cont "face a gauntlet" + ;cont "of 10 TRAINERs!" + cont "spar against" + cont "one another!" - para "If you win them" - line "all, you win" - cont "a prize!" + ;para "If you win them" + ;line "all, you win" + ;cont "a prize!" para "Would you like" line "to participate?" @@ -778,20 +809,32 @@ BattleTentGuy2_Init: para "Good luck!" done - + +; Cut in favour of a different system. BattleTentGuy2_Streak: - text "Opponent No.@" ; could be a №? - text_decimal wBTStreakCnt, 1, 2 - text_start - line "is up next." - para "Good luck!" +; text "Opponent No.@" ; could be a №? +; text_decimal wBTStreakCnt, 1, 2 +; text_start +; line "is up next." +; para "Good luck!" +; done + text "Here comes a" + line "new challenger!" ; I really like fighting games. done - -BattleTentGuy2_Win: + +BattleTentGuy2_Continue: text "Congratulations!" - para "You have defeated" - line "all 10 opponents!" + para "Do you want to" + line "continue?" + prompt + +BattleTentGuy2_Win: + ;text "Congratulations!" + text "Well done!" + + ;para "You have defeated" + ;line "all 10 opponents!" para "Please go back to" line "the counter to" diff --git a/scripts/MtMoonSquare.asm b/scripts/MtMoonSquare.asm index 0072d646..cc150d80 100644 --- a/scripts/MtMoonSquare.asm +++ b/scripts/MtMoonSquare.asm @@ -2,6 +2,8 @@ MtMoonSquare_Script: jp EnableAutoTextBoxDrawing MtMoonSquare_TextPointers: + dw MtMoonSquareClefairy + dw MtMoonSquareClefairy dw MtMoonSquareClefairy dw MtMoonSquareSign