From 755ca8914d2878c6a6ef365e962d505ff9d7801e Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Tue, 31 May 2016 09:37:09 -0400 Subject: Vermilion Pokemon Center --- data/mapObjects/vermilionpokecenter.asm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'data/mapObjects') diff --git a/data/mapObjects/vermilionpokecenter.asm b/data/mapObjects/vermilionpokecenter.asm index e5d1d147..cd11d653 100755 --- a/data/mapObjects/vermilionpokecenter.asm +++ b/data/mapObjects/vermilionpokecenter.asm @@ -7,11 +7,12 @@ VermilionPokecenterObject: ; 0x5c9a9 (size=44) db $0 ; signs - db $4 ; objects + db $5 ; objects object SPRITE_NURSE, $3, $1, STAY, DOWN, $1 ; person object SPRITE_FISHER, $a, $5, STAY, NONE, $2 ; person object SPRITE_SAILOR, $5, $4, STAY, NONE, $3 ; person object SPRITE_CABLE_CLUB_WOMAN, $b, $2, STAY, DOWN, $4 ; person + object SPRITE_CHANSEY, $4, $1, STAY, DOWN, $5 ; person ; warp-to EVENT_DISP VERMILION_POKECENTER_WIDTH, $7, $3 -- cgit v1.3.1-sl0p From b7a20f13863331e15a074c91a4a1be38d27142c9 Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Tue, 31 May 2016 11:46:02 -0400 Subject: Vermilion Fan Club --- data/mapObjects/fanclub.asm | 6 +- data/map_header_banks.asm | 2 +- data/map_header_pointers.asm | 2 +- engine/bank3f.asm | 8 +- engine/items/items.asm | 2 +- engine/menu/bills_pc.asm | 2 +- engine/menu/party_menu.asm | 2 +- engine/overworld/cable_club_npc.asm | 2 +- engine/overworld/pokecenter.asm | 8 +- engine/pikachu_pic_animation.asm | 10 +- home.asm | 2 +- home/overworld.asm | 2 +- home/pikachu.asm | 6 +- main.asm | 8 +- scripts/billshouse.asm | 6 +- scripts/billshouse2.asm | 4 +- scripts/fanclub.asm | 242 ++++++++++++++++++++++++++++-------- scripts/pewterpokecenter2.asm | 2 +- text/maps/fan_club.asm | 8 +- wram.asm | 202 +++++++++++++++--------------- 20 files changed, 332 insertions(+), 194 deletions(-) (limited to 'data/mapObjects') diff --git a/data/mapObjects/fanclub.asm b/data/mapObjects/fanclub.asm index 6f65b287..cbe0cb31 100755 --- a/data/mapObjects/fanclub.asm +++ b/data/mapObjects/fanclub.asm @@ -5,14 +5,12 @@ FanClubObject: ; 0x59c97 (size=62) db $7, $2, $1, $ff db $7, $3, $1, $ff - db $2 ; signs - db $0, $1, $7 ; FanClubText7 - db $0, $6, $8 ; FanClubText8 + db $0 ; signs db $6 ; objects object SPRITE_FISHER2, $6, $3, STAY, LEFT, $1 ; person object SPRITE_GIRL, $1, $3, STAY, RIGHT, $2 ; person - object SPRITE_CLEFAIRY, $6, $4, STAY, LEFT, $3 ; person + object SPRITE_CLEFAIRY_2, $6, $4, STAY, LEFT, $3 ; person object SPRITE_SEEL, $1, $4, STAY, RIGHT, $4 ; person object SPRITE_GENTLEMAN, $3, $1, STAY, DOWN, $5 ; person object SPRITE_CABLE_CLUB_WOMAN, $5, $1, STAY, DOWN, $6 ; person diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm index 410ed3c1..5804cfd5 100644 --- a/data/map_header_banks.asm +++ b/data/map_header_banks.asm @@ -90,7 +90,7 @@ MapHeaderBanks:: ; fc3e4 (3f:43e4) db BANK(Route12Gate_h) db BANK(BillsHouse_h) db BANK(VermilionPokecenter_h) - db $16 ; db BANK(FanClub_h) + db BANK(FanClub_h) db $17 ; db BANK(VermilionMart_h) db $17 ; db BANK(VermilionGym_h) db $07 ; db BANK(VermilionHouse1_h) diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm index e1ed2a3b..6d52f36f 100644 --- a/data/map_header_pointers.asm +++ b/data/map_header_pointers.asm @@ -90,7 +90,7 @@ MapHeaderPointers:: ; fc1f2 (3f:41f2) dw Route12Gate_h dw BillsHouse_h dw VermilionPokecenter_h - dw $5a00 ; dw FanClub_h ;id=90 + dw FanClub_h ;id=90 dw $48cb ; dw VermilionMart_h dw $4910 ; dw VermilionGym_h dw $53f8 ; dw VermilionHouse1_h diff --git a/engine/bank3f.asm b/engine/bank3f.asm index c31fc986..85674ec4 100644 --- a/engine/bank3f.asm +++ b/engine/bank3f.asm @@ -27,7 +27,7 @@ Func_fc4fa:: ; fc4fa (3f:44fa) bit 4, [hl] res 4, [hl] jr nz, .asm_fc515 - call ResetPikachuAsleep + call EnablePikachuFollowingPlayer call Func_fc523 ld a, $ff ld [wSpriteStateData1 + $f2], a @@ -344,7 +344,7 @@ Func_fc6d5:: ; fc6d5 (3f:46d5) ld a, [wFontLoaded] bit 0, a jp nz, asm_fc76a - call CheckPikachuAsleep + call CheckPikachuFollowingPlayer jp nz, asm_fc76a ld a, [hl] and $7f @@ -408,7 +408,7 @@ asm_fc745: ; fc745 (3f:4745) ld hl, wSpriteStateData2 - wSpriteStateData1 add hl, bc ld [hl], a - call CheckPikachuAsleep + call CheckPikachuFollowingPlayer jr nz, .asm_fc75f ld a, [wSpriteStateData1 + $9] xor $4 @@ -1679,7 +1679,7 @@ Func_fce5a:: ; fce5a (3f:4e5a) ret Func_fce73:: ; fce73 (3f:4e73) -; function to test if a pokemon is alive? +; function to test if Pikachu is alive? xor a ld [wWhichPokemon], a ld hl, wPartyCount diff --git a/engine/items/items.asm b/engine/items/items.asm index eca9eaef..f37f9f47 100755 --- a/engine/items/items.asm +++ b/engine/items/items.asm @@ -1765,7 +1765,7 @@ ItemUsePokeflute: ; dfbd (3:5fbd) .notRoute16 cp a,PEWTER_POKECENTER jr nz,.noSnorlaxOrPikachuToWakeUp - call CheckPikachuAsleep + call CheckPikachuFollowingPlayer jr z,.noSnorlaxOrPikachuToWakeUp callab Func_fcb01 jr nc,.noSnorlaxOrPikachuToWakeUp diff --git a/engine/menu/bills_pc.asm b/engine/menu/bills_pc.asm index 97a65517..a3f6f7fc 100644 --- a/engine/menu/bills_pc.asm +++ b/engine/menu/bills_pc.asm @@ -227,7 +227,7 @@ BillsPCDeposit: ; 2156d (8:556d) jp c, BillsPCMenu callab IsThisPartymonStarterPikachu_Party jr nc, .asm_215ad - call CheckPikachuAsleep + call CheckPikachuFollowingPlayer jr z, .asm_215ad ld hl, SleepingPikachuText2 call PrintText diff --git a/engine/menu/party_menu.asm b/engine/menu/party_menu.asm index 8683d3cb..16bea473 100755 --- a/engine/menu/party_menu.asm +++ b/engine/menu/party_menu.asm @@ -53,7 +53,7 @@ RedrawPartyMenu_: ; 11886 (4:5886) ld [wWhichPokemon],a callab IsThisPartymonStarterPikachu_Party jr nc, .regularMon - call CheckPikachuAsleep + call CheckPikachuFollowingPlayer jr z, .regularMon ld a, $ff ld [hPartyMonIndex], a diff --git a/engine/overworld/cable_club_npc.asm b/engine/overworld/cable_club_npc.asm index 4170a936..f60042de 100755 --- a/engine/overworld/cable_club_npc.asm +++ b/engine/overworld/cable_club_npc.asm @@ -1,7 +1,7 @@ CableClubNPC: ; 7035 (1:7035) ld hl, CableClubNPCWelcomeText call PrintText - call CheckPikachuAsleep + call CheckPikachuFollowingPlayer jr nz, .asm_7048 CheckEvent EVENT_GOT_POKEDEX jp nz, .receivedPokedex diff --git a/engine/overworld/pokecenter.asm b/engine/overworld/pokecenter.asm index 3024ff7b..b9307517 100755 --- a/engine/overworld/pokecenter.asm +++ b/engine/overworld/pokecenter.asm @@ -2,7 +2,7 @@ DisplayPokemonCenterDialogue_: ; 6d97 (1:6d97) ld a, [wCurMap] cp PEWTER_POKECENTER jr nz, .regularCenter - call CheckPikachuAsleep + call CheckPikachuFollowingPlayer jr z, .regularCenter ld hl, LooksContentText ; if pikachu is sleeping, don't heal call PrintText @@ -27,7 +27,7 @@ DisplayPokemonCenterDialogue_: ; 6d97 (1:6d97) call SetLastBlackoutMap callab IsStarterPikachuInOurParty jr nc, .notHealingPlayerPikachu - call CheckPikachuAsleep + call CheckPikachuFollowingPlayer jr nz, .notHealingPlayerPikachu call LoadCurrentMapView call Delay3 @@ -38,7 +38,7 @@ DisplayPokemonCenterDialogue_: ; 6d97 (1:6d97) call PrintText ld c, 64 call DelayFrames - call CheckPikachuAsleep + call CheckPikachuFollowingPlayer jr nz, .playerPikachuNotOnScreen call Func_152d callab IsStarterPikachuInOurParty @@ -58,7 +58,7 @@ DisplayPokemonCenterDialogue_: ; 6d97 (1:6d97) ld [wLastMusicSoundID], a ld [wNewSoundID], a call PlaySound - call CheckPikachuAsleep + call CheckPikachuFollowingPlayer jr nz, .doNotReturnPikachu callab IsStarterPikachuInOurParty call c, Func_6eaa diff --git a/engine/pikachu_pic_animation.asm b/engine/pikachu_pic_animation.asm index a9e0650b..bfac6962 100755 --- a/engine/pikachu_pic_animation.asm +++ b/engine/pikachu_pic_animation.asm @@ -247,7 +247,7 @@ Func_fd05e: ; fd05e (3f:505e) bit 7, [hl] ld a, $1d jr z, .asm_fd0c9 - call CheckPikachuAsleep + call CheckPikachuFollowingPlayer ld a, $1e jr nz, .asm_fd0c9 jr .asm_fd096 @@ -255,7 +255,7 @@ Func_fd05e: ; fd05e (3f:505e) ld a, [wCurMap] cp PEWTER_POKECENTER jr nz, .notPewterPokecenter - call CheckPikachuAsleep + call CheckPikachuFollowingPlayer ld a, $1a jr nz, .asm_fd0c9 jr .asm_fd096 @@ -1636,7 +1636,7 @@ PikachuPewterPokecenterCheck: ; fd8d4 (3f:58d4) ld a, [wCurMap] cp PEWTER_POKECENTER ret nz - call ResetPikachuAsleep + call EnablePikachuFollowingPlayer call Func_fcff2 ret @@ -1644,7 +1644,7 @@ PikachuFanClubCheck: ; fd8e1 (3f:58e1) ld a, [wCurMap] cp POKEMON_FAN_CLUB ret nz - call ResetPikachuAsleep + call EnablePikachuFollowingPlayer call Func_fcff2 ret @@ -1652,7 +1652,7 @@ PikachuBillsHouseCheck: ; fd8ee (3f:58ee) ld a, [wCurMap] cp BILLS_HOUSE ret nz - call ResetPikachuAsleep + call EnablePikachuFollowingPlayer ret Pikachu_LoadCurrentMapViewUpdateSpritesAndDelay3: ; fd8f8 (3f:58f8) diff --git a/home.asm b/home.asm index 9f62d820..19a5b6fc 100644 --- a/home.asm +++ b/home.asm @@ -477,7 +477,7 @@ HandlePartyMenuInput:: ; 1226 (0:1226) ld [wWhichPokemon], a callab IsThisPartymonStarterPikachu_Party ; 3f:4e18 jr nc, .asm_1258 - call CheckPikachuAsleep + call CheckPikachuFollowingPlayer jr nz, .asm_128f .asm_1258 pop af diff --git a/home/overworld.asm b/home/overworld.asm index bc7ae029..21f5c1c8 100644 --- a/home/overworld.asm +++ b/home/overworld.asm @@ -1222,7 +1222,7 @@ CollisionCheckOnLand:: ; 0a1c (0:0a1c) ; if no sprite collision cp $f jr nz,.collision - call CheckPikachuAsleep + call CheckPikachuFollowingPlayer jr nz,.collision ld a,[hJoyHeld] and $2 diff --git a/home/pikachu.asm b/home/pikachu.asm index 9e0ab541..bd750773 100755 --- a/home/pikachu.asm +++ b/home/pikachu.asm @@ -30,21 +30,21 @@ Func_152d:: ; 152d (0:152d) pop hl ret -SetPikachuAsleep:: ; 153a (0:153a) +DisablePikachuFollowingPlayer:: ; 153a (0:153a) push hl ld hl, wPikachuOverworldStateFlags set 1, [hl] pop hl ret -ResetPikachuAsleep:: ; 1542 (0:1542) +EnablePikachuFollowingPlayer:: ; 1542 (0:1542) push hl ld hl, wPikachuOverworldStateFlags res 1, [hl] pop hl ret -CheckPikachuAsleep:: ; 154a (0:154a) +CheckPikachuFollowingPlayer:: ; 154a (0:154a) push hl ld hl, wPikachuOverworldStateFlags bit 1, [hl] diff --git a/main.asm b/main.asm index 7865bd4b..1144789a 100755 --- a/main.asm +++ b/main.asm @@ -1200,7 +1200,13 @@ INCLUDE "scripts/route12.asm" INCLUDE "scripts/route15.asm" INCLUDE "scripts/route16.asm" INCLUDE "scripts/route18.asm" - dr $59a00,$5a53a + +INCLUDE "data/mapHeaders/fanclub.asm" +INCLUDE "scripts/fanclub.asm" +INCLUDE "data/mapObjects/fanclub.asm" +FanClubBlocks: +INCBIN "maps/fanclub.blk" + dr $59c80,$5a53a INCLUDE "engine/overworld/saffron_guards.asm" diff --git a/scripts/billshouse.asm b/scripts/billshouse.asm index 014f5051..5d6d668f 100755 --- a/scripts/billshouse.asm +++ b/scripts/billshouse.asm @@ -62,7 +62,7 @@ BillsHouseScript2: and a ; cp SPRITE_FACING_DOWN ld de, MovementData_1e79c jr nz, .notDown - call CheckPikachuAsleep + call CheckPikachuFollowingPlayer jr nz, .asm_1e0f8 callab Func_f250b .asm_1e0f8 @@ -97,7 +97,7 @@ BillsHouseScript3: ; 1e7a6 (7:67a6) ld a, HS_BILL_POKEMON ld [wMissableObjectIndex], a predef HideObject - call CheckPikachuAsleep + call CheckPikachuFollowingPlayer jr z, .asm_1e13e ld hl, PikachuMovementData_1e14d ld a, [wSpriteStateData1 + 9] @@ -161,7 +161,7 @@ BillsHouseScript5: ld hl, wd472 bit 7, [hl] jr z, .asm_1e1c6 - call CheckPikachuAsleep + call CheckPikachuFollowingPlayer jr z, .asm_1e1c6 ld a, $2 ld [H_SPRITEINDEX], a diff --git a/scripts/billshouse2.asm b/scripts/billshouse2.asm index 6f62a79f..87a39969 100755 --- a/scripts/billshouse2.asm +++ b/scripts/billshouse2.asm @@ -87,7 +87,7 @@ Func_f24ae: ; f24ae ld a, [wCurMap] cp BILLS_HOUSE jr nz, .asm_f24d2 - call CheckPikachuAsleep + call CheckPikachuFollowingPlayer jr z, .asm_f24d2 ld a, [W_BILLSHOUSECURSCRIPT] cp $5 @@ -120,7 +120,7 @@ Func_f24d5: ld a, $1 ld [wWhichEmotionBubble], a predef EmotionBubble - call SetPikachuAsleep + call DisablePikachuFollowingPlayer callab InitializePikachuTextID ret diff --git a/scripts/fanclub.asm b/scripts/fanclub.asm index cbafc034..a03fd2d7 100755 --- a/scripts/fanclub.asm +++ b/scripts/fanclub.asm @@ -1,15 +1,72 @@ FanClubScript: ; 59b70 (16:5b70) - jp EnableAutoTextBoxDrawing + call EnableAutoTextBoxDrawing + ld hl, FanClubScriptPointers + ld a, [W_FANCLUBCURSCRIPT] + call JumpTable + ret -FanClubBikeInBag: -; check if any bike paraphernalia in bag - CheckEvent EVENT_GOT_BIKE_VOUCHER - ret nz - ld b, BICYCLE - call IsItemInBag - ret nz - ld b, BIKE_VOUCHER - jp IsItemInBag +FanClubScriptPointers: + dw FanClubScript1 + dw FanClubScript2 + +FanClubScript1: + ld hl, wPreventBlackout + bit 7, [hl] + call z, FanClubScript_59a44 + ld hl, wPreventBlackout + set 7, [hl] + ret + +FanClubScript2: + ld hl, wPreventBlackout + bit 7, [hl] + call z, FanClubScript_59a39 + ld hl, wPreventBlackout + set 7, [hl] + ret + +FanClubScript_59a39: + call Random + ld a, [hRandomAdd] + cp 25 + call c, FanClubScript_59a44 + ret + +FanClubScript_59a44: + ld a, [wd472] + bit 7, a + ret z + callab Func_fce73 + ret c + ld a, $1 + ld [W_FANCLUBCURSCRIPT], a + xor a + ld [wPlayerMovingDirection], a + call UpdateSprites + call UpdateSprites + ld a, $0 + ld [wWhichEmotionBubble], a + ld a, $f ; Pikachu + ld [wEmotionBubbleSpriteIndex], a + predef EmotionBubble + ld hl, PikachuMovementScript_59a8c + call Func_159b + ld a, $2 + ld [wSpriteStateData1 + 3 * $10 + 1], a ; Seel + xor a ; SPRITE_FACING_DOWN + ld [wSpriteStateData1 + 3 * $10 + 9], a + callab InitializePikachuTextID + call DisablePikachuFollowingPlayer + ret + +PikachuMovementScript_59a8c: + db $00 + db $26 + db $20 + db $20 + db $20 + db $1e + db $3f FanClubTextPointers: ; 59b84 (16:5b84) dw FanClubText1 @@ -18,22 +75,28 @@ FanClubTextPointers: ; 59b84 (16:5b84) dw FanClubText4 dw FanClubText5 dw FanClubText6 - dw FanClubText7 - dw FanClubText8 FanClubText1: -; pikachu fan +; clefairy fan TX_ASM - CheckEvent EVENT_PIKACHU_FAN_BOAST + CheckEventHL EVENT_152 + jr z, .asm_59aaf + ld hl, .yellowtext + call PrintText + jr .done + +.asm_59aaf + CheckEventReuseHL EVENT_PIKACHU_FAN_BOAST jr nz, .mineisbetter + SetEventReuseHL EVENT_SEEL_FAN_BOAST ld hl, .normaltext call PrintText - SetEvent EVENT_SEEL_FAN_BOAST jr .done + .mineisbetter + ResetEventReuseHL EVENT_PIKACHU_FAN_BOAST ld hl, .bettertext call PrintText - ResetEvent EVENT_PIKACHU_FAN_BOAST .done jp TextScriptEnd @@ -45,19 +108,29 @@ FanClubText1: TX_FAR PikachuFanBetterText db "@" +.yellowtext + TX_FAR PikachuFanPrintText + db "@" + FanClubText2: ; seel fan TX_ASM - CheckEvent EVENT_SEEL_FAN_BOAST + CheckEventHL EVENT_152 + jr z, .asm_59ae7 + ld hl, .yellowtext + call PrintText + jr .done +.asm_59ae7 + CheckEventReuseHL EVENT_SEEL_FAN_BOAST jr nz, .mineisbetter + SetEventReuseHL EVENT_PIKACHU_FAN_BOAST ld hl, .normaltext call PrintText - SetEvent EVENT_PIKACHU_FAN_BOAST jr .done .mineisbetter + ResetEventReuseHL EVENT_SEEL_FAN_BOAST ld hl, .bettertext call PrintText - ResetEvent EVENT_SEEL_FAN_BOAST .done jp TextScriptEnd @@ -69,12 +142,16 @@ FanClubText2: TX_FAR SeelFanBetterText db "@" +.yellowtext + TX_FAR SeelFanPrintText + db "@" + FanClubText3: ; pikachu TX_ASM ld hl, .text call PrintText - ld a, PIKACHU + ld a, CLEFAIRY call PlayCry call WaitForSoundToFinish jp TextScriptEnd @@ -100,74 +177,131 @@ FanClubText4: FanClubText5: ; chair TX_ASM - call FanClubBikeInBag - jr nz, .nothingleft - - ld hl, .meetchairtext + CheckEventHL EVENT_152 + jr z, .check_bike_voucher + ld hl, Text_59c1f call PrintText call YesNoChoice ld a, [wCurrentMenuItem] and a - jr nz, .nothanks + jr z, .select_mon_to_print + ld hl, Text_59c24 + jr .gbpals_print_text - ; tell the story - ld hl, .storytext +.check_bike_voucher + CheckEvent EVENT_GOT_BIKE_VOUCHER + jr nz, .got_bike_voucher_already + ld hl, Text_59bfc + call PrintText + call YesNoChoice + ld a, [wCurrentMenuItem] + and a + jr nz, .declined_story + ld hl, Text_59c01 call PrintText lb bc, BIKE_VOUCHER, 1 call GiveItem - jr nc, .BagFull - ld hl, .receivedvouchertext + jr nc, .no_room_for_voucher + ld hl, Text_59c06 call PrintText SetEvent EVENT_GOT_BIKE_VOUCHER - jr .done -.BagFull - ld hl, .bagfulltext - call PrintText - jr .done -.nothanks - ld hl, .nostorytext - call PrintText - jr .done -.nothingleft - ld hl, .finaltext + jp TextScriptEnd + +.no_room_for_voucher + ld hl, Text_59c1a + jr .gbpals_print_text + +.declined_story + ld hl, Text_59c10 + jr .gbpals_print_text + +.got_bike_voucher_already + ld hl, Text_59c15 +.gbpals_print_text + push hl + call LoadGBPal + pop hl call PrintText -.done jp TextScriptEnd -.meetchairtext +.select_mon_to_print + call GBPalWhiteOutWithDelay3 + call LoadCurrentMapView + call SaveScreenTilesToBuffer2 + ld a, $ff + ld [wUpdateSpritesEnabled], a + ld a, $00 + ld [wTempTilesetNumTiles], a + call DisplayPartyMenu + jp nc, .print + call GBPalWhiteOutWithDelay3 + call RestoreScreenTilesAndReloadTilePatterns + ld hl, Text_59c24 + jr .gbpals_print_text + +.print + xor a + ld [wUpdateSpritesEnabled], a + ld hl, wd730 + set 6, [hl] + callab Func_e8e24 + ld hl, wd730 + res 6, [hl] + call GBPalWhiteOutWithDelay3 + call ReloadTilesetTilePatterns + call RestoreScreenTilesAndReloadTilePatterns + call LoadScreenTilesFromBuffer2 + call Delay3 + call GBPalNormal + ld hl, Text_59c2e + ld a, [hOaksAideResult] + and a + jr nz, .gbpals_print_text + ld hl, Text_59c29 + jr .gbpals_print_text + +Text_59bfc: TX_FAR FanClubMeetChairText db "@" -.storytext +Text_59c01: TX_FAR FanClubChairStoryText db "@" -.receivedvouchertext +Text_59c06: TX_FAR ReceivedBikeVoucherText - db $11 + TX_SFX_KEY_ITEM TX_FAR ExplainBikeVoucherText db "@" -.nostorytext +Text_59c10: TX_FAR FanClubNoStoryText db "@" -.finaltext +Text_59c15: TX_FAR FanClubChairFinalText db "@" -.bagfulltext +Text_59c1a: TX_FAR FanClubBagFullText db "@" -FanClubText6: ; 59c88 (16:5c88) - TX_FAR _FanClubText6 +Text_59c1f: + TX_FAR FanClubChairPrintText1 + db "@" + +Text_59c24: + TX_FAR FanClubChairPrintText2 + db "@" + +Text_59c29: + TX_FAR FanClubChairPrintText3 db "@" -FanClubText7: ; 59c8d (16:5c8d) - TX_FAR _FanClubText7 +Text_59c2e: + TX_FAR FanClubChairPrintText4 db "@" -FanClubText8: ; 59c92 (16:5c92) - TX_FAR _FanClubText8 +FanClubText6: ; 59c88 (16:5c88) + TX_FAR _FanClubText6 db "@" diff --git a/scripts/pewterpokecenter2.asm b/scripts/pewterpokecenter2.asm index 1aae37d1..c884ad65 100755 --- a/scripts/pewterpokecenter2.asm +++ b/scripts/pewterpokecenter2.asm @@ -57,7 +57,7 @@ Func_f1da4: ret z callab Func_fce73 ret c - call SetPikachuAsleep + call DisablePikachuFollowingPlayer ret PewterPokecenterText_f1e19: diff --git a/text/maps/fan_club.asm b/text/maps/fan_club.asm index 8b442011..33d3ca53 100644 --- a/text/maps/fan_club.asm +++ b/text/maps/fan_club.asm @@ -100,13 +100,13 @@ FanClubChairStoryText:: prompt ReceivedBikeVoucherText:: - text $52, " received" + text " received" line "a @" TX_RAM wcf4b text "!@@" ExplainBikeVoucherText:: - db $0 + text "" para "Exchange that for" line "a BICYCLE!" @@ -128,7 +128,7 @@ FanClubNoStoryText:: done FanClubChairFinalText:: - text "Hello, ", $52, "!" + text "Hello, !" para "Did you come see" line "me about my" @@ -143,7 +143,7 @@ FanClubBagFullText:: done FanClubChairPrintText1:: - text "Hi there, ",$52,"!" + text "Hi there, !" line "Have you seen my" cont "#MON photos?" diff --git a/wram.asm b/wram.asm index 593f7c09..70d973c7 100755 --- a/wram.asm +++ b/wram.asm @@ -2711,220 +2711,220 @@ wMissableObjectList:: ; d5ce ; terminated with $FF ds 17 * 2 -wGameProgressFlags:: ; d5f0 +wGameProgressFlags:: ; d5e9 ; $c8 bytes - ds 0 -W_OAKSLABCURSCRIPT:: ; d5f0 +W_OAKSLABCURSCRIPT:: ; d5e9 ds 1 -W_PALLETTOWNCURSCRIPT:: ; d5f1 +W_PALLETTOWNCURSCRIPT:: ; d5f0 ds 1 ds 1 -W_BLUESHOUSECURSCRIPT:: ; d5f3 +W_BLUESHOUSECURSCRIPT:: ; d5f2 ds 1 -W_VIRIDIANCITYCURSCRIPT:: ; d5f4 +W_VIRIDIANCITYCURSCRIPT:: ; d5f3 ds 1 ds 2 -W_PEWTERCITYCURSCRIPT:: ; d5f7 +W_PEWTERCITYCURSCRIPT:: ; d5f6 ds 1 -W_ROUTE3CURSCRIPT:: ; d5f8 +W_ROUTE3CURSCRIPT:: ; d5f7 ds 1 -W_ROUTE4CURSCRIPT:: ; d5f9 +W_ROUTE4CURSCRIPT:: ; d5f8 ds 1 +W_FANCLUBCURSCRIPT:: ; d5f9 ds 1 -W_VIRIDIANGYMCURSCRIPT:: ; d5fb +W_VIRIDIANGYMCURSCRIPT:: ; d5fa ds 1 -W_PEWTERGYMCURSCRIPT:: ; d5fc +W_PEWTERGYMCURSCRIPT:: ; d5fb ds 1 -W_CERULEANGYMCURSCRIPT:: ; d5fd +W_CERULEANGYMCURSCRIPT:: ; d5fc ds 1 -W_VERMILIONGYMCURSCRIPT:: ; d5fe +W_VERMILIONGYMCURSCRIPT:: ; d5fd ds 1 -W_CELADONGYMCURSCRIPT:: ; d5ff +W_CELADONGYMCURSCRIPT:: ; d5fe ds 1 -W_ROUTE6CURSCRIPT:: ; d600 +W_ROUTE6CURSCRIPT:: ; d5ff ds 1 -W_ROUTE8CURSCRIPT:: ; d601 +W_ROUTE8CURSCRIPT:: ; d600 ds 1 -W_ROUTE24CURSCRIPT:: ; d602 +W_ROUTE24CURSCRIPT:: ; d601 ds 1 -W_ROUTE25CURSCRIPT:: ; d603 +W_ROUTE25CURSCRIPT:: ; d602 ds 1 -W_ROUTE9CURSCRIPT:: ; d604 +W_ROUTE9CURSCRIPT:: ; d603 ds 1 -W_ROUTE10CURSCRIPT:: ; d605 +W_ROUTE10CURSCRIPT:: ; d604 ds 1 -W_MTMOON1CURSCRIPT:: ; d606 +W_MTMOON1CURSCRIPT:: ; d605 ds 1 -W_MTMOON3CURSCRIPT:: ; d607 +W_MTMOON3CURSCRIPT:: ; d606 ds 1 -W_SSANNE8CURSCRIPT:: ; d608 +W_SSANNE8CURSCRIPT:: ; d607 ds 1 -W_SSANNE9CURSCRIPT:: ; d609 +W_SSANNE9CURSCRIPT:: ; d608 ds 1 -W_ROUTE22CURSCRIPT:: ; d60a +W_ROUTE22CURSCRIPT:: ; d609 ds 1 ds 1 -W_REDSHOUSE2CURSCRIPT:: ; d60c +W_REDSHOUSE2CURSCRIPT:: ; d60b ds 1 -W_VIRIDIANMARKETCURSCRIPT:: ; d60d +W_VIRIDIANMARKETCURSCRIPT:: ; d60c ds 1 -W_ROUTE22GATECURSCRIPT:: ; d60e +W_ROUTE22GATECURSCRIPT:: ; d60d ds 1 -W_CERULEANCITYCURSCRIPT:: ; d60f +W_CERULEANCITYCURSCRIPT:: ; d60e ds 1 ds 7 -W_SSANNE5CURSCRIPT:: ; d617 +W_SSANNE5CURSCRIPT:: ; d616 ds 1 -W_VIRIDIANFORESTCURSCRIPT:: ; d618 +W_VIRIDIANFORESTCURSCRIPT:: ; d617 ds 1 -W_MUSEUM1FCURSCRIPT:: ; d619 +W_MUSEUM1FCURSCRIPT:: ; d618 ds 1 -W_ROUTE13CURSCRIPT:: ; d61a +W_ROUTE13CURSCRIPT:: ; d619 ds 1 -W_ROUTE14CURSCRIPT:: ; d61b +W_ROUTE14CURSCRIPT:: ; d61a ds 1 -W_ROUTE17CURSCRIPT:: ; d61c +W_ROUTE17CURSCRIPT:: ; d61b ds 1 -W_ROUTE19CURSCRIPT:: ; d61d +W_ROUTE19CURSCRIPT:: ; d61c ds 1 -W_ROUTE21CURSCRIPT:: ; d61e +W_ROUTE21CURSCRIPT:: ; d61d ds 1 -wSafariZoneEntranceCurScript:: ; d61f +wSafariZoneEntranceCurScript:: ; d61e ds 1 -W_ROCKTUNNEL2CURSCRIPT:: ; d620 +W_ROCKTUNNEL2CURSCRIPT:: ; d61f ds 1 -W_ROCKTUNNEL1CURSCRIPT:: ; d621 +W_ROCKTUNNEL1CURSCRIPT:: ; d620 ds 1 ds 1 -W_ROUTE11CURSCRIPT:: ; d623 +W_ROUTE11CURSCRIPT:: ; d622 ds 1 -W_ROUTE12CURSCRIPT:: ; d624 +W_ROUTE12CURSCRIPT:: ; d623 ds 1 -W_ROUTE15CURSCRIPT:: ; d625 +W_ROUTE15CURSCRIPT:: ; d624 ds 1 -W_ROUTE16CURSCRIPT:: ; d626 +W_ROUTE16CURSCRIPT:: ; d625 ds 1 -W_ROUTE18CURSCRIPT:: ; d627 +W_ROUTE18CURSCRIPT:: ; d626 ds 1 -W_ROUTE20CURSCRIPT:: ; d628 +W_ROUTE20CURSCRIPT:: ; d627 ds 1 -W_SSANNE10CURSCRIPT:: ; d629 +W_SSANNE10CURSCRIPT:: ; d628 ds 1 -W_VERMILIONCITYCURSCRIPT:: ; d62a +W_VERMILIONCITYCURSCRIPT:: ; d629 ds 1 -W_POKEMONTOWER2CURSCRIPT:: ; d62b +W_POKEMONTOWER2CURSCRIPT:: ; d62a ds 1 -W_POKEMONTOWER3CURSCRIPT:: ; d62c +W_POKEMONTOWER3CURSCRIPT:: ; d62b ds 1 -W_POKEMONTOWER4CURSCRIPT:: ; d62d +W_POKEMONTOWER4CURSCRIPT:: ; d62c ds 1 -W_POKEMONTOWER5CURSCRIPT:: ; d62e +W_POKEMONTOWER5CURSCRIPT:: ; d62d ds 1 -W_POKEMONTOWER6CURSCRIPT:: ; d62f +W_POKEMONTOWER6CURSCRIPT:: ; d62e ds 1 -W_POKEMONTOWER7CURSCRIPT:: ; d630 +W_POKEMONTOWER7CURSCRIPT:: ; d62f ds 1 -W_ROCKETHIDEOUT1CURSCRIPT:: ; d631 +W_ROCKETHIDEOUT1CURSCRIPT:: ; d630 ds 1 -W_ROCKETHIDEOUT2CURSCRIPT:: ; d632 +W_ROCKETHIDEOUT2CURSCRIPT:: ; d631 ds 1 -W_ROCKETHIDEOUT3CURSCRIPT:: ; d633 +W_ROCKETHIDEOUT3CURSCRIPT:: ; d632 ds 1 -W_ROCKETHIDEOUT4CURSCRIPT:: ; d634 +W_ROCKETHIDEOUT4CURSCRIPT:: ; d633 ds 2 -W_ROUTE6GATECURSCRIPT:: ; d636 +W_ROUTE6GATECURSCRIPT:: ; d635 ds 1 -W_ROUTE8GATECURSCRIPT:: ; d637 +W_ROUTE8GATECURSCRIPT:: ; d636 ds 2 -W_CINNABARISLANDCURSCRIPT:: ; d639 +W_CINNABARISLANDCURSCRIPT:: ; d638 ds 1 -W_MANSION1CURSCRIPT:: ; d63a +W_MANSION1CURSCRIPT:: ; d639 ds 2 -W_MANSION2CURSCRIPT:: ; d63c +W_MANSION2CURSCRIPT:: ; d63b ds 1 -W_MANSION3CURSCRIPT:: ; d63d +W_MANSION3CURSCRIPT:: ; d63c ds 1 -W_MANSION4CURSCRIPT:: ; d63e +W_MANSION4CURSCRIPT:: ; d63d ds 1 -W_VICTORYROAD2CURSCRIPT:: ; d63f +W_VICTORYROAD2CURSCRIPT:: ; d63e ds 1 -W_VICTORYROAD3CURSCRIPT:: ; d640 +W_VICTORYROAD3CURSCRIPT:: ; d63f ds 1 -W_CELADONCITYCURSCRIPT:: +W_CELADONCITYCURSCRIPT:: ; d640 ds 1 -W_FIGHTINGDOJOCURSCRIPT:: ; d642 +W_FIGHTINGDOJOCURSCRIPT:: ; d641 ds 1 -W_SILPHCO2CURSCRIPT:: ; d643 +W_SILPHCO2CURSCRIPT:: ; d642 ds 1 -W_SILPHCO3CURSCRIPT:: ; d644 +W_SILPHCO3CURSCRIPT:: ; d643 ds 1 -W_SILPHCO4CURSCRIPT:: ; d645 +W_SILPHCO4CURSCRIPT:: ; d644 ds 1 -W_SILPHCO5CURSCRIPT:: ; d646 +W_SILPHCO5CURSCRIPT:: ; d645 ds 1 -W_SILPHCO6CURSCRIPT:: ; d647 +W_SILPHCO6CURSCRIPT:: ; d646 ds 1 -W_SILPHCO7CURSCRIPT:: ; d648 +W_SILPHCO7CURSCRIPT:: ; d647 ds 1 -W_SILPHCO8CURSCRIPT:: ; d649 +W_SILPHCO8CURSCRIPT:: ; d648 ds 1 -W_SILPHCO9CURSCRIPT:: ; d64a +W_SILPHCO9CURSCRIPT:: ; d649 ds 1 -W_HALLOFFAMEROOMCURSCRIPT:: ; d64b +W_HALLOFFAMEROOMCURSCRIPT:: ; d64a ds 1 -W_GARYCURSCRIPT:: ; d64c +W_GARYCURSCRIPT:: ; d64b ds 1 -W_LORELEICURSCRIPT:: ; d64d +W_LORELEICURSCRIPT:: ; d64c ds 1 -W_BRUNOCURSCRIPT:: ; d64e +W_BRUNOCURSCRIPT:: ; d64d ds 1 -W_AGATHACURSCRIPT:: ; d64f +W_AGATHACURSCRIPT:: ; d64e ds 1 -W_UNKNOWNDUNGEON3CURSCRIPT:: ; d650 +W_UNKNOWNDUNGEON3CURSCRIPT:: ; d64f ds 1 -W_VICTORYROAD1CURSCRIPT:: ; d651 +W_VICTORYROAD1CURSCRIPT:: ; d650 ds 1 ds 1 -W_LANCECURSCRIPT:: ; d653 +W_LANCECURSCRIPT:: ; d652 ds 1 ds 4 -W_SILPHCO10CURSCRIPT:: ; d658 +W_SILPHCO10CURSCRIPT:: ; d657 ds 1 -W_SILPHCO11CURSCRIPT:: ; d659 +W_SILPHCO11CURSCRIPT:: ; d658 ds 1 ds 1 -W_FUCHSIAGYMCURSCRIPT:: ; d65b +W_FUCHSIAGYMCURSCRIPT:: ; d65a ds 1 -W_SAFFRONGYMCURSCRIPT:: ; d65c +W_SAFFRONGYMCURSCRIPT:: ; d65b ds 1 ds 1 -W_CINNABARGYMCURSCRIPT:: ; d65e +W_CINNABARGYMCURSCRIPT:: ; d65d ds 1 -W_CELADONGAMECORNERCURSCRIPT:: ; d65f +W_CELADONGAMECORNERCURSCRIPT:: ; d65e ds 1 -W_ROUTE16GATECURSCRIPT:: ; d660 +W_ROUTE16GATECURSCRIPT:: ; d65f ds 1 -W_BILLSHOUSECURSCRIPT:: ; d661 +W_BILLSHOUSECURSCRIPT:: ; d660 ds 1 -W_ROUTE5GATECURSCRIPT:: ; d662 +W_ROUTE5GATECURSCRIPT:: ; d661 ds 1 -W_POWERPLANTCURSCRIPT:: ; d663 +W_POWERPLANTCURSCRIPT:: ; d662 ; overload ds 0 -W_ROUTE7GATECURSCRIPT:: ; d663 +W_ROUTE7GATECURSCRIPT:: ; d662 ; overload ds 1 ds 1 -W_SSANNE2CURSCRIPT:: ; d665 +W_SSANNE2CURSCRIPT:: ; d664 ds 1 -wSeafoamIslands4CurScript:: ; d666 +wSeafoamIslands4CurScript:: ; d665 ds 1 -W_ROUTE23CURSCRIPT:: ; d667 +W_ROUTE23CURSCRIPT:: ; d666 ds 1 -wSeafoamIslands5CurScript:: ; d668 +wSeafoamIslands5CurScript:: ; d667 ds 1 -W_ROUTE18GATECURSCRIPT:: ; d669 +W_ROUTE18GATECURSCRIPT:: ; d668 ds 1 ds 78 -- cgit v1.3.1-sl0p From 799b0ad911ae85ed89f3a571f62eef3bc6e5fc4a Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Tue, 31 May 2016 13:45:47 -0400 Subject: Most of SS Anne --- data/mapObjects/ssanne8.asm | 2 +- main.asm | 60 +++++++++++++++++++++++++++++++++++++++++++-- scripts/ssanne2.asm | 23 ++--------------- scripts/ssanne9.asm | 33 ++++--------------------- 4 files changed, 66 insertions(+), 52 deletions(-) (limited to 'data/mapObjects') diff --git a/data/mapObjects/ssanne8.asm b/data/mapObjects/ssanne8.asm index 992230d8..f089b35d 100755 --- a/data/mapObjects/ssanne8.asm +++ b/data/mapObjects/ssanne8.asm @@ -19,7 +19,7 @@ SSAnne8Object: ; 0x61a60 (size=127) object SPRITE_GIRL, $16, $3, WALK, $1, $5 ; person object SPRITE_FAT_BALD_GUY, $0, $e, STAY, NONE, $6 ; person object SPRITE_LITTLE_GIRL, $2, $b, STAY, DOWN, $7 ; person - object SPRITE_CLEFAIRY, $3, $b, STAY, DOWN, $8 ; person + object SPRITE_JIGGLYPUFF, $3, $b, STAY, DOWN, $8 ; person object SPRITE_GIRL, $a, $d, STAY, RIGHT, $9 ; person object SPRITE_BALL, $c, $f, STAY, NONE, $a, TM_08 object SPRITE_GENTLEMAN, $15, $d, WALK, $2, $b ; person diff --git a/main.asm b/main.asm index fcd33001..9e4672ff 100755 --- a/main.asm +++ b/main.asm @@ -1346,12 +1346,68 @@ INCLUDE "engine/hidden_object_functions17.asm" SECTION "bank18",ROMX,BANK[$18] ViridianForestBlocks: INCBIN "maps/viridianforest.blk" - dr $60198,$610ed + dr $60198,$603c0 + +SSAnne9Blocks: +SSAnne10Blocks: +INCBIN "maps/ssanne9.blk" + dr $60420,$610ed INCLUDE "data/mapHeaders/viridianforest.asm" INCLUDE "scripts/viridianforest.asm" INCLUDE "data/mapObjects/viridianforest.asm" - dr $612a4,$625e8 + +INCLUDE "data/mapHeaders/ssanne1.asm" +INCLUDE "scripts/ssanne1.asm" +INCLUDE "data/mapObjects/ssanne1.asm" +SSAnne1Blocks: +INCBIN "maps/ssanne1.blk" + +INCLUDE "data/mapHeaders/ssanne2.asm" +INCLUDE "scripts/ssanne2.asm" +INCLUDE "data/mapObjects/ssanne2.asm" +SSAnne2Blocks: +INCBIN "maps/ssanne2.blk" + +INCLUDE "data/mapHeaders/ssanne4.asm" +INCLUDE "scripts/ssanne4.asm" +INCLUDE "data/mapObjects/ssanne4.asm" +SSAnne4Blocks: +INCBIN "maps/ssanne4.blk" + +INCLUDE "data/mapHeaders/ssanne5.asm" +INCLUDE "scripts/ssanne5.asm" +INCLUDE "data/mapObjects/ssanne5.asm" +SSAnne5Blocks: +INCBIN "maps/ssanne5.blk" + +INCLUDE "data/mapHeaders/ssanne6.asm" +INCLUDE "scripts/ssanne6.asm" +INCLUDE "data/mapObjects/ssanne6.asm" +SSAnne6Blocks: +INCBIN "maps/ssanne6.blk" + +; INCLUDE "data/mapHeaders/ssanne7.asm" +; INCLUDE "scripts/ssanne7.asm" +; INCLUDE "data/mapObjects/ssanne7.asm" + dr $618b7,$61987 +SSAnne7Blocks: +INCBIN "maps/ssanne7.blk" + +INCLUDE "data/mapHeaders/ssanne8.asm" +INCLUDE "scripts/ssanne8.asm" +INCLUDE "data/mapObjects/ssanne8.asm" +SSAnne8Blocks: +INCBIN "maps/ssanne8.blk" + +INCLUDE "data/mapHeaders/ssanne9.asm" +INCLUDE "scripts/ssanne9.asm" +INCLUDE "data/mapObjects/ssanne9.asm" + +INCLUDE "data/mapHeaders/ssanne10.asm" +INCLUDE "scripts/ssanne10.asm" +INCLUDE "data/mapObjects/ssanne10.asm" + dr $61f31,$625e8 INCLUDE "engine/hidden_object_functions18.asm" SECTION "bank19",ROMX,BANK[$19] diff --git a/scripts/ssanne2.asm b/scripts/ssanne2.asm index 7bdafe2c..3a2e207a 100755 --- a/scripts/ssanne2.asm +++ b/scripts/ssanne2.asm @@ -24,9 +24,7 @@ SSAnne2Script0: ; 613be (18:53be) ld hl, CoordsData_61411 call ArePlayerCoordsInArray ret nc - ld a, $ff - ld [wNewSoundID], a - call PlaySound + call StopAllMusic ld c, BANK(Music_MeetRival) ld a, MUSIC_MEET_RIVAL call PlayMusic @@ -99,23 +97,8 @@ SSAnne2Script1: ; 61430 (18:5430) call Delay3 ld a, OPP_SONY2 ld [wCurOpponent], a - - ; select which team to use during the encounter - ld a, [W_RIVALSTARTER] - cp STARTER2 - jr nz, .NotSquirtle ld a, $1 - jr .done -.NotSquirtle - cp STARTER3 - jr nz, .Charmander - ld a, $2 - jr .done -.Charmander - ld a, $3 -.done ld [wTrainerNo], a - call SSAnne2Script_61416 ld a, $2 ld [W_SSANNE2CURSCRIPT], a @@ -145,9 +128,7 @@ SSAnne2Script2: ; 6146d (18:546d) ld a, $2 ld [H_SPRITEINDEX], a call MoveSprite - ld a, $ff - ld [wNewSoundID], a - call PlaySound + call StopAllMusic callba Music_RivalAlternateStart ld a, $3 ld [W_SSANNE2CURSCRIPT], a diff --git a/scripts/ssanne9.asm b/scripts/ssanne9.asm index 525a2964..43c3991e 100755 --- a/scripts/ssanne9.asm +++ b/scripts/ssanne9.asm @@ -1,8 +1,5 @@ SSAnne9Script: ; 61b4b (18:5b4b) - ld a, $1 - ld [wAutoTextBoxDrawingControl], a - xor a - ld [wDoNotWaitForButtonPressAfterDisplayingText], a + call DisableAutoTextBoxDrawing ld hl, SSAnne9TrainerHeaders ld de, SSAnne9ScriptPointers ld a, [W_SSANNE9CURSCRIPT] @@ -129,44 +126,24 @@ SSAnne9Text_61c10: ; 61c10 (18:5c10) SSAnne9Text10: ; 61c15 (18:5c15) TX_ASM - ld hl, SSAnne9Text_61c1f - call PrintText + callba Func_f2570 jp TextScriptEnd -SSAnne9Text_61c1f: ; 61c1f (18:5c1f) - TX_FAR _SSAnne9Text_61c1f - db "@" - SSAnne9Text11: ; 61c24 (18:5c24) TX_ASM - ld hl, SSAnne9Text_61c2e - call PrintText + callba Func_f257c jp TextScriptEnd -SSAnne9Text_61c2e: ; 61c2e (18:5c2e) - TX_FAR _SSAnne9Text_61c2e - db "@" - SSAnne9Text12: ; 61c33 (18:5c33) TX_ASM - ld hl, SSAnne9Text_61c3d - call PrintText + callba Func_f2588 jp TextScriptEnd -SSAnne9Text_61c3d: ; 61c3d (18:5c3d) - TX_FAR _SSAnne9Text_61c3d - db "@" - SSAnne9Text13: ; 61c42 (18:5c42) TX_ASM - ld hl, SSAnne9Text_61c4c - call PrintText + callba Func_f2594 jp TextScriptEnd -SSAnne9Text_61c4c: ; 61c4c (18:5c4c) - TX_FAR _SSAnne9Text_61c4c - db "@" - SSAnne9BattleText1: ; 61c51 (18:5c51) TX_FAR _SSAnne9BattleText1 db "@" -- cgit v1.3.1-sl0p From 6d80537563abb145d48c1f3cde003e50e482e1dd Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Tue, 31 May 2016 21:58:46 -0400 Subject: Celadon Pokecenter --- data/mapObjects/celadonpokecenter.asm | 5 +++-- data/map_header_banks.asm | 2 +- data/map_header_pointers.asm | 2 +- engine/bank3c.asm | 2 +- main.asm | 8 ++++++-- scripts/celadonpokecenter.asm | 10 ++++++++-- scripts/ceruleanpokecenter.asm | 6 +++--- scripts/mtmoonpokecenter.asm | 2 +- scripts/pewterpokecenter.asm | 6 +++--- scripts/rocktunnelpokecenter.asm | 2 +- scripts/vermilionpokecenter.asm | 6 +++--- scripts/viridianpokecenter.asm | 6 +++--- 12 files changed, 34 insertions(+), 23 deletions(-) (limited to 'data/mapObjects') diff --git a/data/mapObjects/celadonpokecenter.asm b/data/mapObjects/celadonpokecenter.asm index ccc30ce7..7429c190 100755 --- a/data/mapObjects/celadonpokecenter.asm +++ b/data/mapObjects/celadonpokecenter.asm @@ -7,11 +7,12 @@ CeladonPokecenterObject: ; 0x488d2 (size=44) db $0 ; signs - db $4 ; objects + db $5 ; objects object SPRITE_NURSE, $3, $1, STAY, DOWN, $1 ; person - object SPRITE_GENTLEMAN, $7, $3, WALK, $2, $2 ; person + object SPRITE_GENTLEMAN, $7, $3, STAY, DOWN, $2 ; person object SPRITE_FOULARD_WOMAN, $a, $5, WALK, $0, $3 ; person object SPRITE_CABLE_CLUB_WOMAN, $b, $2, STAY, DOWN, $4 ; person + object SPRITE_CHANSEY, $4, $1, STAY, DOWN, $5 ; person ; warp-to EVENT_DISP CELADON_POKECENTER_WIDTH, $7, $3 diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm index 4262635f..06432efe 100644 --- a/data/map_header_banks.asm +++ b/data/map_header_banks.asm @@ -133,7 +133,7 @@ MapHeaderBanks:: ; fc3e4 (3f:43e4) db BANK(CeladonMansion3_h) db BANK(CeladonMansion4_h) db BANK(CeladonMansion5_h) - db $12 ; db BANK(CeladonPokecenter_h) + db BANK(CeladonPokecenter_h) db $12 ; db BANK(CeladonGym_h) db $12 ; db BANK(CeladonGameCorner_h) db $12 ; db BANK(CeladonMart5_h) diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm index 9d3c5135..0556b7a2 100644 --- a/data/map_header_pointers.asm +++ b/data/map_header_pointers.asm @@ -133,7 +133,7 @@ MapHeaderPointers:: ; fc1f2 (3f:41f2) dw CeladonMansion3_h ;id=130 dw CeladonMansion4_h dw CeladonMansion5_h - dw $48af ; dw CeladonPokecenter_h + dw CeladonPokecenter_h dw $4915 ; dw CeladonGym_h dw $4bc8 ; dw CeladonGameCorner_h dw $507f ; dw CeladonMart5_h diff --git a/engine/bank3c.asm b/engine/bank3c.asm index 1e099f36..852af176 100644 --- a/engine/bank3c.asm +++ b/engine/bank3c.asm @@ -330,7 +330,7 @@ Pic_f0cf4: ; f0cf4 (3c:4cf4) GFX_f0d82: ; f0d82 (3c:4d82) dr $f0d82, $f0f12 -Func_f0f12: +PokecenterChanseyText: ld hl, NurseChanseyText call PrintText ld a, CHANSEY diff --git a/main.asm b/main.asm index b82b8220..3ef6cb47 100755 --- a/main.asm +++ b/main.asm @@ -823,7 +823,6 @@ INCBIN "maps/lavendertown.blk" ViridianPokecenterBlocks: SaffronPokecenterBlocks: LavenderPokecenterBlocks: -CeladonPokecenterBlocks: FuchsiaPokecenterBlocks: CinnabarPokecenterBlocks: INCBIN "maps/viridianpokecenter.blk" @@ -872,6 +871,7 @@ Route7Blocks: ; 48051 INCBIN "maps/route7.blk" MtMoonPokecenterBlocks: RockTunnelPokecenterBlocks: +CeladonPokecenterBlocks: INCBIN "maps/mtmoonpokecenter.blk" Route11GateBlocks: INCBIN "maps/route11gate.blk" @@ -933,7 +933,11 @@ INCLUDE "scripts/celadonmansion4.asm" INCLUDE "data/mapObjects/celadonmansion4.asm" CeladonMansion4Blocks: INCBIN "maps/celadonmansion4.blk" - dr $488af,$492a9 + +INCLUDE "data/mapHeaders/celadonpokecenter.asm" +INCLUDE "scripts/celadonpokecenter.asm" +INCLUDE "data/mapObjects/celadonpokecenter.asm" + dr $48915,$492a9 INCLUDE "data/mapHeaders/mtmoonpokecenter.asm" INCLUDE "scripts/mtmoonpokecenter.asm" diff --git a/scripts/celadonpokecenter.asm b/scripts/celadonpokecenter.asm index 1b8d3a1b..4ff71c43 100755 --- a/scripts/celadonpokecenter.asm +++ b/scripts/celadonpokecenter.asm @@ -7,12 +7,13 @@ CeladonPokecenterTextPointers: ; 488be (12:48be) dw CeladonPokecenterText2 dw CeladonPokecenterText3 dw CeladonPokecenterText4 + dw CeladonPokecenterText5 CeladonPokecenterText4: ; 488c6 (12:48c6) - db $f6 + TX_CABLE_CLUB_RECEPTIONIST CeladonPokecenterText1: ; 488c7 (12:48c7) - db $ff + TX_POKECENTER_NURSE CeladonPokecenterText2: ; 488c8 (12:48c8) TX_FAR _CeladonPokecenterText2 @@ -21,3 +22,8 @@ CeladonPokecenterText2: ; 488c8 (12:48c8) CeladonPokecenterText3: ; 488cd (12:48cd) TX_FAR _CeladonPokecenterText3 db "@" + +CeladonPokecenterText5: + TX_ASM + callab PokecenterChanseyText + jp TextScriptEnd diff --git a/scripts/ceruleanpokecenter.asm b/scripts/ceruleanpokecenter.asm index f4eb68ae..5ee5d4a2 100755 --- a/scripts/ceruleanpokecenter.asm +++ b/scripts/ceruleanpokecenter.asm @@ -10,10 +10,10 @@ CeruleanPokecenterTextPointers: ; 5c64b (17:464b) dw CeruleanPokecenterText5 CeruleanPokecenterText4: ; 5c653 (17:4653) - db $f6 + TX_CABLE_CLUB_RECEPTIONIST CeruleanPokecenterText1: ; 5c654 (17:4654) - db $ff + TX_POKECENTER_NURSE CeruleanPokecenterText2: ; 5c655 (17:4655) TX_FAR _CeruleanPokecenterText1 @@ -25,5 +25,5 @@ CeruleanPokecenterText3: ; 5c65a (17:465a) CeruleanPokecenterText5: TX_ASM - callab Func_f0f12 + callab PokecenterChanseyText jp TextScriptEnd diff --git a/scripts/mtmoonpokecenter.asm b/scripts/mtmoonpokecenter.asm index 320ed070..9c35686f 100755 --- a/scripts/mtmoonpokecenter.asm +++ b/scripts/mtmoonpokecenter.asm @@ -36,5 +36,5 @@ MtMoonPokecenterText6: ; 49375 (12:5375) MtMoonPokecenterText7: TX_ASM - callab Func_f0f12 + callab PokecenterChanseyText jp TextScriptEnd diff --git a/scripts/pewterpokecenter.asm b/scripts/pewterpokecenter.asm index 90f5e2b9..70cf17f6 100755 --- a/scripts/pewterpokecenter.asm +++ b/scripts/pewterpokecenter.asm @@ -14,7 +14,7 @@ PewterPokecenterTextPointers: ; 5c58d (17:458d) dw PewterPokecenterText6 PewterPokecenterText1: ; 5c595 (17:4595) - db $ff + TX_POKECENTER_NURSE PewterPokecenterText2: ; 5c596 (17:4596) TX_FAR _PewterPokecenterText1 @@ -26,7 +26,7 @@ PewterPokecenterText3: ; 5c59b (17:459b) jp TextScriptEnd PewterPokecenterText4: ; 5c60c (17:460c) - db $f6 + TX_CABLE_CLUB_RECEPTIONIST PewterPokecenterText5: ; 5c603 (17:4603) TX_ASM @@ -35,5 +35,5 @@ PewterPokecenterText5: ; 5c603 (17:4603) PewterPokecenterText6: TX_ASM - callab Func_f0f12 + callab PokecenterChanseyText jp TextScriptEnd diff --git a/scripts/rocktunnelpokecenter.asm b/scripts/rocktunnelpokecenter.asm index 7d8f4bf6..3518bd8f 100755 --- a/scripts/rocktunnelpokecenter.asm +++ b/scripts/rocktunnelpokecenter.asm @@ -25,5 +25,5 @@ RockTunnelPokecenterText4: ; 493d3 (12:53d3) RockTunnelPokecenterText5: TX_ASM - callab Func_f0f12 + callab PokecenterChanseyText jp TextScriptEnd diff --git a/scripts/vermilionpokecenter.asm b/scripts/vermilionpokecenter.asm index 6796851f..72c232b7 100755 --- a/scripts/vermilionpokecenter.asm +++ b/scripts/vermilionpokecenter.asm @@ -10,7 +10,7 @@ VermilionPokecenterTextPointers: ; 5c995 (17:4995) dw VermilionPokecenterText5 VermilionPokecenterText1: ; 5c99d (17:499d) - db $ff + TX_POKECENTER_NURSE VermilionPokecenterText2: ; 5c99e (17:499e) TX_FAR _VermilionPokecenterText1 @@ -21,9 +21,9 @@ VermilionPokecenterText3: ; 5c9a3 (17:49a3) db "@" VermilionPokecenterText4: ; 5c9a8 (17:49a8) - db $f6 + TX_CABLE_CLUB_RECEPTIONIST VermilionPokecenterText5: TX_ASM - callab Func_f0f12 + callab PokecenterChanseyText jp TextScriptEnd diff --git a/scripts/viridianpokecenter.asm b/scripts/viridianpokecenter.asm index f8aed602..c2e2d283 100755 --- a/scripts/viridianpokecenter.asm +++ b/scripts/viridianpokecenter.asm @@ -10,7 +10,7 @@ ViridianPokecenterTextPointers: ; 44263 (11:4263) dw ViridianPokeCenterText5 ViridianPokeCenterText1: ; 4426b (11:426b) - db $ff + TX_POKECENTER_NURSE ViridianPokeCenterText2: ; 4426c (11:426c) TX_FAR _ViridianPokeCenterText1 @@ -21,9 +21,9 @@ ViridianPokeCenterText3: ; 44271 (11:4271) db "@" ViridianPokeCenterText4: ; 44276 (11:4276) - db $f6 + TX_CABLE_CLUB_RECEPTIONIST ViridianPokeCenterText5: TX_ASM - callab Func_f0f12 + callab PokecenterChanseyText jp TextScriptEnd -- cgit v1.3.1-sl0p From 6006a9df06cbe4228987a791aa522c01b1c49ddd Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Tue, 31 May 2016 22:41:22 -0400 Subject: Game Corner --- constants/misc_constants.asm | 3 ++- data/mapObjects/celadongamecorner.asm | 4 ++-- data/map_header_banks.asm | 2 +- data/map_header_pointers.asm | 2 +- engine/bank3c.asm | 17 ++++++++++++++++- main.asm | 8 +++++++- maps/celadongamecorner.blk | 2 +- scripts/celadongamecorner.asm | 23 +++++++++++++---------- 8 files changed, 43 insertions(+), 18 deletions(-) (limited to 'data/mapObjects') diff --git a/constants/misc_constants.asm b/constants/misc_constants.asm index 8333837d..4538c353 100644 --- a/constants/misc_constants.asm +++ b/constants/misc_constants.asm @@ -179,10 +179,11 @@ TEXT_REPEL_WORE_OFF EQU $d2 TEXT_SAFARI_GAME_OVER EQU $d3 ; PrintNumber - +BIT_MONEY_SIGN EQU 5 BIT_LEFT_ALIGN EQU 6 BIT_LEADING_ZEROES EQU 7 +MONEY_SIGH EQU (1 << BIT_MONEY_SIGN) LEFT_ALIGN EQU (1 << BIT_LEFT_ALIGN) LEADING_ZEROES EQU (1 << BIT_LEADING_ZEROES) diff --git a/data/mapObjects/celadongamecorner.asm b/data/mapObjects/celadongamecorner.asm index 1169e1da..a44cf0a6 100755 --- a/data/mapObjects/celadongamecorner.asm +++ b/data/mapObjects/celadongamecorner.asm @@ -18,8 +18,8 @@ CeladonGameCornerObject: ; 0x48fa0 (size=99) object SPRITE_MOM_GEISHA, $8, $b, STAY, LEFT, $6 ; person object SPRITE_GYM_HELPER, $8, $e, STAY, LEFT, $7 ; person object SPRITE_GAMBLER, $b, $f, STAY, RIGHT, $8 ; person - object SPRITE_MART_GUY, $e, $b, STAY, LEFT, $9 ; person - object SPRITE_GENTLEMAN, $11, $d, STAY, RIGHT, $a ; person + object SPRITE_FAT_BALD_GUY, $e, $b, STAY, LEFT, $9 ; person + object SPRITE_FISHER, $11, $d, STAY, RIGHT, $a ; person object SPRITE_ROCKET, $9, $5, STAY, UP, $b, OPP_ROCKET, $7 ; warp-to diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm index 11d2a28b..87388feb 100644 --- a/data/map_header_banks.asm +++ b/data/map_header_banks.asm @@ -135,7 +135,7 @@ MapHeaderBanks:: ; fc3e4 (3f:43e4) db BANK(CeladonMansion5_h) db BANK(CeladonPokecenter_h) db BANK(CeladonGym_h) - db $12 ; db BANK(CeladonGameCorner_h) + db BANK(CeladonGameCorner_h) db $12 ; db BANK(CeladonMart5_h) db $12 ; db BANK(CeladonPrizeRoom_h) db $12 ; db BANK(CeladonDiner_h) diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm index bacc67e3..75f8b555 100644 --- a/data/map_header_pointers.asm +++ b/data/map_header_pointers.asm @@ -135,7 +135,7 @@ MapHeaderPointers:: ; fc1f2 (3f:41f2) dw CeladonMansion5_h dw CeladonPokecenter_h dw CeladonGym_h - dw $4bc8 ; dw CeladonGameCorner_h + dw CeladonGameCorner_h dw $507f ; dw CeladonMart5_h dw $5107 ; dw CeladonPrizeRoom_h dw $5168 ; dw CeladonDiner_h diff --git a/engine/bank3c.asm b/engine/bank3c.asm index 852af176..2e0a8ee2 100644 --- a/engine/bank3c.asm +++ b/engine/bank3c.asm @@ -370,7 +370,22 @@ PikachuMovementData_f1e2b: INCLUDE "scripts/celadonmart3_2.asm" INCLUDE "scripts/celadonmansion1_2.asm" INCLUDE "scripts/celadonmansion3_2.asm" - dr $f1f23, $f218c + +Func_f1f23: + ld hl, PikachuMovementData_f1f2c + ld b, SPRITE_FACING_DOWN + call Func_f0a82 + ret + +PikachuMovementData_f1f2c: + db $00 + db $20 + db $1e + db $35 + db $3f + +Func_f1f31: + dr $f1f31, $f218c INCLUDE "scripts/mtmoonpokecenter2.asm" diff --git a/main.asm b/main.asm index cecff2eb..cdf6edaa 100755 --- a/main.asm +++ b/main.asm @@ -943,7 +943,13 @@ INCLUDE "scripts/celadongym.asm" INCLUDE "data/mapObjects/celadongym.asm" CeladonGymBlocks: INCBIN "maps/celadongym.blk" - dr $48bc8,$492a9 + +INCLUDE "data/mapHeaders/celadongamecorner.asm" +INCLUDE "scripts/celadongamecorner.asm" +INCLUDE "data/mapObjects/celadongamecorner.asm" +CeladonGameCornerBlocks: +INCBIN "maps/celadongamecorner.blk" + dr $4907f,$492a9 INCLUDE "data/mapHeaders/mtmoonpokecenter.asm" INCLUDE "scripts/mtmoonpokecenter.asm" diff --git a/maps/celadongamecorner.blk b/maps/celadongamecorner.blk index 82fd0b61..8c8b1fd8 100644 --- a/maps/celadongamecorner.blk +++ b/maps/celadongamecorner.blk @@ -2,4 +2,4 @@ -4***C*///3 : : : :9!9!9!99!9!9!98!8!8!8 () \ No newline at end of file +4***C*///3 : : : :9!9!9!99!9!9!98!8!8!8 () \ No newline at end of file diff --git a/scripts/celadongamecorner.asm b/scripts/celadongamecorner.asm index 5fc9cf97..9af229c6 100755 --- a/scripts/celadongamecorner.asm +++ b/scripts/celadongamecorner.asm @@ -71,8 +71,12 @@ CeladonGameCornerScript1: ; 48c19 (12:4c19) .asm_48c43 ld a, [wXCoord] cp $8 - jr nz, .asm_48c4d + jr nz, .pikachu ld de, MovementData_48c63 + jr .asm_48c4d +.pikachu + callab Func_f1f23 + ld de, MovementData_48c5a .asm_48c4d ld a, $b ld [H_SPRITEINDEX], a @@ -85,8 +89,8 @@ MovementData_48c5a: ; 48c5a (12:4c5a) db NPC_MOVEMENT_DOWN db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT - db NPC_MOVEMENT_UP db NPC_MOVEMENT_RIGHT + db NPC_MOVEMENT_UP db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT @@ -144,7 +148,7 @@ CeladonGameCornerText2: ; 48ca9 (12:4ca9) ld a, [wCurrentMenuItem] and a jr nz, .asm_48d0f - ld b,COIN_CASE + ld b, COIN_CASE call IsItemInBag jr z, .asm_48d19 call Has9990Coins @@ -267,7 +271,8 @@ CeladonGameCornerText_48d9c: ; 48d9c (12:4d9c) Received10CoinsText: ; 48da1 (12:4da1) TX_FAR _Received10CoinsText - db $0B, "@" + TX_SFX_ITEM + db "@" CeladonGameCornerText_48da7: ; 48da7 (12:4da7) TX_FAR _CeladonGameCornerText_48da7 @@ -360,7 +365,7 @@ CeladonGameCornerText10: ; 48e3b (12:4e3b) jr nz, .asm_48e75 ld hl, CeladonGameCornerText_48e88 call PrintText - ld b,COIN_CASE + ld b, COIN_CASE call IsItemInBag jr z, .asm_48e7f call Has9990Coins @@ -472,13 +477,11 @@ CeladonGameCornerScript_48f1e: ; 48f1e (12:4f1e) ld hl, wd730 set 6, [hl] coord hl, 11, 0 - ld b, $5 - ld c, $7 + lb bc, 5, 7 call TextBoxBorder call UpdateSprites coord hl, 12, 1 - ld b, 4 - ld c, 7 + lb bc, 4, 7 call ClearScreenArea coord hl, 12, 2 ld de, GameCornerMoneyText @@ -488,7 +491,7 @@ CeladonGameCornerScript_48f1e: ; 48f1e (12:4f1e) call PlaceString coord hl, 12, 3 ld de, wPlayerMoney - ld c, $a3 + ld c, 3 | MONEY_SIGH | LEADING_ZEROES call PrintBCDNumber coord hl, 12, 4 ld de, GameCornerCoinText -- cgit v1.3.1-sl0p From 4cc8f9f8ca33f0b85ceb06597ba2c44e1311344c Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Wed, 1 Jun 2016 10:26:45 -0400 Subject: Lavender Mart and Pokecenter --- data/mapObjects/lavenderpokecenter.asm | 5 +++-- data/map_header_banks.asm | 4 ++-- data/map_header_pointers.asm | 4 ++-- main.asm | 13 ++++++++++--- scripts/lavenderpokecenter.asm | 10 ++++++++-- 5 files changed, 25 insertions(+), 11 deletions(-) (limited to 'data/mapObjects') diff --git a/data/mapObjects/lavenderpokecenter.asm b/data/mapObjects/lavenderpokecenter.asm index b421c3a4..702e67b7 100755 --- a/data/mapObjects/lavenderpokecenter.asm +++ b/data/mapObjects/lavenderpokecenter.asm @@ -7,11 +7,12 @@ LavenderPokecenterObject: ; 0x5c8f4 (size=44) db $0 ; signs - db $4 ; objects + db $5 ; objects object SPRITE_NURSE, $3, $1, STAY, DOWN, $1 ; person object SPRITE_GENTLEMAN, $5, $3, STAY, NONE, $2 ; person - object SPRITE_LITTLE_GIRL, $2, $6, WALK, $1, $3 ; person + object SPRITE_LITTLE_GIRL, $a, $5, WALK, $2, $3 ; person object SPRITE_CABLE_CLUB_WOMAN, $b, $2, STAY, DOWN, $4 ; person + object SPRITE_CHANSEY, $4, $1, STAY, DOWN, $5 ; person ; warp-to EVENT_DISP LAVENDER_POKECENTER_WIDTH, $7, $3 diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm index e36b827c..e93540d5 100644 --- a/data/map_header_banks.asm +++ b/data/map_header_banks.asm @@ -141,7 +141,7 @@ MapHeaderBanks:: ; fc3e4 (3f:43e4) db BANK(CeladonDiner_h) db BANK(CeladonHouse_h) db BANK(CeladonHotel_h) - db $17 ; db BANK(LavenderPokecenter_h) + db BANK(LavenderPokecenter_h) db $18 ; db BANK(PokemonTower1_h) db $18 ; db BANK(PokemonTower2_h) db $18 ; db BANK(PokemonTower3_h) @@ -150,7 +150,7 @@ MapHeaderBanks:: ; fc3e4 (3f:43e4) db $18 ; db BANK(PokemonTower6_h) db $18 ; db BANK(PokemonTower7_h) db $07 ; db BANK(LavenderHouse1_h) - db $17 ; db BANK(LavenderMart_h) + db BANK(LavenderMart_h) db $07 ; db BANK(LavenderHouse2_h) db $07 ; db BANK(FuchsiaMart_h) db $1d ; db BANK(FuchsiaHouse1_h) diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm index 7f00f77b..5418152f 100644 --- a/data/map_header_pointers.asm +++ b/data/map_header_pointers.asm @@ -141,7 +141,7 @@ MapHeaderPointers:: ; fc1f2 (3f:41f2) dw CeladonDiner_h dw CeladonHouse_h dw CeladonHotel_h ;id=140 - dw $479c ; dw LavenderPokecenter_h + dw LavenderPokecenter_h dw $4420 ; dw PokemonTower1_h dw $44e7 ; dw PokemonTower2_h dw $46af ; dw PokemonTower3_h @@ -150,7 +150,7 @@ MapHeaderPointers:: ; fc1f2 (3f:41f2) dw $4ad2 ; dw PokemonTower6_h dw $4ce8 ; dw PokemonTower7_h dw $51a4 ; dw LavenderHouse1_h - dw $4802 ; dw LavenderMart_h ;id=150 + dw LavenderMart_h ;id=150 dw $52aa ; dw LavenderHouse2_h dw $5685 ; dw FuchsiaMart_h dw $4851 ; dw FuchsiaHouse1_h diff --git a/main.asm b/main.asm index 2e48c103..f7da97eb 100755 --- a/main.asm +++ b/main.asm @@ -324,7 +324,6 @@ INCLUDE "data/mapHeaders/viridianmart.asm" INCLUDE "scripts/viridianmart.asm" INCLUDE "data/mapObjects/viridianmart.asm" ViridianMartBlocks: -LavenderMartBlocks: CeladonMartBlocks: SaffronMartBlocks: FuchsiaMartBlocks: @@ -822,7 +821,6 @@ LavenderTownBlocks: INCBIN "maps/lavendertown.blk" ViridianPokecenterBlocks: SaffronPokecenterBlocks: -LavenderPokecenterBlocks: FuchsiaPokecenterBlocks: CinnabarPokecenterBlocks: INCBIN "maps/viridianpokecenter.blk" @@ -1355,6 +1353,7 @@ INCLUDE "engine/overworld/saffron_guards.asm" SECTION "bank17",ROMX,BANK[$17] CeruleanMartBlocks: VermilionMartBlocks: +LavenderMartBlocks: INCBIN "maps/ceruleanmart.blk" RedsHouse2FBlocks: INCBIN "maps/redshouse2f.blk" @@ -1364,6 +1363,7 @@ Museum2FBlocks: INCBIN "maps/museum2f.blk" PewterPokecenterBlocks: VermilionPokecenterBlocks: +LavenderPokecenterBlocks: INCBIN "maps/pewterpokecenter.blk" UndergroundPathEntranceRoute5Blocks: UndergroundPathEntranceRoute6Blocks: @@ -1420,7 +1420,14 @@ INCBIN "maps/ceruleangym.blk" INCLUDE "data/mapHeaders/ceruleanmart.asm" INCLUDE "scripts/ceruleanmart.asm" INCLUDE "data/mapObjects/ceruleanmart.asm" - dr $5c79c,$5c865 + +INCLUDE "data/mapHeaders/lavenderpokecenter.asm" +INCLUDE "scripts/lavenderpokecenter.asm" +INCLUDE "data/mapObjects/lavenderpokecenter.asm" + +INCLUDE "data/mapHeaders/lavendermart.asm" +INCLUDE "scripts/lavendermart.asm" +INCLUDE "data/mapObjects/lavendermart.asm" INCLUDE "data/mapHeaders/vermilionpokecenter.asm" INCLUDE "scripts/vermilionpokecenter.asm" diff --git a/scripts/lavenderpokecenter.asm b/scripts/lavenderpokecenter.asm index 452cc8a4..8f9c5454 100755 --- a/scripts/lavenderpokecenter.asm +++ b/scripts/lavenderpokecenter.asm @@ -7,12 +7,13 @@ LavenderPokecenterTextPointers: ; 5c8e0 (17:48e0) dw LavenderPokecenterText2 dw LavenderPokecenterText3 dw LavenderPokecenterText4 + dw LavenderPokecenterText5 LavenderPokecenterText4: ; 5c8e8 (17:48e8) - db $f6 + TX_CABLE_CLUB_RECEPTIONIST LavenderPokecenterText1: ; 5c8e9 (17:48e9) - db $ff + TX_POKECENTER_NURSE LavenderPokecenterText2: ; 5c8ea (17:48ea) TX_FAR _LavenderPokecenterText1 @@ -21,3 +22,8 @@ LavenderPokecenterText2: ; 5c8ea (17:48ea) LavenderPokecenterText3: ; 5c8ef (17:48ef) TX_FAR _LavenderPokecenterText3 db "@" + +LavenderPokecenterText5: + TX_ASM + callab PokecenterChanseyText + jp TextScriptEnd -- cgit v1.3.1-sl0p From 0acd7a594d57e92931a03c76b55ed486265bdc2b Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Wed, 1 Jun 2016 17:24:31 -0400 Subject: All of Pokemon Tower --- data/mapObjects/pokemontower7.asm | 8 +- data/map_header_banks.asm | 14 +- data/map_header_pointers.asm | 14 +- main.asm | 45 +++- scripts/pokemontower1.asm | 3 +- scripts/pokemontower2.asm | 24 +- scripts/pokemontower7.asm | 480 +++++++++++++++++++------------------- 7 files changed, 309 insertions(+), 279 deletions(-) (limited to 'data/mapObjects') diff --git a/data/mapObjects/pokemontower7.asm b/data/mapObjects/pokemontower7.asm index a77d1d1e..4d1e26c2 100755 --- a/data/mapObjects/pokemontower7.asm +++ b/data/mapObjects/pokemontower7.asm @@ -6,10 +6,10 @@ PokemonTower7Object: ; 0x60ef6 (size=42) db $0 ; signs - db 3 ; objects - object SPRITE_JESSIE, $a 8, 8, STAY, DOWN, 1 - object SPRITE_JAMES, $b, 8, STAY, DOWN, 2 - object SPRITE_MR_FUJI, $a, 3, STAY, DOWN, 3 + db $3 ; objects + object SPRITE_JESSIE, $a, $8, STAY, DOWN, $1 + object SPRITE_JAMES, $b, $8, STAY, DOWN, $2 + object SPRITE_MR_FUJI, $a, $3, STAY, DOWN, $3 ; warp-to EVENT_DISP POKEMONTOWER_7_WIDTH, $10, $9 ; POKEMONTOWER_6 diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm index e93540d5..8b2d58e2 100644 --- a/data/map_header_banks.asm +++ b/data/map_header_banks.asm @@ -142,13 +142,13 @@ MapHeaderBanks:: ; fc3e4 (3f:43e4) db BANK(CeladonHouse_h) db BANK(CeladonHotel_h) db BANK(LavenderPokecenter_h) - db $18 ; db BANK(PokemonTower1_h) - db $18 ; db BANK(PokemonTower2_h) - db $18 ; db BANK(PokemonTower3_h) - db $18 ; db BANK(PokemonTower4_h) - db $18 ; db BANK(PokemonTower5_h) - db $18 ; db BANK(PokemonTower6_h) - db $18 ; db BANK(PokemonTower7_h) + db BANK(PokemonTower1_h) + db BANK(PokemonTower2_h) + db BANK(PokemonTower3_h) + db BANK(PokemonTower4_h) + db BANK(PokemonTower5_h) + db BANK(PokemonTower6_h) + db BANK(PokemonTower7_h) db $07 ; db BANK(LavenderHouse1_h) db BANK(LavenderMart_h) db $07 ; db BANK(LavenderHouse2_h) diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm index 5418152f..82fce791 100644 --- a/data/map_header_pointers.asm +++ b/data/map_header_pointers.asm @@ -142,13 +142,13 @@ MapHeaderPointers:: ; fc1f2 (3f:41f2) dw CeladonHouse_h dw CeladonHotel_h ;id=140 dw LavenderPokecenter_h - dw $4420 ; dw PokemonTower1_h - dw $44e7 ; dw PokemonTower2_h - dw $46af ; dw PokemonTower3_h - dw $47d9 ; dw PokemonTower4_h - dw $4915 ; dw PokemonTower5_h - dw $4ad2 ; dw PokemonTower6_h - dw $4ce8 ; dw PokemonTower7_h + dw PokemonTower1_h + dw PokemonTower2_h + dw PokemonTower3_h + dw PokemonTower4_h + dw PokemonTower5_h + dw PokemonTower6_h + dw PokemonTower7_h dw $51a4 ; dw LavenderHouse1_h dw LavenderMart_h ;id=150 dw $52aa ; dw LavenderHouse2_h diff --git a/main.asm b/main.asm index f7da97eb..cde3286b 100755 --- a/main.asm +++ b/main.asm @@ -1510,7 +1510,50 @@ INCBIN "maps/undergroundpathwe.blk" SSAnne9Blocks: SSAnne10Blocks: INCBIN "maps/ssanne9.blk" - dr $60420,$610ed + +INCLUDE "data/mapHeaders/pokemontower1.asm" +INCLUDE "scripts/pokemontower1.asm" +INCLUDE "data/mapObjects/pokemontower1.asm" +PokemonTower1Blocks: +INCBIN "maps/pokemontower1.blk" + +INCLUDE "data/mapHeaders/pokemontower2.asm" +INCLUDE "scripts/pokemontower2.asm" +INCLUDE "data/mapObjects/pokemontower2.asm" +PokemonTower2Blocks: +INCBIN "maps/pokemontower2.blk" + +INCLUDE "data/mapHeaders/pokemontower3.asm" +INCLUDE "scripts/pokemontower3.asm" +INCLUDE "data/mapObjects/pokemontower3.asm" +PokemonTower3Blocks: +INCBIN "maps/pokemontower3.blk" + +INCLUDE "data/mapHeaders/pokemontower4.asm" +INCLUDE "scripts/pokemontower4.asm" +INCLUDE "data/mapObjects/pokemontower4.asm" +PokemonTower4Blocks: +INCBIN "maps/pokemontower4.blk" + +INCLUDE "data/mapHeaders/pokemontower5.asm" +INCLUDE "scripts/pokemontower5.asm" +INCLUDE "data/mapObjects/pokemontower5.asm" +PokemonTower5Blocks: +INCBIN "maps/pokemontower5.blk" + +INCLUDE "data/mapHeaders/pokemontower6.asm" +INCLUDE "scripts/pokemontower6.asm" +INCLUDE "data/mapObjects/pokemontower6.asm" +PokemonTower6Blocks: +INCBIN "maps/pokemontower6.blk" + dr $60cde,$60ce8 + +INCLUDE "data/mapHeaders/pokemontower7.asm" +INCLUDE "scripts/pokemontower7.asm" +INCLUDE "data/mapObjects/pokemontower7.asm" +PokemonTower7Blocks: +INCBIN "maps/pokemontower7.blk" + dr $60ff2,$610ed INCLUDE "data/mapHeaders/viridianforest.asm" INCLUDE "scripts/viridianforest.asm" diff --git a/scripts/pokemontower1.asm b/scripts/pokemontower1.asm index 4887e740..99b8efef 100755 --- a/scripts/pokemontower1.asm +++ b/scripts/pokemontower1.asm @@ -1,5 +1,6 @@ PokemonTower1Script: ; 6042c (18:442c) - jp EnableAutoTextBoxDrawing + call EnableAutoTextBoxDrawing + ret PokemonTower1TextPointers: ; 6042f (18:442f) dw PokemonTower1Text1 diff --git a/scripts/pokemontower2.asm b/scripts/pokemontower2.asm index 7aebf81b..6b0c1f00 100755 --- a/scripts/pokemontower2.asm +++ b/scripts/pokemontower2.asm @@ -22,9 +22,7 @@ PokemonTower2Script0: ; 6050f (18:450f) ld hl, CoordsData_6055e call ArePlayerCoordsInArray ret nc - ld a, $ff - ld [wNewSoundID], a - call PlaySound + call StopAllMusic ld c, BANK(Music_MeetRival) ld a, MUSIC_MEET_RIVAL call PlayMusic @@ -71,14 +69,13 @@ PokemonTower2Script1: ; 60563 (18:4563) ld de, MovementData_605b2 CheckEvent EVENT_POKEMON_TOWER_RIVAL_ON_LEFT jr nz, .asm_60589 + callab Func_f1e22 ld de, MovementData_605a9 .asm_60589 ld a, $1 ld [H_SPRITEINDEX], a call MoveSprite - ld a, $ff - ld [wNewSoundID], a - call PlaySound + call StopAllMusic callba Music_RivalAlternateStart ld a, $2 ld [W_POKEMONTOWER2CURSCRIPT], a @@ -144,21 +141,8 @@ PokemonTower2Text1: ; 605df (18:45df) call SaveEndBattleTextPointers ld a, OPP_SONY2 ld [wCurOpponent], a - - ; select which team to use during the encounter ld a, [W_RIVALSTARTER] - cp STARTER2 - jr nz, .NotSquirtle - ld a, $4 - jr .done -.NotSquirtle - cp STARTER3 - jr nz, .Charmander - ld a, $5 - jr .done -.Charmander - ld a, $6 -.done + add $1 ld [wTrainerNo], a ld a, $1 diff --git a/scripts/pokemontower7.asm b/scripts/pokemontower7.asm index eb6d62e4..abf6104d 100755 --- a/scripts/pokemontower7.asm +++ b/scripts/pokemontower7.asm @@ -1,69 +1,234 @@ PokemonTower7Script: ; 60d05 (18:4d05) call EnableAutoTextBoxDrawing - ld hl, PokemonTower7TrainerHeaders - ld de, PokemonTower7ScriptPointers + ld hl, PokemonTower7ScriptPointers ld a, [W_POKEMONTOWER7CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_POKEMONTOWER7CURSCRIPT], a + call JumpTable ret -PokemonTower7Script_60d18: ; 60d18 (18:4d18) +PokemonTower7Script_60d01: ; 60d18 (18:4d18) xor a ld [wJoyIgnore], a +PokemonTower7Script_60d05: ld [W_POKEMONTOWER7CURSCRIPT], a - ld [W_CURMAPSCRIPT], a ret PokemonTower7ScriptPointers: - dw CheckFightingMapTrainers - dw DisplayEnemyTrainerTextAndStartBattle - dw PokemonTower7Script2 - dw PokemonTower7Script3 - dw PokemonTower7Script4 + dw PokemonTower7Script0 ; $4d21 + dw PokemonTower7Script1 ; $4d7f + dw PokemonTower7Script2 ; $4d9e + dw PokemonTower7Script3 ; $4da9 + dw PokemonTower7Script4 ; $4dbf + dw PokemonTower7Script5 ; $4dde + dw PokemonTower7Script6 ; $4de9 + dw PokemonTower7Script7 ; $4e0e + dw PokemonTower7Script8 ; $4e34 + dw PokemonTower7Script9 ; $4e7a + dw PokemonTower7Script10 ; $4e9b + dw PokemonTower7Script11 ; $4ec7 + +PokemonTower7Script0: + CheckEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_0 + call z, PokemonTower7Script_60d2a + ret -PokemonTower7Script2: ; 60d23 (18:4d23) - ld hl, wFlags_0xcd60 - res 0, [hl] - ld a, [wIsInBattle] - cp $ff - jp z, PokemonTower7Script_60d18 - call EndTrainerBattle - ld a, $f0 +PokemonTower7Script_60d2a: + ld a, [wYCoord] + cp $c + ret nz + ResetEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_1 + ld a, [wXCoord] + cp $a + jr z, .asm_60d47 + ld a, [wXCoord] ; why? + cp $b + ret nz + SetEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_1 +.asm_60d47 + call StopAllMusic + ld c, BANK(Music_JessieAndJames) + ld a, MUSIC_JESSIE_AND_JAMES + call PlayMusic + xor a + ld [hJoyHeld], a + ld a, $FF ^ (A_BUTTON | B_BUTTON) ld [wJoyIgnore], a - ld a, [wSpriteIndex] + ld a, HS_POKEMONTOWER_7_JESSIE + call PokemonTower7Script_60eaf + ld a, HS_POKEMONTOWER_7_JAMES + call PokemonTower7Script_60eaf + ld a, $1 + ld [wDoNotWaitForButtonPressAfterDisplayingText], a + ld a, $4 ld [hSpriteIndexOrTextID], a call DisplayTextID - call PokemonTower7Script_60db6 - ld a, $3 - ld [W_POKEMONTOWER7CURSCRIPT], a - ld [W_CURMAPSCRIPT], a + ld a, $ff + ld [wJoyIgnore], a + ld a, $1 + call PokemonTower7Script_60d05 ret -PokemonTower7Script3: ; 60d56 (18:4d56) +PokemonTower7MovementData_60d7a: + db $4 +PokemonTower7MovementData_60d7b: + db $4 + db $4 + db $4 + db $FF + +PokemonTower7Script1: + ld de, PokemonTower7MovementData_60d7b + CheckEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_1 + jr z, .asm_60d8c + ld de, PokemonTower7MovementData_60d7a +.asm_60d8c + ld a, $1 + ld [hSpriteIndexOrTextID], a + call MoveSprite + ld a, $ff + ld [wJoyIgnore], a + ld a, $2 + call PokemonTower7Script_60d05 + ret + +PokemonTower7Script2: + ld a, $ff + ld [wJoyIgnore], a ld a, [wd730] bit 0, a ret nz - ld hl, wMissableObjectList - ld a, [wSpriteIndex] - ld b, a -.missableObjectsListLoop - ld a, [hli] - cp b ; search for sprite ID in missing objects list - ld a, [hli] - jr nz, .missableObjectsListLoop - ld [wMissableObjectIndex], a ; remove missable object - predef HideObject +PokemonTower7Script3: + ld a, $0 + ld [wSpriteStateData1 + 1 * $10 + 9], a + CheckEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_1 + jr z, .asm_60dba + ld a, $c + ld [wSpriteStateData1 + 1 * $10 + 9], a +.asm_60dba + ld a, $2 + ld [wSpriteStateData1 + 1 * $10 + 1], a +PokemonTower7Script4: + ld de, PokemonTower7MovementData_60d7a + CheckEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_1 + jr z, .asm_60dcc + ld de, PokemonTower7MovementData_60d7b +.asm_60dcc + ld a, $2 + ld [hSpriteIndexOrTextID], a + call MoveSprite + ld a, $ff + ld [wJoyIgnore], a + ld a, $5 + call PokemonTower7Script_60d05 + ret +PokemonTower7Script5: + ld a, $ff + ld [wJoyIgnore], a + ld a, [wd730] + bit 0, a + ret nz +PokemonTower7Script6: + ld a, $2 + ld [wSpriteStateData1 + $2 * $10 + $1], a + ld a, $8 + ld [wSpriteStateData1 + $2 * $10 + $9], a + CheckEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_1 + jr z, .asm_60dff + ld a, $0 + ld [wSpriteStateData1 + $2 * $10 + $9], a +.asm_60dff + call Delay3 + ld a, $FF ^ (A_BUTTON | B_BUTTON) + ld [wJoyIgnore], a + ld a, $5 + ld [hSpriteIndexOrTextID], a + call DisplayTextID +PokemonTower7Script7: + ld hl, wd72d + set 6, [hl] + set 7, [hl] + ld hl, PokemonTower7JessieJamesEndBattleText ; 60f2c + ld de, PokemonTower7JessieJamesEndBattleText ; 60f2c + call SaveEndBattleTextPointers + ld a, OPP_ROCKET + ld [wCurOpponent], a + ld a, $2c + ld [wTrainerNo], a + xor a + ld [hJoyHeld], a + ld [wJoyIgnore], a + ld a, $8 + call PokemonTower7Script_60d05 + ret + +PokemonTower7Script8: + ld a, $ff + ld [wJoyIgnore], a + ld a, [wIsInBattle] + cp $ff + jp z, PokemonTower7Script_60d01 + ld a, $2 + ld [wSpriteStateData1 + 1 * $10 + 1], a + ld [wSpriteStateData1 + 2 * $10 + 1], a + xor a + ld [wSpriteStateData1 + 1 * $10 + 9], a + ld [wSpriteStateData1 + 2 * $10 + 9], a + ld a, $FF ^ (A_BUTTON | B_BUTTON) + ld [wJoyIgnore], a + ld a, $1 + ld [wDoNotWaitForButtonPressAfterDisplayingText], a + ld a, $6 + ld [hSpriteIndexOrTextID], a + call DisplayTextID + xor a + ld [wDoNotWaitForButtonPressAfterDisplayingText], a + call StopAllMusic + ld c, BANK(Music_JessieAndJames) + ld a, MUSIC_JESSIE_AND_JAMES + call PlayMusic + ld a, $ff + ld [wJoyIgnore], a + ld a, $9 + call PokemonTower7Script_60d05 + ret + +PokemonTower7Script9: + ld a, $ff + ld [wJoyIgnore], a + call GBFadeOutToBlack + ld a, HS_POKEMONTOWER_7_JESSIE + call PokemonTower7Script_60ebe + ld a, HS_POKEMONTOWER_7_JAMES + call PokemonTower7Script_60ebe + call UpdateSprites + call Delay3 + call GBFadeInFromBlack + ld a, $a + call PokemonTower7Script_60d05 + ret + +PokemonTower7Script10: + call PlayDefaultMusic xor a + ld [hJoyHeld], a ld [wJoyIgnore], a - ld [wSpriteIndex], a - ld [wTrainerHeaderFlagBit], a - ld [wUnusedDA38], a + SetEvent EVENT_BEAT_POKEMONTOWER_7_TRAINER_0 ld a, $0 - ld [W_POKEMONTOWER7CURSCRIPT], a - ld [W_CURMAPSCRIPT], a + call PokemonTower7Script_60d05 ret -PokemonTower7Script4: ; 60d86 (18:4d86) +PokemonTower7Script_60eaf: + ld [wMissableObjectIndex], a + predef ShowObject + call UpdateSprites + call Delay3 + ret + +PokemonTower7Script_60ebe + ld [wMissableObjectIndex], a + predef HideObject + ret + +PokemonTower7Script11: ld a, $ff ld [wJoyIgnore], a ld a, HS_POKEMONTOWER_7_MR_FUJI @@ -81,180 +246,54 @@ PokemonTower7Script4: ; 60d86 (18:4d86) set 3, [hl] ld a, $0 ld [W_POKEMONTOWER7CURSCRIPT], a - ld [W_CURMAPSCRIPT], a ret -PokemonTower7Script_60db6: ; 60db6 (18:4db6) - ld hl, CoordsData_60de3 - ld a, [wSpriteIndex] - dec a - swap a - ld d, $0 - ld e, a - add hl, de - ld a, [wYCoord] - ld b, a - ld a, [wXCoord] - ld c, a -.asm_60dcb - ld a, [hli] - cp b - jr nz, .asm_60dde - ld a, [hli] - cp c - jr nz, .asm_60ddf - ld a, [hli] - ld d, [hl] - ld e, a - ld a, [wSpriteIndex] - ld [H_SPRITEINDEX], a - jp MoveSprite -.asm_60dde - inc hl -.asm_60ddf - inc hl - inc hl - jr .asm_60dcb - -CoordsData_60de3: ; 60de3 (18:4de3) - db $0C,$09 - dw MovementData_60e13 - db $0B,$0A - dw MovementData_60e1b - db $0B,$0B - dw MovementData_60e22 - db $0B,$0C - dw MovementData_60e22 - db $0A,$0C - dw MovementData_60e28 - db $09,$0B - dw MovementData_60e30 - db $09,$0A - dw MovementData_60e22 - db $09,$09 - dw MovementData_60e22 - db $08,$09 - dw MovementData_60e37 - db $07,$0A - dw MovementData_60e22 - db $07,$0B - dw MovementData_60e22 - db $07,$0C - dw MovementData_60e22 - -MovementData_60e13: ; 60e13 - db NPC_MOVEMENT_RIGHT - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_LEFT - db $FF - -MovementData_60e1b: ; 60e1b - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_RIGHT - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db $FF - -MovementData_60e22: ; 60e22 - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db $FF - -MovementData_60e28: ; 60e28 - db NPC_MOVEMENT_LEFT - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db $FF - -MovementData_60e30: ; 60e30 - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_LEFT - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db $FF - -MovementData_60e37: ; 60e37 - db NPC_MOVEMENT_RIGHT - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db NPC_MOVEMENT_DOWN - db $FF - -PokemonTower7TextPointers: ; 60e3f (18:4e3f) +PokemonTower7TextPointers: dw PokemonTower7Text1 dw PokemonTower7Text2 dw PokemonTower7Text3 - dw PokemonTower7FujiText - -PokemonTower7TrainerHeaders: ; 60e47 (18:4e47) -PokemonTower7TrainerHeader0: ; 60e47 (18:4e47) - dbEventFlagBit EVENT_BEAT_POKEMONTOWER_7_TRAINER_0 - db ($3 << 4) ; trainer's view range - dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_7_TRAINER_0 - dw PokemonTower7BattleText1 ; TextBeforeBattle - dw PokemonTower7AfterBattleText1 ; TextAfterBattle - dw PokemonTower7EndBattleText1 ; TextEndBattle - dw PokemonTower7EndBattleText1 ; TextEndBattle + dw PokemonTower7Text4 + dw PokemonTower7Text5 + dw PokemonTower7Text6 -PokemonTower7TrainerHeader1: ; 60e53 (18:4e53) - dbEventFlagBit EVENT_BEAT_POKEMONTOWER_7_TRAINER_1 - db ($3 << 4) ; trainer's view range - dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_7_TRAINER_1 - dw PokemonTower7BattleText2 ; TextBeforeBattle - dw PokemonTower7AfterBattleText2 ; TextAfterBattle - dw PokemonTower7EndBattleText2 ; TextEndBattle - dw PokemonTower7EndBattleText2 ; TextEndBattle - -PokemonTower7TrainerHeader2: ; 60e5f (18:4e5f) - dbEventFlagBit EVENT_BEAT_POKEMONTOWER_7_TRAINER_2 - db ($3 << 4) ; trainer's view range - dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_7_TRAINER_2 - dw PokemonTower7BattleText3 ; TextBeforeBattle - dw PokemonTower7AfterBattleText3 ; TextAfterBattle - dw PokemonTower7EndBattleText3 ; TextEndBattle - dw PokemonTower7EndBattleText3 ; TextEndBattle - - db $ff +PokemonTower7Text1: +PokemonTower7Text2: + db "@" -PokemonTower7Text1: ; 60e6c (18:4e6c) +PokemonTower7Text4: + TX_FAR _PokemonTowerJessieJamesText1 TX_ASM - ld hl, PokemonTower7TrainerHeader0 - call TalkToTrainer + ld c, 10 + call DelayFrames + ld a, PLAYER_DIR_UP + ld [wPlayerMovingDirection], a + ld a, $0 + ld [wEmotionBubbleSpriteIndex], a + ld a, $0 + ld [wWhichEmotionBubble], a + predef EmotionBubble + ld c, 20 + call DelayFrames jp TextScriptEnd -PokemonTower7Text2: ; 60e76 (18:4e76) - TX_ASM - ld hl, PokemonTower7TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd +PokemonTower7Text5: + TX_FAR _PokemonTowerJessieJamesText2 + db "@" -PokemonTower7Text3: ; 60e80 (18:4e80) +PokemonTower7JessieJamesEndBattleText: + TX_FAR _PokemonTowerJessieJamesText3 + db "@" + +PokemonTower7Text6: + TX_FAR _PokemonTowerJessieJamesText4 TX_ASM - ld hl, PokemonTower7TrainerHeader2 - call TalkToTrainer + ld c, 64 + call DelayFrames jp TextScriptEnd -PokemonTower7FujiText: +PokemonTower7Text3: TX_ASM - ld hl, TowerRescueFujiText + ld hl, PokemonTower7Text_60f75 call PrintText SetEvent EVENT_RESCUED_MR_FUJI SetEvent EVENT_RESCUED_MR_FUJI_2 @@ -267,47 +306,10 @@ PokemonTower7FujiText: ld a, HS_SAFFRON_CITY_F ld [wMissableObjectIndex], a predef ShowObject - ld a, $4 + ld a, $b ld [W_POKEMONTOWER7CURSCRIPT], a - ld [W_CURMAPSCRIPT], a jp TextScriptEnd -TowerRescueFujiText: +PokemonTower7Text_60f75: TX_FAR _TowerRescueFujiText db "@" - -PokemonTower7BattleText1: ; 60ec9 (18:4ec9) - TX_FAR _PokemonTower7BattleText1 - db "@" - -PokemonTower7EndBattleText1: ; 60ece (18:4ece) - TX_FAR _PokemonTower7EndBattleText1 - db "@" - -PokemonTower7AfterBattleText1: ; 60ed3 (18:4ed3) - TX_FAR _PokemonTower7AfterBattleText1 - db "@" - -PokemonTower7BattleText2: ; 60ed8 (18:4ed8) - TX_FAR _PokemonTower7BattleText2 - db "@" - -PokemonTower7EndBattleText2: ; 60edd (18:4edd) - TX_FAR _PokemonTower7EndBattleText2 - db "@" - -PokemonTower7AfterBattleText2: ; 60ee2 (18:4ee2) - TX_FAR _PokemonTower7AfterBattleText2 - db "@" - -PokemonTower7BattleText3: ; 60ee7 (18:4ee7) - TX_FAR _PokemonTower7BattleText3 - db "@" - -PokemonTower7EndBattleText3: ; 60eec (18:4eec) - TX_FAR _PokemonTower7EndBattleText3 - db "@" - -PokemonTower7AfterBattleText3: ; 60ef1 (18:4ef1) - TX_FAR _PokemonTower7AfterBattleText3 - db "@" -- cgit v1.3.1-sl0p From 14ef52bdd8202d9d595811a0ac8b6f1dbd2b8a6f Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Wed, 1 Jun 2016 19:18:42 -0400 Subject: Fuchsia House 1 and Fuchsia Pokecenter --- data/mapObjects/fuchsiapokecenter.asm | 5 +++-- data/map_header_banks.asm | 4 ++-- data/map_header_pointers.asm | 4 ++-- main.asm | 15 ++++++++++++--- scripts/fuchsiapokecenter.asm | 6 ++++++ 5 files changed, 25 insertions(+), 9 deletions(-) (limited to 'data/mapObjects') diff --git a/data/mapObjects/fuchsiapokecenter.asm b/data/mapObjects/fuchsiapokecenter.asm index 19b2c950..8a1c392b 100755 --- a/data/mapObjects/fuchsiapokecenter.asm +++ b/data/mapObjects/fuchsiapokecenter.asm @@ -7,11 +7,12 @@ FuchsiaPokecenterObject: ; 0x7507d (size=44) db $0 ; signs - db $4 ; objects + db $5 ; objects object SPRITE_NURSE, $3, $1, STAY, DOWN, $1 ; person - object SPRITE_ROCKER, $2, $3, STAY, NONE, $2 ; person + object SPRITE_ROCKER, $4, $3, STAY, UP, $2 ; person object SPRITE_LASS, $6, $5, WALK, $2, $3 ; person object SPRITE_CABLE_CLUB_WOMAN, $b, $2, STAY, DOWN, $4 ; person + object SPRITE_CHANSEY, $4, $1, STAY, DOWN, $5 ; person ; warp-to EVENT_DISP FUCHSIA_POKECENTER_WIDTH, $7, $3 diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm index 31c629f5..83716936 100644 --- a/data/map_header_banks.asm +++ b/data/map_header_banks.asm @@ -153,8 +153,8 @@ MapHeaderBanks:: ; fc3e4 (3f:43e4) db BANK(LavenderMart_h) db BANK(LavenderHouse2_h) db BANK(FuchsiaMart_h) - db $1d ; db BANK(FuchsiaHouse1_h) - db $1d ; db BANK(FuchsiaPokecenter_h) + db BANK(FuchsiaHouse1_h) + db BANK(FuchsiaPokecenter_h) db $1d ; db BANK(FuchsiaHouse2_h) db $1d ; db BANK(SafariZoneEntrance_h) db $1d ; db BANK(FuchsiaGym_h) diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm index eb0bb978..866ccb8a 100644 --- a/data/map_header_pointers.asm +++ b/data/map_header_pointers.asm @@ -153,8 +153,8 @@ MapHeaderPointers:: ; fc1f2 (3f:41f2) dw LavenderMart_h ;id=150 dw LavenderHouse2_h dw FuchsiaMart_h - dw $4851 ; dw FuchsiaHouse1_h - dw $489c ; dw FuchsiaPokecenter_h + dw FuchsiaHouse1_h + dw FuchsiaPokecenter_h dw $4902 ; dw FuchsiaHouse2_h dw $4a1a ; dw SafariZoneEntrance_h dw $4bd9 ; dw FuchsiaGym_h diff --git a/main.asm b/main.asm index 86689c1d..4ccc007e 100755 --- a/main.asm +++ b/main.asm @@ -820,7 +820,6 @@ INCLUDE "data/mapObjects/lavendertown.asm" LavenderTownBlocks: INCBIN "maps/lavendertown.blk" ViridianPokecenterBlocks: SaffronPokecenterBlocks: -FuchsiaPokecenterBlocks: CinnabarPokecenterBlocks: INCBIN "maps/viridianpokecenter.blk" dr $440fb,$4410b @@ -1593,7 +1592,9 @@ SECTION "bank1D",ROMX,BANK[$1D] dr $74000,$74010 PewterMartBlocks: INCBIN "maps/pewtermart.blk" - dr $74020,$7405c +FuchsiaHouse1Blocks: INCBIN "maps/fuchsiahouse1.blk" +FuchsiaPokecenterBlocks: INCBIN "maps/fuchsiapokecenter.blk" + dr $7404c,$7405c INCLUDE "engine/items/itemfinder.asm" INCLUDE "scripts/ceruleancity2.asm" @@ -1610,7 +1611,15 @@ INCLUDE "data/mapObjects/pewtermart.asm" dr $7453d,$74726 INCLUDE "engine/menu/vending_machine.asm" - dr $74851,$757a0 + +INCLUDE "data/mapHeaders/fuchsiahouse1.asm" +INCLUDE "scripts/fuchsiahouse1.asm" +INCLUDE "data/mapObjects/fuchsiahouse1.asm" + +INCLUDE "data/mapHeaders/fuchsiapokecenter.asm" +INCLUDE "scripts/fuchsiapokecenter.asm" +INCLUDE "data/mapObjects/fuchsiapokecenter.asm" + dr $74902,$757a0 INCLUDE "data/mapHeaders/gary.asm" INCLUDE "scripts/gary.asm" diff --git a/scripts/fuchsiapokecenter.asm b/scripts/fuchsiapokecenter.asm index 26f88844..2ad3ac01 100755 --- a/scripts/fuchsiapokecenter.asm +++ b/scripts/fuchsiapokecenter.asm @@ -7,6 +7,7 @@ FuchsiaPokecenterTextPointers: ; 75069 (1d:5069) dw FuchsiaPokecenterText2 dw FuchsiaPokecenterText3 dw FuchsiaPokecenterText4 + dw FuchsiaPokecenterText5 FuchsiaPokecenterText1: ; 75071 (1d:5071) db $ff @@ -21,3 +22,8 @@ FuchsiaPokecenterText3: ; 75077 (1d:5077) FuchsiaPokecenterText4: ; 7507c (1d:507c) db $f6 + +FuchsiaPokecenterText5: + TX_ASM + callab PokecenterChanseyText + jp TextScriptEnd -- cgit v1.3.1-sl0p From a2befe3463baee7a9e935b5d0caef3744f7371f3 Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Wed, 1 Jun 2016 22:00:46 -0400 Subject: Remaining maps in Fuchsia --- data/mapObjects/fuchsiagym.asm | 2 +- data/map_header_banks.asm | 8 +- data/map_header_pointers.asm | 8 +- engine/bank3c.asm | 3 +- main.asm | 22 +++- scripts/safarizoneentrance.asm | 118 +++---------------- scripts/safarizoneentrance2.asm | 251 ++++++++++++++++++++++++++++++++++++++++ 7 files changed, 296 insertions(+), 116 deletions(-) create mode 100755 scripts/safarizoneentrance2.asm (limited to 'data/mapObjects') diff --git a/data/mapObjects/fuchsiagym.asm b/data/mapObjects/fuchsiagym.asm index ded17031..c7fc3799 100755 --- a/data/mapObjects/fuchsiagym.asm +++ b/data/mapObjects/fuchsiagym.asm @@ -8,7 +8,7 @@ FuchsiaGymObject: ; 0x75658 (size=82) db $0 ; signs db $8 ; objects - object SPRITE_BLACKBELT, $4, $a, STAY, DOWN, $1, OPP_KOGA, $1 + object SPRITE_LAPRAS_GIVER, $4, $a, STAY, DOWN, $1, OPP_KOGA, $1 object SPRITE_ROCKER, $8, $d, STAY, DOWN, $2, OPP_JUGGLER, $7 object SPRITE_ROCKER, $7, $8, STAY, RIGHT, $3, OPP_JUGGLER, $3 object SPRITE_ROCKER, $1, $c, STAY, DOWN, $4, OPP_JUGGLER, $8 diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm index 83716936..4ae6db8a 100644 --- a/data/map_header_banks.asm +++ b/data/map_header_banks.asm @@ -155,10 +155,10 @@ MapHeaderBanks:: ; fc3e4 (3f:43e4) db BANK(FuchsiaMart_h) db BANK(FuchsiaHouse1_h) db BANK(FuchsiaPokecenter_h) - db $1d ; db BANK(FuchsiaHouse2_h) - db $1d ; db BANK(SafariZoneEntrance_h) - db $1d ; db BANK(FuchsiaGym_h) - db $1d ; db BANK(FuchsiaMeetingRoom_h) + db BANK(FuchsiaHouse2_h) + db BANK(SafariZoneEntrance_h) + db BANK(FuchsiaGym_h) + db BANK(FuchsiaMeetingRoom_h) db $11 ; db BANK(SeafoamIslands2_h) db $11 ; db BANK(SeafoamIslands3_h) db $11 ; db BANK(SeafoamIslands4_h) diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm index 866ccb8a..f1ca177b 100644 --- a/data/map_header_pointers.asm +++ b/data/map_header_pointers.asm @@ -155,10 +155,10 @@ MapHeaderPointers:: ; fc1f2 (3f:41f2) dw FuchsiaMart_h dw FuchsiaHouse1_h dw FuchsiaPokecenter_h - dw $4902 ; dw FuchsiaHouse2_h - dw $4a1a ; dw SafariZoneEntrance_h - dw $4bd9 ; dw FuchsiaGym_h - dw $4e7f ; dw FuchsiaMeetingRoom_h + dw FuchsiaHouse2_h + dw SafariZoneEntrance_h + dw FuchsiaGym_h + dw FuchsiaMeetingRoom_h dw $6578 ; dw SeafoamIslands2_h dw $66b4 ; dw SeafoamIslands3_h ;id=160 dw $67f0 ; dw SeafoamIslands4_h diff --git a/engine/bank3c.asm b/engine/bank3c.asm index 907960be..b44b7f18 100644 --- a/engine/bank3c.asm +++ b/engine/bank3c.asm @@ -385,7 +385,8 @@ PikachuMovementData_f1f2c: db $3f INCLUDE "scripts/celadondiner2.asm" - dr $f1f77, $f218c +INCLUDE "scripts/safarizoneentrance2.asm" + dr $f2133, $f218c INCLUDE "scripts/mtmoonpokecenter2.asm" diff --git a/main.asm b/main.asm index 4ccc007e..bcc972eb 100755 --- a/main.asm +++ b/main.asm @@ -1619,7 +1619,27 @@ INCLUDE "data/mapObjects/fuchsiahouse1.asm" INCLUDE "data/mapHeaders/fuchsiapokecenter.asm" INCLUDE "scripts/fuchsiapokecenter.asm" INCLUDE "data/mapObjects/fuchsiapokecenter.asm" - dr $74902,$757a0 + +INCLUDE "data/mapHeaders/fuchsiahouse2.asm" +INCLUDE "scripts/fuchsiahouse2.asm" +INCLUDE "data/mapObjects/fuchsiahouse2.asm" +FuchsiaHouse2Blocks: INCBIN "maps/fuchsiahouse2.blk" + +INCLUDE "data/mapHeaders/safarizoneentrance.asm" +INCLUDE "data/mapObjects/safarizoneentrance.asm" +SafariZoneEntranceBlocks: INCBIN "maps/safarizoneentrance.blk" +INCLUDE "scripts/safarizoneentrance.asm" + +INCLUDE "data/mapHeaders/fuchsiagym.asm" +INCLUDE "scripts/fuchsiagym.asm" +INCLUDE "data/mapObjects/fuchsiagym.asm" +FuchsiaGymBlocks: INCBIN "maps/fuchsiagym.blk" + +INCLUDE "data/mapHeaders/fuchsiameetingroom.asm" +INCLUDE "scripts/fuchsiameetingroom.asm" +INCLUDE "data/mapObjects/fuchsiameetingroom.asm" +FuchsiaMeetingRoomBlocks: INCBIN "maps/fuchsiameetingroom.blk" + dr $74ee6,$757a0 INCLUDE "data/mapHeaders/gary.asm" INCLUDE "scripts/gary.asm" diff --git a/scripts/safarizoneentrance.asm b/scripts/safarizoneentrance.asm index a0a0ffda..df80f4e1 100755 --- a/scripts/safarizoneentrance.asm +++ b/scripts/safarizoneentrance.asm @@ -2,7 +2,8 @@ SafariZoneEntranceScript: ; 751cd (1d:51cd) call EnableAutoTextBoxDrawing ld hl, SafariZoneEntranceScriptPointers ld a, [wSafariZoneEntranceCurScript] - jp JumpTable + call JumpTable + ret SafariZoneEntranceScriptPointers: ; 751d9 (1d:51d9) dw .SafariZoneEntranceScript0 @@ -43,8 +44,8 @@ SafariZoneEntranceScriptPointers: ; 751d9 (1d:51d9) ret .CoordsData_75221: ; 75221 (1d:5221) - db $02,$03 - db $02,$04 + db $02, $03 + db $02, $04 db $FF .SafariZoneEntranceScript1 @@ -85,6 +86,8 @@ SafariZoneEntranceScriptPointers: ; 751d9 (1d:51d9) call DisplayTextID xor a ld [wNumSafariBalls], a + ld [wSafariSteps], a + ld [wSafariSteps], a ; ????? ld a, D_DOWN ld c, $3 call SafariZoneEntranceAutoWalk @@ -117,10 +120,10 @@ SafariZoneEntranceScriptPointers: ; 751d9 (1d:51d9) SafariZoneEntranceAutoWalk: push af - ld b,0 - ld a,c - ld [wSimulatedJoypadStatesIndex],a - ld hl,wSimulatedJoypadStatesEnd + ld b, 0 + ld a, c + ld [wSimulatedJoypadStatesIndex], a + ld hl, wSimulatedJoypadStatesEnd pop af call FillMemory jp StartSimulatingJoypadStates @@ -143,89 +146,15 @@ SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9) db "@" .SafariZoneEntranceText4 - TX_FAR SafariZoneEntranceText_9e6e4 TX_ASM - ld a, MONEY_BOX - ld [wTextBoxID],a - call DisplayTextBoxID - call YesNoChoice - ld a,[wCurrentMenuItem] - and a - jp nz,.PleaseComeAgain - xor a - ld [hMoney],a - ld a,$05 - ld [hMoney + 1],a - ld a,$00 - ld [hMoney + 2],a - call HasEnoughMoney - jr nc,.success - ld hl,.NotEnoughMoneyText - call PrintText - jr .CantPayWalkDown - -.success - xor a - ld [wPriceTemp],a - ld a,$05 - ld [wPriceTemp + 1],a - ld a,$00 - ld [wPriceTemp + 2],a - ld hl,wPriceTemp + 2 - ld de,wPlayerMoney + 2 - ld c,3 - predef SubBCDPredef - ld a,MONEY_BOX - ld [wTextBoxID],a - call DisplayTextBoxID - ld hl,.MakePaymentText - call PrintText - ld a,30 - ld [wNumSafariBalls],a - ld a,502 / $100 - ld [wSafariSteps],a - ld a, 502 % $100 - ld [wSafariSteps + 1],a - ld a,D_UP - ld c,3 - call SafariZoneEntranceAutoWalk - SetEvent EVENT_IN_SAFARI_ZONE - ResetEventReuseHL EVENT_SAFARI_GAME_OVER - ld a,3 - ld [wSafariZoneEntranceCurScript],a - jr .done - -.PleaseComeAgain - ld hl,.PleaseComeAgainText - call PrintText -.CantPayWalkDown - ld a,D_DOWN - ld c,1 - call SafariZoneEntranceAutoWalk - ld a,4 - ld [wSafariZoneEntranceCurScript],a -.done + callab Func_f1f77 jp TextScriptEnd -.MakePaymentText - TX_FAR SafariZoneEntranceText_9e747 - db $b - TX_FAR _SafariZoneEntranceText_75360 - db "@" - -.PleaseComeAgainText - TX_FAR _SafariZoneEntranceText_75365 - db "@" - -.NotEnoughMoneyText - TX_FAR _SafariZoneEntranceText_7536a - db "@" - .SafariZoneEntranceText5 TX_FAR SafariZoneEntranceText_9e814 TX_ASM call YesNoChoice - ld a,[wCurrentMenuItem] + ld a, [wCurrentMenuItem] and a jr nz, .asm_7539c ld hl, .SafariZoneEntranceText_753bb @@ -268,26 +197,5 @@ SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9) .SafariZoneEntranceText2 TX_ASM - ld hl,.FirstTimeQuestionText - call PrintText - call YesNoChoice - ld a,[wCurrentMenuItem] - and a - ld hl,.RegularText - jr nz,.Explanation - ld hl,.ExplanationText -.Explanation - call PrintText + callab Func_f203e jp TextScriptEnd - -.FirstTimeQuestionText - TX_FAR _SafariZoneEntranceText_753e6 - db "@" - -.ExplanationText - TX_FAR _SafariZoneEntranceText_753eb - db "@" - -.RegularText - TX_FAR _SafariZoneEntranceText_753f0 - db "@" diff --git a/scripts/safarizoneentrance2.asm b/scripts/safarizoneentrance2.asm new file mode 100755 index 00000000..0eb50790 --- /dev/null +++ b/scripts/safarizoneentrance2.asm @@ -0,0 +1,251 @@ +Func_f1f77: + ld hl, .WelcomeText + call PrintText + ld a, MONEY_BOX + ld [wTextBoxID], a + call DisplayTextBoxID + call YesNoChoice + ld a, [wCurrentMenuItem] + and a + jp nz, .declined + ld hl, wPlayerMoney + ld a, [hli] + or [hl] + inc hl + or [hl] + jr nz, .has_positive_balance + call SafariZoneEntranceGetLowCostAdmissionText + jr c, .deny_entry + jr .poor_mans_discount + +.has_positive_balance + xor a + ld [hMoney], a + ld a, $5 + ld [hMoney + 1], a + ld a, $0 + ld [hMoney + 2], a + call HasEnoughMoney + jr nc, .has_enough_money + ld hl, .NotEnoughMoneyText + call PrintText + call SafariZoneEntranceCalculateLowCostAdmission + jr c, .deny_entry + jr .poor_mans_discount + +.has_enough_money + xor a + ld [wPriceTemp + 0], a + ld a, $5 + ld [wPriceTemp + 1], a + ld a, $0 + ld [wPriceTemp + 2], a + ld hl, wTrainerInfoTextBoxNextRowOffset + ld de, wPlayerMoney + 2 + ld c, 3 + predef SubBCDPredef + ld a, SFX_PURCHASE + call PlaySoundWaitForCurrent + call WaitForSoundToFinish + ld a, MONEY_BOX + ld [wTextBoxID], a + call DisplayTextBoxID + ld hl, .MakePaymentText + call PrintText + ld a, 30 + ld hl, 502 +.poor_mans_discount + ld [wNumSafariBalls], a + ld a, h + ld [wSafariSteps], a + ld a, l + ld [wSafariSteps + 1], a + ld a, D_UP + ld c, 3 + call SafariZoneEntranceStartSimulatiingJoypadStates + SetEvent EVENT_IN_SAFARI_ZONE + ResetEventReuseHL EVENT_SAFARI_GAME_OVER + ld a, $3 + ld [wSafariZoneEntranceCurScript], a + jr .asm_f2024 +.declined: + ld hl, .PleaseComeAgainText + call PrintText +.deny_entry + ld a, D_DOWN + ld c, 1 + call SafariZoneEntranceStartSimulatiingJoypadStates + ld a, $4 + ld [wSafariZoneEntranceCurScript], a +.asm_f2024 + ret + +.WelcomeText + TX_FAR SafariZoneEntranceText_9e6e4 + db "@" + +.MakePaymentText + TX_FAR SafariZoneEntranceText_9e747 + TX_SFX_ITEM + TX_FAR _SafariZoneEntranceText_75360 + db "@" + +.PleaseComeAgainText + TX_FAR _SafariZoneEntranceText_75365 + db "@" + +.NotEnoughMoneyText + TX_FAR _SafariZoneEntranceText_7536a + db "@" + +Func_f203e: + ld hl, .FirstTimeQuestionText + call PrintText + call YesNoChoice + ld a, [wCurrentMenuItem] + and a + ld hl, .RegularText + jr nz, .Explanation + ld hl, .ExplanationText +.Explanation + call PrintText + ret + +.FirstTimeQuestionText + TX_FAR _SafariZoneEntranceText_753e6 + db "@" + +.ExplanationText + TX_FAR _SafariZoneEntranceText_753eb + db "@" + +.RegularText + TX_FAR _SafariZoneEntranceText_753f0 + db "@" + +SafariZoneEntranceStartSimulatiingJoypadStates: + push af + ld b, $0 + ld a, c + ld [wSimulatedJoypadStatesIndex], a + ld hl, wParentMenuItem + pop af + call FillMemory + jp StartSimulatingJoypadStates + +SafariZoneEntranceCalculateLowCostAdmission: + ld hl, wPlayerMoney + ld de, hMoney + ld bc, $3 + call CopyData + xor a + ld [hDivideBCDDivisor], a + ld [hDivideBCDDivisor + 1], a + ld a, 23 + ld [hDivideBCDDivisor + 2], a + predef DivideBCDPredef3 + ld a, [hDivideBCDQuotient + 2] + call SafariZoneEntranceConvertBCDtoNumber + push af + ld hl, wPlayerMoney + xor a + ld bc, $3 + call FillMemory + ld hl, SafariZoneEntranceText_f20c4 + call PrintText_NoCreatingTextBox + ld a, MONEY_BOX + ld [wTextBoxID], a + call DisplayTextBoxID + ld hl, SafariZoneEntranceText_f20c9 + call PrintText + pop af + inc a + jr z, .max_balls + cp 29 + jr c, .load_balls +.max_balls + ld a, 29 +.load_balls + ld hl, 502 + and a + ret + +SafariZoneEntranceText_f20c4: + TX_FAR _SafariZoneLowCostText1 + db "@" + +SafariZoneEntranceText_f20c9: + TX_FAR _SafariZoneLowCostText2 + db "@" + +SafariZoneEntranceGetLowCostAdmissionText: + ld hl, wSafariSteps + ld a, [hl] + push af + inc [hl] + ld e, a + ld d, $0 + ld hl, Pointers_f2100 + add hl, de + add hl, de + ld a, [hli] + ld h, [hl] + ld l, a + call PrintText + pop af + cp $3 + jr z, .give_one_ball + scf + ret + +.give_one_ball + ld hl, SafariZoneEntranceText_f20f6 + call PrintText_NoCreatingTextBox + ld a, $1 + ld hl, 502 + and a + ret + +SafariZoneEntranceText_f20f6: + TX_FAR _SafariZoneLowCostText3 + TX_SFX_ITEM + TX_FAR _SafariZoneLowCostText4 + db "@" + +Pointers_f2100: + dw SafariZoneEntranceText_f210a + dw SafariZoneEntranceText_f210f + dw SafariZoneEntranceText_f2114 + dw SafariZoneEntranceText_f2119 + dw SafariZoneEntranceText_f2119 + +SafariZoneEntranceText_f210a: + TX_FAR _SafariZoneLowCostText5 + db "@" + +SafariZoneEntranceText_f210f: + TX_FAR _SafariZoneLowCostText6 + db "@" + +SafariZoneEntranceText_f2114: + TX_FAR _SafariZoneLowCostText7 + db "@" + +SafariZoneEntranceText_f2119: + TX_FAR _SafariZoneLowCostText8 + db "@" + +SafariZoneEntranceConvertBCDtoNumber: + push hl + ld c, a + and $f + ld l, a + ld h, $0 + ld a, c + and $f0 + swap a + ld bc, 10 + call AddNTimes + ld a, l + pop hl + ret -- cgit v1.3.1-sl0p From c104a1481ae0db0f4f3f3b730ffa4e34274d0cdb Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Thu, 2 Jun 2016 11:38:27 -0400 Subject: Cinnabar Gym --- data/mapObjects/cinnabargym.asm | 2 +- data/map_header_banks.asm | 2 +- data/map_header_pointers.asm | 2 +- engine/bank3c.asm | 2 +- main.asm | 26 ++++- scripts/cinnabargym.asm | 208 +++++++++++++++++++++++++++++----------- scripts/cinnabargym2.asm | 64 +++++++++++++ 7 files changed, 244 insertions(+), 62 deletions(-) create mode 100755 scripts/cinnabargym2.asm (limited to 'data/mapObjects') diff --git a/data/mapObjects/cinnabargym.asm b/data/mapObjects/cinnabargym.asm index d9b69192..2b9f34cb 100755 --- a/data/mapObjects/cinnabargym.asm +++ b/data/mapObjects/cinnabargym.asm @@ -8,7 +8,7 @@ CinnabarGymObject: ; 0x75acc (size=90) db $0 ; signs db $9 ; objects - object SPRITE_FAT_BALD_GUY, $3, $3, STAY, DOWN, $1, OPP_BLAINE, $1 + object SPRITE_MR_MASTERBALL, $3, $3, STAY, DOWN, $1, OPP_BLAINE, $1 object SPRITE_BLACK_HAIR_BOY_2, $11, $2, STAY, DOWN, $2, OPP_SUPER_NERD, $9 object SPRITE_BLACK_HAIR_BOY_2, $11, $8, STAY, DOWN, $3, OPP_BURGLAR, $4 object SPRITE_BLACK_HAIR_BOY_2, $b, $4, STAY, DOWN, $4, OPP_SUPER_NERD, $a diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm index 7a6b7cf4..7f48a4cc 100644 --- a/data/map_header_banks.asm +++ b/data/map_header_banks.asm @@ -166,7 +166,7 @@ MapHeaderBanks:: ; fc3e4 (3f:43e4) db BANK(VermilionHouse2_h) db BANK(FuchsiaHouse3_h) db BANK(Mansion1_h) - db $1d ; db BANK(CinnabarGym_h) + db BANK(CinnabarGym_h) db $1d ; db BANK(Lab1_h) db $1d ; db BANK(Lab2_h) db $1d ; db BANK(Lab3_h) diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm index b73fd43c..038a1f0f 100644 --- a/data/map_header_pointers.asm +++ b/data/map_header_pointers.asm @@ -166,7 +166,7 @@ MapHeaderPointers:: ; fc1f2 (3f:41f2) dw VermilionHouse2_h dw FuchsiaHouse3_h dw Mansion1_h - dw $4ee6 ; dw CinnabarGym_h + dw CinnabarGym_h dw $53fb ; dw Lab1_h dw $5490 ; dw Lab2_h dw $54f6 ; dw Lab3_h diff --git a/engine/bank3c.asm b/engine/bank3c.asm index b44b7f18..e7ac2a4e 100644 --- a/engine/bank3c.asm +++ b/engine/bank3c.asm @@ -386,7 +386,7 @@ PikachuMovementData_f1f2c: INCLUDE "scripts/celadondiner2.asm" INCLUDE "scripts/safarizoneentrance2.asm" - dr $f2133, $f218c +INCLUDE "scripts/cinnabargym2.asm" INCLUDE "scripts/mtmoonpokecenter2.asm" diff --git a/main.asm b/main.asm index f11910f5..55ff27b7 100755 --- a/main.asm +++ b/main.asm @@ -1647,7 +1647,31 @@ INCLUDE "data/mapHeaders/fuchsiameetingroom.asm" INCLUDE "scripts/fuchsiameetingroom.asm" INCLUDE "data/mapObjects/fuchsiameetingroom.asm" FuchsiaMeetingRoomBlocks: INCBIN "maps/fuchsiameetingroom.blk" - dr $74ee6,$757a0 + +INCLUDE "data/mapHeaders/cinnabargym.asm" +INCLUDE "scripts/cinnabargym.asm" +INCLUDE "data/mapObjects/cinnabargym.asm" +CinnabarGymBlocks: INCBIN "maps/cinnabargym.blk" + +CinnabarGymScript_753de: + callab Func_f2150 + jp TextScriptEnd + +CinnabarGymScript_753e9: + push hl + ld hl, wd475 + bit 7, [hl] + res 7, [hl] + pop hl + ret + +CinnabarGymScript_753f3: + push hl + ld hl, wd475 + bit 7, [hl] + pop hl + ret + dr $753fb,$757a0 INCLUDE "data/mapHeaders/gary.asm" INCLUDE "scripts/gary.asm" diff --git a/scripts/cinnabargym.asm b/scripts/cinnabargym.asm index c5d462b3..8ae77507 100755 --- a/scripts/cinnabargym.asm +++ b/scripts/cinnabargym.asm @@ -35,11 +35,14 @@ CinnabarGymScript_75792: ; 75792 (1d:5792) ld [wOpponentAfterWrongAnswer], a ret -CinnabarGymScript_757a0: ; 757a0 (1d:57a0) +CinnabarGymScript_74f48: ; 757a0 (1d:57a0) ld a, [hSpriteIndexOrTextID] ld [wTrainerHeaderFlagBit], a ret +CinnabarGymFlagAction: ; 757f1 (1d:57f1) + predef_jump FlagActionPredef + CinnabarGymScriptPointers: ; 757a6 (1d:57a6) dw CinnabarGymScript0 dw CinnabarGymScript1 @@ -55,12 +58,18 @@ CinnabarGymScript0: ; 757ae (1d:57ae) jr nz, .asm_757c3 ld a, PLAYER_DIR_DOWN ld [wPlayerMovingDirection], a + ld hl, PikachuMovementData_74f97 + ld b, SPRITE_FACING_DOWN + call CinnabarGymScript_74fa3 ld de, MovementData_757d7 jr .asm_757cb .asm_757c3 - ld de, MovementData_757da ld a, PLAYER_DIR_RIGHT ld [wPlayerMovingDirection], a + ld hl, PikachuMovementData_74f9e + ld b, SPRITE_FACING_RIGHT + call CinnabarGymScript_74fa3 + ld de, MovementData_757da .asm_757cb call MoveSprite ld a, $1 @@ -73,10 +82,39 @@ MovementData_757d7: ; 757d7 (1d:57d7) db NPC_MOVEMENT_UP db $FF +PikachuMovementData_74f97: + db $00 + db $20 + db $1e + db $35 + db $3f + MovementData_757da: ; 757da (1d:57da) db NPC_MOVEMENT_LEFT db $FF +PikachuMovementData_74f9e: + db $00 + db $1d + db $1f + db $38 + db $3f + +CinnabarGymScript_74fa3: + ld a, [wd472] + bit 7, a + ret z + push hl + push bc + callab GetPikachuFacingDirectionAndReturnToE + pop bc + pop hl + ld a, b + cp e + ret nz + call Func_159b + ret + CinnabarGymScript1: ; 757dc (1d:57dc) ld a, [wd730] bit 0, a @@ -88,52 +126,74 @@ CinnabarGymScript1: ; 757dc (1d:57dc) ld [hSpriteIndexOrTextID], a jp DisplayTextID -CinnabarGymFlagAction: ; 757f1 (1d:57f1) - predef_jump FlagActionPredef - CinnabarGymScript2: ; 757f6 (1d:57f6) + call CinnabarGymScript_753e9 ld a, [wIsInBattle] cp $ff jp z, CinnabarGymScript_75792 ld a, [wTrainerHeaderFlagBit] - ld [$ffdb], a - AdjustEventBit EVENT_BEAT_CINNABAR_GYM_TRAINER_0, 2 + sub 2 ld c, a ld b, FLAG_TEST - EventFlagAddress hl, EVENT_BEAT_CINNABAR_GYM_TRAINER_0 + EventFlagAddress hl, EVENT_CINNABAR_GYM_GATE0_UNLOCKED call CinnabarGymFlagAction ld a, c and a - jr nz, .asm_7581b + jr nz, .asm_7500d + ld a, [wTrainerHeaderFlagBit] + cp 2 + jr z, .asm_7500d + ld c, 30 + call DelayFrames + call CinnabarGymScript_75023 + call CinnabarGymScript_75041 call WaitForSoundToFinish ld a, SFX_GO_INSIDE call PlaySound call WaitForSoundToFinish -.asm_7581b + jr .asm_75013 +.asm_7500d + call CinnabarGymScript_75023 + call CinnabarGymScript_75041 +.asm_75013 + xor a + ld [wJoyIgnore], a + ld [wOpponentAfterWrongAnswer], a + ld a, $0 + ld [W_CINNABARGYMCURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +CinnabarGymScript_75023: ld a, [wTrainerHeaderFlagBit] ld [$ffdb], a - AdjustEventBit EVENT_BEAT_CINNABAR_GYM_TRAINER_0, 2 ld c, a ld b, FLAG_SET EventFlagAddress hl, EVENT_BEAT_CINNABAR_GYM_TRAINER_0 call CinnabarGymFlagAction + ret + +CinnabarGymScript_75032: ld a, [wTrainerHeaderFlagBit] - sub $2 - AdjustEventBit EVENT_CINNABAR_GYM_GATE0_UNLOCKED, 0 + ld [$ffdb], a + ld c, a + ld b, FLAG_TEST + EventFlagAddress hl, EVENT_BEAT_CINNABAR_GYM_TRAINER_0 + call CinnabarGymFlagAction + ret + +CinnabarGymScript_75041: + ld a, [wTrainerHeaderFlagBit] + sub 2 ld c, a ld b, FLAG_SET EventFlagAddress hl, EVENT_CINNABAR_GYM_GATE0_UNLOCKED call CinnabarGymFlagAction call UpdateCinnabarGymGateTileBlocks - xor a - ld [wJoyIgnore], a - ld [wOpponentAfterWrongAnswer], a - ld a, $0 - ld [W_CINNABARGYMCURSCRIPT], a - ld [W_CURMAPSCRIPT], a ret CinnabarGymScript3: ; 7584a (1d:584a) + call CinnabarGymScript_753e9 ld a, [wIsInBattle] cp $ff jp z, CinnabarGymScript_75792 @@ -184,7 +244,7 @@ CinnabarGymTextPointers: ; 7589f (1d:589f) dw ReceivedTM38Text dw TM38NoRoomText -CinnabarGymScript_758b7: ; 758b7 (1d:58b7) +CinnabarGymScript_750c3: ; 758b7 (1d:58b7) ld a, [hSpriteIndexOrTextID] ld [wSpriteIndex], a call EngageMapTrainer @@ -225,7 +285,7 @@ CinnabarGymText1: ; 758df (1d:58df) call SaveEndBattleTextPointers ld a, $7 ld [wGymLeaderNo], a - jp CinnabarGymScript_758b7 + jp CinnabarGymScript_750c3 BlaineBattleText: ; 75914 (1d:5914) TX_FAR _BlaineBattleText @@ -257,7 +317,7 @@ TM38NoRoomText: ; 75934 (1d:5934) CinnabarGymText2: ; 75939 (1d:5939) TX_ASM - call CinnabarGymScript_757a0 + call CinnabarGymScript_74f48 CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_0 jr nz, .asm_46bb4 ld hl, CinnabarGymText_7595f @@ -265,7 +325,7 @@ CinnabarGymText2: ; 75939 (1d:5939) ld hl, CinnabarGymText_75964 ld de, CinnabarGymText_75964 call SaveEndBattleTextPointers - jp CinnabarGymScript_758b7 + jp CinnabarGymScript_750c3 .asm_46bb4 ld hl, CinnabarGymText_75969 call PrintText @@ -285,16 +345,25 @@ CinnabarGymText_75969: ; 75969 (1d:5969) CinnabarGymText3: ; 7596e (1d:596e) TX_ASM - call CinnabarGymScript_757a0 + call CinnabarGymScript_74f48 CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_1 - jr nz, .asm_4b406 + jr nz, .asm_751a8 + call CinnabarGymScript_753f3 + jr nz, .asm_75196 + CheckEvent EVENT_CINNABAR_GYM_GATE1_UNLOCKED + jr nz, .asm_75196 + ld e, $00 + jp CinnabarGymScript_753de + +.asm_75196 ld hl, CinnabarGymText_75994 call PrintText ld hl, CinnabarGymText_75999 ld de, CinnabarGymText_75999 call SaveEndBattleTextPointers - jp CinnabarGymScript_758b7 -.asm_4b406 + jp CinnabarGymScript_750c3 + +.asm_751a8 ld hl, CinnabarGymText_7599e call PrintText jp TextScriptEnd @@ -313,16 +382,24 @@ CinnabarGymText_7599e: ; 7599e (1d:599e) CinnabarGymText4: ; 759a3 (1d:59a3) TX_ASM - call CinnabarGymScript_757a0 + call CinnabarGymScript_74f48 CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_2 - jr nz, .asm_c0673 + jr nz, .asm_751ee + call CinnabarGymScript_753f3 + jr nz, .asm_751dc + CheckEvent EVENT_CINNABAR_GYM_GATE2_UNLOCKED + jr nz, .asm_751dc + ld e, $1 + jp CinnabarGymScript_753de + +.asm_751dc ld hl, CinnabarGymText_759c9 call PrintText ld hl, CinnabarGymText_759ce ld de, CinnabarGymText_759ce call SaveEndBattleTextPointers - jp CinnabarGymScript_758b7 -.asm_c0673 + jp CinnabarGymScript_750c3 +.asm_751ee ld hl, CinnabarGymText_759d3 call PrintText jp TextScriptEnd @@ -341,16 +418,24 @@ CinnabarGymText_759d3: ; 759d3 (1d:59d3) CinnabarGymText5: ; 759d8 (1d:59d8) TX_ASM - call CinnabarGymScript_757a0 + call CinnabarGymScript_74f48 CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_3 - jr nz, .asm_5cfd7 + jr nz, .asm_75234 + call CinnabarGymScript_753f3 + jr nz, .asm_75222 + CheckEvent EVENT_CINNABAR_GYM_GATE3_UNLOCKED + jr nz, .asm_75222 + ld e, $2 + jp CinnabarGymScript_753de + +.asm_75222 ld hl, CinnabarGymText_759fe call PrintText ld hl, CinnabarGymText_75a03 ld de, CinnabarGymText_75a03 call SaveEndBattleTextPointers - jp CinnabarGymScript_758b7 -.asm_5cfd7 + jp CinnabarGymScript_750c3 +.asm_75234 ld hl, CinnabarGymText_75a08 call PrintText jp TextScriptEnd @@ -369,15 +454,23 @@ CinnabarGymText_75a08: ; 75a08 (1d:5a08) CinnabarGymText6: ; 75a0d (1d:5a0d) TX_ASM - call CinnabarGymScript_757a0 + call CinnabarGymScript_74f48 CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_4 jr nz, .asm_776b4 + call CinnabarGymScript_753f3 + jr nz, .asm_75222 + CheckEvent EVENT_CINNABAR_GYM_GATE4_UNLOCKED + jr nz, .asm_75222 + ld e, $3 + jp CinnabarGymScript_753de + +.asm_75222 ld hl, CinnabarGymText_75a33 call PrintText ld hl, CinnabarGymText_75a38 ld de, CinnabarGymText_75a38 call SaveEndBattleTextPointers - jp CinnabarGymScript_758b7 + jp CinnabarGymScript_750c3 .asm_776b4 ld hl, CinnabarGymText_75a3d call PrintText @@ -397,15 +490,23 @@ CinnabarGymText_75a3d: ; 75a3d (1d:5a3d) CinnabarGymText7: ; 75a42 (1d:5a42) TX_ASM - call CinnabarGymScript_757a0 + call CinnabarGymScript_74f48 CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_5 jr nz, .asm_2f755 + call CinnabarGymScript_753f3 + jr nz, .asm_75222 + CheckEvent EVENT_CINNABAR_GYM_GATE5_UNLOCKED + jr nz, .asm_75222 + ld e, $4 + jp CinnabarGymScript_753de + +.asm_75222 ld hl, CinnabarGymText_75a68 call PrintText ld hl, CinnabarGymText_75a6d ld de, CinnabarGymText_75a6d call SaveEndBattleTextPointers - jp CinnabarGymScript_758b7 + jp CinnabarGymScript_750c3 .asm_2f755 ld hl, CinnabarGymText_75a72 call PrintText @@ -425,15 +526,23 @@ CinnabarGymText_75a72: ; 75a72 (1d:5a72) CinnabarGymText8: ; 75a77 (1d:5a77) TX_ASM - call CinnabarGymScript_757a0 + call CinnabarGymScript_74f48 CheckEvent EVENT_BEAT_CINNABAR_GYM_TRAINER_6 jr nz, .asm_d87be + call CinnabarGymScript_753f3 + jr nz, .asm_75222 + CheckEvent EVENT_CINNABAR_GYM_GATE6_UNLOCKED + jr nz, .asm_75222 + ld e, $5 + jp CinnabarGymScript_753de + +.asm_75222 ld hl, CinnabarGymText_75a9d call PrintText ld hl, CinnabarGymText_75aa2 ld de, CinnabarGymText_75aa2 call SaveEndBattleTextPointers - jp CinnabarGymScript_758b7 + jp CinnabarGymScript_750c3 .asm_d87be ld hl, CinnabarGymText_75aa7 call PrintText @@ -453,20 +562,5 @@ CinnabarGymText_75aa7: ; 75aa7 (1d:5aa7) CinnabarGymText9: ; 75aac (1d:5aac) TX_ASM - CheckEvent EVENT_BEAT_BLAINE - jr nz, .asm_627d9 - ld hl, CinnabarGymText_75ac2 - jr .asm_0b11d -.asm_627d9 - ld hl, CinnabarGymText_75ac7 -.asm_0b11d - call PrintText + callab Func_f2133 jp TextScriptEnd - -CinnabarGymText_75ac2: ; 75ac2 (1d:5ac2) - TX_FAR _CinnabarGymText_75ac2 - db "@" - -CinnabarGymText_75ac7: ; 75ac7 (1d:5ac7) - TX_FAR _CinnabarGymText_75ac7 - db "@" diff --git a/scripts/cinnabargym2.asm b/scripts/cinnabargym2.asm new file mode 100755 index 00000000..a85a3206 --- /dev/null +++ b/scripts/cinnabargym2.asm @@ -0,0 +1,64 @@ +Func_f2133: + CheckEvent EVENT_BEAT_BLAINE + jr nz, .asm_627d9 + ld hl, CinnabarGymText_75ac2 + jr .asm_0b11d +.asm_627d9 + ld hl, CinnabarGymText_75ac7 +.asm_0b11d + call PrintText + ret + +CinnabarGymText_75ac2: ; 75ac2 (1d:5ac2) + TX_FAR _CinnabarGymText_75ac2 + db "@" + +CinnabarGymText_75ac7: ; 75ac7 (1d:5ac7) + TX_FAR _CinnabarGymText_75ac7 + db "@" + +Func_f2150: + ld hl, TextPointers_f215d + ld d, 0 + add hl, de + add hl, de + ld a, [hli] + ld h, [hl] + ld l, a + jp PrintText + +TextPointers_f215d: + dw CinnabarGymText_f2169 + dw CinnabarGymText_f216e + dw CinnabarGymText_f2173 + dw CinnabarGymText_f2178 + dw CinnabarGymText_f217d + dw CinnabarGymText_f2182 + +CinnabarGymText_f2169: + TX_FAR _CinnabarGymText_1 + db "@" + +CinnabarGymText_f216e: + TX_FAR _CinnabarGymText_2 + db "@" + +CinnabarGymText_f2173: + TX_FAR _CinnabarGymText_3 + db "@" + +CinnabarGymText_f2178: + TX_FAR _CinnabarGymText_4 + db "@" + +CinnabarGymText_f217d: + TX_FAR _CinnabarGymText_5 + db "@" + +CinnabarGymText_f2182: + TX_FAR _CinnabarGymText_6 + db "@" + +CinnabarGymText_f2187: + TX_FAR _CinnabarGymText_7 ; unused + db "@" -- cgit v1.3.1-sl0p From f90a30fedbb90fe86141325d47ae750eee926a4c Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Thu, 2 Jun 2016 13:07:08 -0400 Subject: Cinnabar Pokecenter --- data/mapObjects/cinnabarpokecenter.asm | 3 ++- data/map_header_banks.asm | 2 +- data/map_header_pointers.asm | 2 +- main.asm | 12 ++++++++---- scripts/cinnabarpokecenter.asm | 10 ++++++++-- 5 files changed, 20 insertions(+), 9 deletions(-) (limited to 'data/mapObjects') diff --git a/data/mapObjects/cinnabarpokecenter.asm b/data/mapObjects/cinnabarpokecenter.asm index f144db96..b855464e 100755 --- a/data/mapObjects/cinnabarpokecenter.asm +++ b/data/mapObjects/cinnabarpokecenter.asm @@ -7,11 +7,12 @@ CinnabarPokecenterObject: ; 0x75e46 (size=44) db $0 ; signs - db $4 ; objects + db $5 ; objects object SPRITE_NURSE, $3, $1, STAY, DOWN, $1 ; person object SPRITE_LASS, $9, $4, WALK, $0, $2 ; person object SPRITE_GENTLEMAN, $2, $6, STAY, NONE, $3 ; person object SPRITE_CABLE_CLUB_WOMAN, $b, $2, STAY, DOWN, $4 ; person + object SPRITE_CHANSEY, $4, $1, STAY, DOWN, $5 ; person ; warp-to EVENT_DISP CINNABAR_POKECENTER_WIDTH, $7, $3 diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm index 81b1b0a0..1473990c 100644 --- a/data/map_header_banks.asm +++ b/data/map_header_banks.asm @@ -171,7 +171,7 @@ MapHeaderBanks:: ; fc3e4 (3f:43e4) db BANK(Lab2_h) db BANK(Lab3_h) db BANK(Lab4_h) - db $1d ; db BANK(CinnabarPokecenter_h) + db BANK(CinnabarPokecenter_h) db $1d ; db BANK(CinnabarMart_h) db $1d ; db BANK(CinnabarMart_h) db $06 ; db BANK(IndigoPlateauLobby_h) diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm index ec11970c..ccc63377 100644 --- a/data/map_header_pointers.asm +++ b/data/map_header_pointers.asm @@ -171,7 +171,7 @@ MapHeaderPointers:: ; fc1f2 (3f:41f2) dw Lab2_h dw Lab3_h dw Lab4_h ;id=170 - dw $569b ; dw CinnabarPokecenter_h + dw CinnabarPokecenter_h dw $5701 ; dw CinnabarMart_h dw $5701 ; dw CinnabarMart_h ; unused dw $5d45 ; dw IndigoPlateauLobby_h diff --git a/main.asm b/main.asm index 2971048a..dd662934 100755 --- a/main.asm +++ b/main.asm @@ -814,8 +814,7 @@ INCLUDE "data/mapHeaders/lavendertown.asm" INCLUDE "data/mapObjects/lavendertown.asm" LavenderTownBlocks: INCBIN "maps/lavendertown.blk" ViridianPokecenterBlocks: -SaffronPokecenterBlocks: -CinnabarPokecenterBlocks: INCBIN "maps/viridianpokecenter.blk" +SaffronPokecenterBlocks: INCBIN "maps/viridianpokecenter.blk" dr $440fb,$4410b INCLUDE "scripts/lavendertown.asm" @@ -1602,7 +1601,8 @@ SECTION "bank1D",ROMX,BANK[$1D] PewterMartBlocks: INCBIN "maps/pewtermart.blk" FuchsiaHouse1Blocks: INCBIN "maps/fuchsiahouse1.blk" -FuchsiaPokecenterBlocks: INCBIN "maps/fuchsiapokecenter.blk" +FuchsiaPokecenterBlocks: +CinnabarPokecenterBlocks: INCBIN "maps/fuchsiapokecenter.blk" dr $7404c,$7405c INCLUDE "engine/items/itemfinder.asm" @@ -1692,7 +1692,11 @@ INCLUDE "data/mapHeaders/lab4.asm" INCLUDE "scripts/lab4.asm" INCLUDE "data/mapObjects/lab4.asm" Lab4Blocks: INCBIN "maps/lab4.blk" - dr $7569b,$757a0 + +INCLUDE "data/mapHeaders/cinnabarpokecenter.asm" +INCLUDE "scripts/cinnabarpokecenter.asm" +INCLUDE "data/mapObjects/cinnabarpokecenter.asm" + dr $75701,$757a0 INCLUDE "data/mapHeaders/gary.asm" INCLUDE "scripts/gary.asm" diff --git a/scripts/cinnabarpokecenter.asm b/scripts/cinnabarpokecenter.asm index abae9d8d..fd49ae85 100755 --- a/scripts/cinnabarpokecenter.asm +++ b/scripts/cinnabarpokecenter.asm @@ -7,9 +7,10 @@ CinnabarPokecenterTextPointers: ; 75e32 (1d:5e32) dw CinnabarPokecenterText2 dw CinnabarPokecenterText3 dw CinnabarPokecenterText4 + dw CinnabarPokecenterText5 CinnabarPokecenterText1: ; 75e3a (1d:5e3a) - db $ff + TX_POKECENTER_NURSE CinnabarPokecenterText2: ; 75e3b (1d:5e3b) TX_FAR _CinnabarPokecenterText1 @@ -20,4 +21,9 @@ CinnabarPokecenterText3: ; 75e40 (1d:5e40) db "@" CinnabarPokecenterText4: ; 75e45 (1d:5e45) - db $f6 + TX_CABLE_CLUB_RECEPTIONIST + +CinnabarPokecenterText5: + TX_ASM + callab PokecenterChanseyText + jp TextScriptEnd -- cgit v1.3.1-sl0p From 34061c6d0fae84b4a572bb2792ec6c09ede95e20 Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Thu, 2 Jun 2016 13:13:31 -0400 Subject: Copycat's House 1F --- data/mapObjects/copycatshouse1f.asm | 2 +- data/map_header_banks.asm | 2 +- data/map_header_pointers.asm | 2 +- main.asm | 8 +++++--- 4 files changed, 8 insertions(+), 6 deletions(-) (limited to 'data/mapObjects') diff --git a/data/mapObjects/copycatshouse1f.asm b/data/mapObjects/copycatshouse1f.asm index 96787714..983baa99 100755 --- a/data/mapObjects/copycatshouse1f.asm +++ b/data/mapObjects/copycatshouse1f.asm @@ -11,7 +11,7 @@ CopycatsHouse1FObject: ; 0x75ee3 (size=46) db $3 ; objects object SPRITE_MOM_GEISHA, $2, $2, STAY, DOWN, $1 ; person object SPRITE_FAT_BALD_GUY, $5, $4, STAY, LEFT, $2 ; person - object SPRITE_CLEFAIRY, $1, $4, WALK, $1, $3 ; person + object SPRITE_CHANSEY, $1, $4, STAY, NONE, $3 ; person ; warp-to EVENT_DISP COPYCATS_HOUSE_1F_WIDTH, $7, $2 diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm index e2eefc08..1239167c 100644 --- a/data/map_header_banks.asm +++ b/data/map_header_banks.asm @@ -175,7 +175,7 @@ MapHeaderBanks:: ; fc3e4 (3f:43e4) db BANK(CinnabarMart_h) db BANK(CinnabarMart_h) db $06 ; db BANK(IndigoPlateauLobby_h) - db $1d ; db BANK(CopycatsHouse1F_h) + db BANK(CopycatsHouse1F_h) db $17 ; db BANK(CopycatsHouse2F_h) db $17 ; db BANK(FightingDojo_h) db $17 ; db BANK(SaffronGym_h) diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm index dc1588c6..c0d1b477 100644 --- a/data/map_header_pointers.asm +++ b/data/map_header_pointers.asm @@ -175,7 +175,7 @@ MapHeaderPointers:: ; fc1f2 (3f:41f2) dw CinnabarMart_h dw CinnabarMart_h ; unused dw $5d45 ; dw IndigoPlateauLobby_h - dw $5746 ; dw CopycatsHouse1F_h + dw CopycatsHouse1F_h dw $4b5b ; dw CopycatsHouse2F_h dw $4c47 ; dw FightingDojo_h dw $4ef7 ; dw SaffronGym_h diff --git a/main.asm b/main.asm index 3354d6e9..060d6162 100755 --- a/main.asm +++ b/main.asm @@ -1596,8 +1596,7 @@ INCLUDE "engine/save.asm" SECTION "bank1D",ROMX,BANK[$1D] - dr $74000,$74010 - +CopycatsHouse1FBlocks: INCBIN "maps/copycatshouse1f.blk" PewterMartBlocks: CinnabarMartBlocks: INCBIN "maps/pewtermart.blk" FuchsiaHouse1Blocks: INCBIN "maps/fuchsiahouse1.blk" @@ -1700,7 +1699,10 @@ INCLUDE "data/mapObjects/cinnabarpokecenter.asm" INCLUDE "data/mapHeaders/cinnabarmart.asm" INCLUDE "scripts/cinnabarmart.asm" INCLUDE "data/mapObjects/cinnabarmart.asm" - dr $75746,$757a0 + +INCLUDE "data/mapHeaders/copycatshouse1f.asm" +INCLUDE "scripts/copycatshouse1f.asm" +INCLUDE "data/mapObjects/copycatshouse1f.asm" INCLUDE "data/mapHeaders/gary.asm" INCLUDE "scripts/gary.asm" -- cgit v1.3.1-sl0p From eb83973a646203425a52cbb80d03efcfdb04bc6a Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Thu, 2 Jun 2016 13:18:57 -0400 Subject: Indigo Plateau Lobby --- data/mapObjects/indigoplateaulobby.asm | 3 ++- data/map_header_banks.asm | 2 +- data/map_header_pointers.asm | 2 +- main.asm | 8 +++++++- scripts/indigoplateaulobby.asm | 10 ++++++++-- 5 files changed, 19 insertions(+), 6 deletions(-) (limited to 'data/mapObjects') diff --git a/data/mapObjects/indigoplateaulobby.asm b/data/mapObjects/indigoplateaulobby.asm index dfcd97b7..c41e2cfc 100755 --- a/data/mapObjects/indigoplateaulobby.asm +++ b/data/mapObjects/indigoplateaulobby.asm @@ -8,12 +8,13 @@ IndigoPlateauLobbyObject: ; 0x19c95 (size=58) db $0 ; signs - db $5 ; objects + db $6 ; objects object SPRITE_NURSE, $7, $5, STAY, DOWN, $1 ; person object SPRITE_GYM_HELPER, $4, $9, STAY, RIGHT, $2 ; person object SPRITE_LASS, $5, $1, STAY, DOWN, $3 ; person object SPRITE_MART_GUY, $0, $5, STAY, RIGHT, $4 ; person object SPRITE_CABLE_CLUB_WOMAN, $d, $6, STAY, DOWN, $5 ; person + object SPRITE_CHANSEY, $8, $5, STAY, DOWN, $6 ; person ; warp-to EVENT_DISP INDIGO_PLATEAU_LOBBY_WIDTH, $b, $7 diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm index 1239167c..4793e452 100644 --- a/data/map_header_banks.asm +++ b/data/map_header_banks.asm @@ -174,7 +174,7 @@ MapHeaderBanks:: ; fc3e4 (3f:43e4) db BANK(CinnabarPokecenter_h) db BANK(CinnabarMart_h) db BANK(CinnabarMart_h) - db $06 ; db BANK(IndigoPlateauLobby_h) + db BANK(IndigoPlateauLobby_h) db BANK(CopycatsHouse1F_h) db $17 ; db BANK(CopycatsHouse2F_h) db $17 ; db BANK(FightingDojo_h) diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm index c0d1b477..7c16b7e2 100644 --- a/data/map_header_pointers.asm +++ b/data/map_header_pointers.asm @@ -174,7 +174,7 @@ MapHeaderPointers:: ; fc1f2 (3f:41f2) dw CinnabarPokecenter_h dw CinnabarMart_h dw CinnabarMart_h ; unused - dw $5d45 ; dw IndigoPlateauLobby_h + dw IndigoPlateauLobby_h dw CopycatsHouse1F_h dw $4b5b ; dw CopycatsHouse2F_h dw $4c47 ; dw FightingDojo_h diff --git a/main.asm b/main.asm index 060d6162..6fe3e4fd 100755 --- a/main.asm +++ b/main.asm @@ -272,7 +272,13 @@ INCLUDE "data/mapHeaders/blueshouse.asm" INCLUDE "scripts/blueshouse.asm" INCLUDE "data/mapObjects/blueshouse.asm" BluesHouseBlocks: INCBIN "maps/blueshouse.blk" - dr $19d05,$1a4ea + dr $19d05,$19d45 + +INCLUDE "data/mapHeaders/indigoplateaulobby.asm" +INCLUDE "scripts/indigoplateaulobby.asm" +INCLUDE "data/mapObjects/indigoplateaulobby.asm" +IndigoPlateauLobbyBlocks: INCBIN "maps/indigoplateaulobby.blk" + dr $19e09,$1a4ea INCLUDE "engine/overworld/npc_movement.asm" INCLUDE "engine/overworld/doors.asm" diff --git a/scripts/indigoplateaulobby.asm b/scripts/indigoplateaulobby.asm index 7655d8c7..c639adb7 100755 --- a/scripts/indigoplateaulobby.asm +++ b/scripts/indigoplateaulobby.asm @@ -20,9 +20,10 @@ IndigoPlateauLobbyTextPointers: ; 19c7f (6:5c7f) dw IndigoPlateauLobbyText3 dw IndigoPlateauLobbyText4 dw IndigoPlateauLobbyText5 + dw IndigoPlateauLobbyText6 IndigoPlateauLobbyText1: ; 19c89 (6:5c89) - db $ff + TX_POKECENTER_NURSE IndigoPlateauLobbyText2: ; 19c8a (6:5c8a) TX_FAR _IndigoPlateauLobbyText1 @@ -33,4 +34,9 @@ IndigoPlateauLobbyText3: ; 19c8f (6:5c8f) db "@" IndigoPlateauLobbyText5: ; 19c94 (6:5c94) - db $f6 + TX_CABLE_CLUB_RECEPTIONIST + +IndigoPlateauLobbyText6: + TX_ASM + callab PokecenterChanseyText + jp TextScriptEnd -- cgit v1.3.1-sl0p From f963d9019a6e728c7293783ca8ee6e10dd6c8876 Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Thu, 2 Jun 2016 14:19:19 -0400 Subject: Saffron Gym --- data/mapObjects/saffrongym.asm | 2 +- data/map_header_banks.asm | 2 +- data/map_header_pointers.asm | 2 +- main.asm | 7 ++++++- 4 files changed, 9 insertions(+), 4 deletions(-) (limited to 'data/mapObjects') diff --git a/data/mapObjects/saffrongym.asm b/data/mapObjects/saffrongym.asm index 63676905..20d91991 100755 --- a/data/mapObjects/saffrongym.asm +++ b/data/mapObjects/saffrongym.asm @@ -38,7 +38,7 @@ SaffronGymObject: ; 0x5d259 (size=330) db $0 ; signs db $9 ; objects - object SPRITE_GIRL, $9, $8, STAY, DOWN, $1, OPP_SABRINA, $1 + object SPRITE_LASS, $9, $8, STAY, DOWN, $1, OPP_SABRINA, $1 object SPRITE_MEDIUM, $a, $1, STAY, DOWN, $2, OPP_CHANNELER, $16 object SPRITE_BUG_CATCHER, $11, $1, STAY, DOWN, $3, OPP_PSYCHIC_TR, $1 object SPRITE_MEDIUM, $3, $7, STAY, DOWN, $4, OPP_CHANNELER, $17 diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm index 026ae661..abd68b70 100644 --- a/data/map_header_banks.asm +++ b/data/map_header_banks.asm @@ -178,7 +178,7 @@ MapHeaderBanks:: ; fc3e4 (3f:43e4) db BANK(CopycatsHouse1F_h) db BANK(CopycatsHouse2F_h) db BANK(FightingDojo_h) - db $17 ; db BANK(SaffronGym_h) + db BANK(SaffronGym_h) db $07 ; db BANK(SaffronHouse1_h) db $17 ; db BANK(SaffronMart_h) db $17 ; db BANK(SilphCo1_h) diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm index 66f99bdf..0b85ed42 100644 --- a/data/map_header_pointers.asm +++ b/data/map_header_pointers.asm @@ -178,7 +178,7 @@ MapHeaderPointers:: ; fc1f2 (3f:41f2) dw CopycatsHouse1F_h dw CopycatsHouse2F_h dw FightingDojo_h - dw $4ef7 ; dw SaffronGym_h + dw SaffronGym_h dw $56db ; dw SaffronHouse1_h dw $52f3 ; dw SaffronMart_h ;id=180 dw $5338 ; dw SilphCo1_h diff --git a/main.asm b/main.asm index 1d1bf43a..3a3a7ee1 100755 --- a/main.asm +++ b/main.asm @@ -1406,7 +1406,12 @@ INCLUDE "data/mapHeaders/fightingdojo.asm" INCLUDE "scripts/fightingdojo.asm" INCLUDE "data/mapObjects/fightingdojo.asm" FightingDojoBlocks: INCBIN "maps/fightingdojo.blk" - dr $5cef7,$5d485 + +INCLUDE "data/mapHeaders/saffrongym.asm" +INCLUDE "scripts/saffrongym.asm" +INCLUDE "data/mapObjects/saffrongym.asm" +SaffronGymBlocks: INCBIN "maps/saffrongym.blk" + dr $5d2f3,$5d485 INCLUDE "data/mapHeaders/viridianforestexit.asm" INCLUDE "scripts/viridianforestexit.asm" -- cgit v1.3.1-sl0p From 76185838e2961efb0bb1eacdbf37a45e29ca1a52 Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Thu, 2 Jun 2016 14:30:10 -0400 Subject: Saffron Mart, Pokecenter, and Silph 1F --- data/mapObjects/saffronpokecenter.asm | 3 ++- data/map_header_banks.asm | 6 +++--- data/map_header_pointers.asm | 6 +++--- main.asm | 26 +++++++++++++++++++------- scripts/saffronpokecenter.asm | 10 ++++++++-- 5 files changed, 35 insertions(+), 16 deletions(-) (limited to 'data/mapObjects') diff --git a/data/mapObjects/saffronpokecenter.asm b/data/mapObjects/saffronpokecenter.asm index 8487bb01..bda46343 100755 --- a/data/mapObjects/saffronpokecenter.asm +++ b/data/mapObjects/saffronpokecenter.asm @@ -7,11 +7,12 @@ SaffronPokecenterObject: ; 0x5d54f (size=44) db $0 ; signs - db $4 ; objects + db $5 ; objects object SPRITE_NURSE, $3, $1, STAY, DOWN, $1 ; person object SPRITE_FOULARD_WOMAN, $5, $5, STAY, NONE, $2 ; person object SPRITE_GENTLEMAN, $8, $3, STAY, DOWN, $3 ; person object SPRITE_CABLE_CLUB_WOMAN, $b, $2, STAY, DOWN, $4 ; person + object SPRITE_CHANSEY, $4, $1, STAY, DOWN, $5 ; person ; warp-to EVENT_DISP SAFFRON_POKECENTER_WIDTH, $7, $3 diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm index 5b968c1e..322d2eb8 100644 --- a/data/map_header_banks.asm +++ b/data/map_header_banks.asm @@ -180,9 +180,9 @@ MapHeaderBanks:: ; fc3e4 (3f:43e4) db BANK(FightingDojo_h) db BANK(SaffronGym_h) db BANK(SaffronHouse1_h) - db $17 ; db BANK(SaffronMart_h) - db $17 ; db BANK(SilphCo1_h) - db $17 ; db BANK(SaffronPokecenter_h) + db BANK(SaffronMart_h) + db BANK(SilphCo1_h) + db BANK(SaffronPokecenter_h) db BANK(SaffronHouse2_h) db $12 ; db BANK(Route15Gate_h) db $12 ; db BANK(Route15GateUpstairs_h) diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm index 8b4e634c..5fd190b6 100644 --- a/data/map_header_pointers.asm +++ b/data/map_header_pointers.asm @@ -180,9 +180,9 @@ MapHeaderPointers:: ; fc1f2 (3f:41f2) dw FightingDojo_h dw SaffronGym_h dw SaffronHouse1_h - dw $52f3 ; dw SaffronMart_h ;id=180 - dw $5338 ; dw SilphCo1_h - dw $541f ; dw SaffronPokecenter_h + dw SaffronMart_h ;id=180 + dw SilphCo1_h + dw SaffronPokecenter_h dw SaffronHouse2_h dw $558d ; dw Route15Gate_h dw $55d5 ; dw Route15GateUpstairs_h diff --git a/main.asm b/main.asm index 3febabb2..21f5d43a 100755 --- a/main.asm +++ b/main.asm @@ -325,8 +325,7 @@ INCLUDE "data/mapHeaders/viridianmart.asm" INCLUDE "scripts/viridianmart.asm" INCLUDE "data/mapObjects/viridianmart.asm" ViridianMartBlocks: -CeladonMartBlocks: -SaffronMartBlocks: INCBIN "maps/viridianmart.blk" +CeladonMartBlocks:INCBIN "maps/viridianmart.blk" INCLUDE "data/mapHeaders/school.asm" INCLUDE "scripts/school.asm" @@ -827,8 +826,7 @@ SECTION "bank11",ROMX,BANK[$11] INCLUDE "data/mapHeaders/lavendertown.asm" INCLUDE "data/mapObjects/lavendertown.asm" LavenderTownBlocks: INCBIN "maps/lavendertown.blk" -ViridianPokecenterBlocks: -SaffronPokecenterBlocks: INCBIN "maps/viridianpokecenter.blk" +ViridianPokecenterBlocks: INCBIN "maps/viridianpokecenter.blk" dr $440fb,$4410b INCLUDE "scripts/lavendertown.asm" @@ -1327,14 +1325,16 @@ INCLUDE "engine/overworld/saffron_guards.asm" SECTION "bank17",ROMX,BANK[$17] CeruleanMartBlocks: VermilionMartBlocks: -LavenderMartBlocks: INCBIN "maps/ceruleanmart.blk" +LavenderMartBlocks: +SaffronMartBlocks: INCBIN "maps/ceruleanmart.blk" RedsHouse2FBlocks: CopycatsHouse2FBlocks: INCBIN "maps/redshouse2f.blk" Museum1FBlocks: INCBIN "maps/museum1f.blk" Museum2FBlocks: INCBIN "maps/museum2f.blk" PewterPokecenterBlocks: VermilionPokecenterBlocks: -LavenderPokecenterBlocks: INCBIN "maps/pewterpokecenter.blk" +LavenderPokecenterBlocks: +SaffronPokecenterBlocks: INCBIN "maps/pewterpokecenter.blk" UndergroundPathEntranceRoute5Blocks: UndergroundPathEntranceRoute6Blocks: UndergroundPathEntranceRoute7Blocks: @@ -1420,7 +1420,19 @@ INCLUDE "data/mapHeaders/saffrongym.asm" INCLUDE "scripts/saffrongym.asm" INCLUDE "data/mapObjects/saffrongym.asm" SaffronGymBlocks: INCBIN "maps/saffrongym.blk" - dr $5d2f3,$5d485 + +INCLUDE "data/mapHeaders/saffronmart.asm" +INCLUDE "scripts/saffronmart.asm" +INCLUDE "data/mapObjects/saffronmart.asm" + +INCLUDE "data/mapHeaders/silphco1.asm" +INCLUDE "scripts/silphco1.asm" +INCLUDE "data/mapObjects/silphco1.asm" +SilphCo1Blocks: INCBIN "maps/silphco1.blk" + +INCLUDE "data/mapHeaders/saffronpokecenter.asm" +INCLUDE "scripts/saffronpokecenter.asm" +INCLUDE "data/mapObjects/saffronpokecenter.asm" INCLUDE "data/mapHeaders/viridianforestexit.asm" INCLUDE "scripts/viridianforestexit.asm" diff --git a/scripts/saffronpokecenter.asm b/scripts/saffronpokecenter.asm index 8f569a8e..05420812 100755 --- a/scripts/saffronpokecenter.asm +++ b/scripts/saffronpokecenter.asm @@ -7,9 +7,10 @@ SaffronPokecenterTextPointers: ; 5d53b (17:553b) dw SaffronPokecenterText2 dw SaffronPokecenterText3 dw SaffronPokecenterText4 + dw SaffronPokecenterText5 SaffronPokecenterText1: ; 5d543 (17:5543) - db $ff + TX_POKECENTER_NURSE SaffronPokecenterText2: ; 5d544 (17:5544) TX_FAR _SaffronPokecenterText1 @@ -20,4 +21,9 @@ SaffronPokecenterText3: ; 5d549 (17:5549) db "@" SaffronPokecenterText4: ; 5d54e (17:554e) - db $f6 + TX_CABLE_CLUB_RECEPTIONIST + +SaffronPokecenterText5: + TX_ASM + callab PokecenterChanseyText + jp TextScriptEnd -- cgit v1.3.1-sl0p From 68b566d0b2656eee33b0be7d29b98583b6aadc4c Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Thu, 2 Jun 2016 14:53:06 -0400 Subject: Route 15, 16, and 18 gates --- data/mapObjects/route18gateupstairs.asm | 2 +- data/map_header_banks.asm | 12 +++++------ data/map_header_pointers.asm | 12 +++++------ main.asm | 35 ++++++++++++++++++++++++++++++--- 4 files changed, 45 insertions(+), 16 deletions(-) (limited to 'data/mapObjects') diff --git a/data/mapObjects/route18gateupstairs.asm b/data/mapObjects/route18gateupstairs.asm index c611e0c3..93438044 100755 --- a/data/mapObjects/route18gateupstairs.asm +++ b/data/mapObjects/route18gateupstairs.asm @@ -9,7 +9,7 @@ Route18GateUpstairsObject: ; 0x499a4 (size=24) db $2, $6, $3 ; Route18GateUpstairsText3 db $1 ; objects - object SPRITE_BUG_CATCHER, $4, $2, WALK, $2, $1 ; person + object SPRITE_COOK, $4, $2, WALK, $2, $1 ; person ; warp-to EVENT_DISP ROUTE_18_GATE_2F_WIDTH, $7, $7 ; ROUTE_18_GATE_1F diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm index 322d2eb8..a552d9fa 100644 --- a/data/map_header_banks.asm +++ b/data/map_header_banks.asm @@ -184,14 +184,14 @@ MapHeaderBanks:: ; fc3e4 (3f:43e4) db BANK(SilphCo1_h) db BANK(SaffronPokecenter_h) db BANK(SaffronHouse2_h) - db $12 ; db BANK(Route15Gate_h) - db $12 ; db BANK(Route15GateUpstairs_h) - db $12 ; db BANK(Route16Gate_h) - db $12 ; db BANK(Route16GateUpstairs_h) + db BANK(Route15Gate_h) + db BANK(Route15GateUpstairs_h) + db BANK(Route16Gate_h) + db BANK(Route16GateUpstairs_h) db $07 ; db BANK(Route16House_h) db $15 ; db BANK(Route12House_h) - db $12 ; db BANK(Route18Gate_h) - db $12 ; db BANK(Route18GateUpstairs_h) + db BANK(Route18Gate_h) + db BANK(Route18GateUpstairs_h) db $11 ; db BANK(SeafoamIslands1_h) db $07 ; db BANK(Route22Gate_h) db $14 ; db BANK(VictoryRoad2_h) diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm index 5fd190b6..49293c55 100644 --- a/data/map_header_pointers.asm +++ b/data/map_header_pointers.asm @@ -184,14 +184,14 @@ MapHeaderPointers:: ; fc1f2 (3f:41f2) dw SilphCo1_h dw SaffronPokecenter_h dw SaffronHouse2_h - dw $558d ; dw Route15Gate_h - dw $55d5 ; dw Route15GateUpstairs_h - dw $5649 ; dw Route16Gate_h - dw $5796 ; dw Route16GateUpstairs_h + dw Route15Gate_h + dw Route15GateUpstairs_h + dw Route16Gate_h + dw Route16GateUpstairs_h dw $5ef6 ; dw Route16House_h dw $64a5 ; dw Route12House_h - dw $5801 ; dw Route18Gate_h ;id=190 - dw $5900 ; dw Route18GateUpstairs_h + dw Route18Gate_h ;id=190 + dw Route18GateUpstairs_h dw $487e ; dw SeafoamIslands1_h dw $5f81 ; dw Route22Gate_h dw $57cc ; dw VictoryRoad2_h diff --git a/main.asm b/main.asm index 21f5d43a..e72bcefa 100755 --- a/main.asm +++ b/main.asm @@ -891,9 +891,14 @@ Route7Blocks: INCBIN "maps/route7.blk" ; 48051 MtMoonPokecenterBlocks: RockTunnelPokecenterBlocks: CeladonPokecenterBlocks: INCBIN "maps/mtmoonpokecenter.blk" -Route11GateBlocks: INCBIN "maps/route11gate.blk" +Route11GateBlocks: +Route15GateBlocks: +Route18GateBlocks: INCBIN "maps/route11gate.blk" Route11GateUpstairsBlocks: -Route12GateUpstairsBlocks: INCBIN "maps/route11gateupstairs.blk" +Route12GateUpstairsBlocks: +Route15GateUpstairsBlocks: +Route16GateUpstairsBlocks: +Route18GateUpstairsBlocks: INCBIN "maps/route11gateupstairs.blk" INCLUDE "scripts/route7.asm" INCLUDE "data/mapHeaders/redshouse1f.asm" @@ -1004,7 +1009,31 @@ Route12GateBlocks: INCBIN "maps/route12gate.blk" INCLUDE "data/mapHeaders/route12gateupstairs.asm" INCLUDE "scripts/route12gateupstairs.asm" INCLUDE "data/mapObjects/route12gateupstairs.asm" - dr $4958d,$49953 + +INCLUDE "data/mapHeaders/route15gate.asm" +INCLUDE "scripts/route15gate.asm" +INCLUDE "data/mapObjects/route15gate.asm" + +INCLUDE "data/mapHeaders/route15gateupstairs.asm" +INCLUDE "scripts/route15gateupstairs.asm" +INCLUDE "data/mapObjects/route15gateupstairs.asm" + +INCLUDE "data/mapHeaders/route16gate.asm" +INCLUDE "scripts/route16gate.asm" +INCLUDE "data/mapObjects/route16gate.asm" +Route16GateBlocks: INCBIN "maps/route16gate.blk" + +INCLUDE "data/mapHeaders/route16gateupstairs.asm" +INCLUDE "scripts/route16gateupstairs.asm" +INCLUDE "data/mapObjects/route16gateupstairs.asm" + +INCLUDE "data/mapHeaders/route18gate.asm" +INCLUDE "scripts/route18gate.asm" +INCLUDE "data/mapObjects/route18gate.asm" + +INCLUDE "data/mapHeaders/route18gateupstairs.asm" +INCLUDE "scripts/route18gateupstairs.asm" +INCLUDE "data/mapObjects/route18gateupstairs.asm" INCLUDE "data/mapHeaders/mtmoon1.asm" INCLUDE "scripts/mtmoon1.asm" -- cgit v1.3.1-sl0p From 8455e51b86c1e5d33e3290e30b48bde663038226 Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Thu, 2 Jun 2016 23:45:22 -0400 Subject: Seafoam Islands 1 and Route 22 Gate --- data/mapObjects/route22gate.asm | 2 +- data/mapObjects/seafoamislands1.asm | 4 ---- data/map_header_banks.asm | 4 ++-- data/map_header_pointers.asm | 4 ++-- main.asm | 12 ++++++++++-- scripts/route22gate.asm | 10 +++++++--- 6 files changed, 22 insertions(+), 14 deletions(-) (limited to 'data/mapObjects') diff --git a/data/mapObjects/route22gate.asm b/data/mapObjects/route22gate.asm index 604a8730..02f11d58 100755 --- a/data/mapObjects/route22gate.asm +++ b/data/mapObjects/route22gate.asm @@ -5,7 +5,7 @@ Route22GateObject: ; 0x1e720 (size=42) db $7, $4, $0, $ff db $7, $5, $0, $ff db $0, $4, $0, $ff - db $0, $5, $1, $ff + db $0, $5, $0, $ff db $0 ; signs diff --git a/data/mapObjects/seafoamislands1.asm b/data/mapObjects/seafoamislands1.asm index 287f67ce..3b3d4f7a 100755 --- a/data/mapObjects/seafoamislands1.asm +++ b/data/mapObjects/seafoamislands1.asm @@ -24,7 +24,3 @@ SeafoamIslands1Object: ; 0x4484f (size=72) EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $5, $7 ; SEAFOAM_ISLANDS_2 EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $3, $19 ; SEAFOAM_ISLANDS_2 EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $f, $17 ; SEAFOAM_ISLANDS_2 - - ; holes - EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $6, $11 - EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $6, $18 diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm index 52f4b49f..00d29a22 100644 --- a/data/map_header_banks.asm +++ b/data/map_header_banks.asm @@ -192,8 +192,8 @@ MapHeaderBanks:: ; fc3e4 (3f:43e4) db BANK(Route12House_h) db BANK(Route18Gate_h) db BANK(Route18GateUpstairs_h) - db $11 ; db BANK(SeafoamIslands1_h) - db $07 ; db BANK(Route22Gate_h) + db BANK(SeafoamIslands1_h) + db BANK(Route22Gate_h) db $14 ; db BANK(VictoryRoad2_h) db $12 ; db BANK(Route12GateUpstairs_h) db $06 ; db BANK(VermilionHouse3_h) diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm index 0177e164..63b135da 100644 --- a/data/map_header_pointers.asm +++ b/data/map_header_pointers.asm @@ -192,8 +192,8 @@ MapHeaderPointers:: ; fc1f2 (3f:41f2) dw Route12House_h dw Route18Gate_h ;id=190 dw Route18GateUpstairs_h - dw $487e ; dw SeafoamIslands1_h - dw $5f81 ; dw Route22Gate_h + dw SeafoamIslands1_h + dw Route22Gate_h dw $57cc ; dw VictoryRoad2_h dw $54eb ; dw Route12GateUpstairs_h dw $5d05 ; dw VermilionHouse3_h diff --git a/main.asm b/main.asm index a7fc7642..7196732a 100755 --- a/main.asm +++ b/main.asm @@ -436,7 +436,11 @@ INCLUDE "data/mapObjects/diglettscaveroute11.asm" INCLUDE "data/mapHeaders/route16house.asm" INCLUDE "scripts/route16house.asm" INCLUDE "data/mapObjects/route16house.asm" - dr $1df81,$1e06e ; map scripts + +INCLUDE "data/mapHeaders/route22gate.asm" +INCLUDE "scripts/route22gate.asm" +INCLUDE "data/mapObjects/route22gate.asm" +Route22GateBlocks: INCBIN "maps/route22gate.blk" INCLUDE "data/mapHeaders/billshouse.asm" INCLUDE "scripts/billshouse.asm" @@ -856,7 +860,11 @@ INCLUDE "data/mapHeaders/rocktunnel1.asm" INCLUDE "scripts/rocktunnel1.asm" INCLUDE "data/mapObjects/rocktunnel1.asm" RockTunnel1Blocks: INCBIN "maps/rocktunnel1.blk" - dr $4487e,$449bf + +INCLUDE "data/mapHeaders/seafoamislands1.asm" +INCLUDE "scripts/seafoamislands1.asm" +INCLUDE "data/mapObjects/seafoamislands1.asm" +SeafoamIslands1Blocks: INCBIN "maps/seafoamislands1.blk" INCLUDE "data/mapHeaders/ssanne3.asm" INCLUDE "scripts/ssanne3.asm" diff --git a/scripts/route22gate.asm b/scripts/route22gate.asm index 5fdd70c8..c957e4a6 100755 --- a/scripts/route22gate.asm +++ b/scripts/route22gate.asm @@ -23,9 +23,12 @@ Route22GateScript0: ; 1e6a4 (7:66a4) ret nc xor a ld [hJoyHeld], a + ld a, SPRITE_FACING_LEFT + ld [wSpriteStateData1 + 1 * $10 + 9], a ld a, $1 ld [hSpriteIndexOrTextID], a - jp DisplayTextID + call DisplayTextID + ret Route22GateScriptCoords: ; 1e6b5 (7:66b5) db 2,4 @@ -59,7 +62,7 @@ Route22GateTextPointers: ; 1e6df (7:66df) Route22GateText1: ; 1e6e1 (7:66e1) TX_ASM ld a, [wObtainedBadges] - bit 0, a + bit 0, a ; BOULDERBADGE jr nz, .asm_1e6f6 ld hl, Route22GateText_1e704 call PrintText @@ -89,4 +92,5 @@ Route22GateText_1e715: ; 1e715 (7:6715) Route22GateText_1e71a: ; 1e71a (7:671a) TX_FAR _Route22GateText_1e71a - db $0B, "@" + TX_SFX_ITEM + db "@" -- cgit v1.3.1-sl0p From 0a2b8a28eb46a7595cb4f3794ab4187bafd331b4 Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Fri, 3 Jun 2016 08:41:20 -0400 Subject: Vermilion House 3 --- data/mapObjects/vermilionhouse3.asm | 2 +- data/map_header_banks.asm | 4 ++-- data/map_header_pointers.asm | 4 ++-- main.asm | 6 +++++- scripts/vermilionhouse3.asm | 7 ++----- 5 files changed, 12 insertions(+), 11 deletions(-) (limited to 'data/mapObjects') diff --git a/data/mapObjects/vermilionhouse3.asm b/data/mapObjects/vermilionhouse3.asm index ab955a20..161ad090 100755 --- a/data/mapObjects/vermilionhouse3.asm +++ b/data/mapObjects/vermilionhouse3.asm @@ -8,7 +8,7 @@ VermilionHouse3Object: ; 0x19c25 (size=26) db $0 ; signs db $1 ; objects - object SPRITE_LITTLE_GIRL, $3, $5, STAY, UP, $1 ; person + object SPRITE_GENTLEMAN, $3, $5, STAY, UP, $1 ; person ; warp-to EVENT_DISP VERMILION_HOUSE_3_WIDTH, $7, $2 diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm index b99b30dd..92808e01 100644 --- a/data/map_header_banks.asm +++ b/data/map_header_banks.asm @@ -195,8 +195,8 @@ MapHeaderBanks:: ; fc3e4 (3f:43e4) db BANK(SeafoamIslands1_h) db BANK(Route22Gate_h) db BANK(VictoryRoad2_h) - db $12 ; db BANK(Route12GateUpstairs_h) - db $06 ; db BANK(VermilionHouse3_h) + db BANK(Route12GateUpstairs_h) + db BANK(VermilionHouse3_h) db $18 ; db BANK(DiglettsCave_h) db $11 ; db BANK(VictoryRoad3_h) db $11 ; db BANK(RocketHideout1_h) diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm index 6313b16b..887ee9d6 100644 --- a/data/map_header_pointers.asm +++ b/data/map_header_pointers.asm @@ -195,8 +195,8 @@ MapHeaderPointers:: ; fc1f2 (3f:41f2) dw SeafoamIslands1_h dw Route22Gate_h dw VictoryRoad2_h - dw $54eb ; dw Route12GateUpstairs_h - dw $5d05 ; dw VermilionHouse3_h + dw Route12GateUpstairs_h + dw VermilionHouse3_h dw $5f79 ; dw DiglettsCave_h dw $4a0d ; dw VictoryRoad3_h dw $4c5e ; dw RocketHideout1_h diff --git a/main.asm b/main.asm index 1f723fc5..6cad2933 100755 --- a/main.asm +++ b/main.asm @@ -272,7 +272,11 @@ INCLUDE "data/mapHeaders/blueshouse.asm" INCLUDE "scripts/blueshouse.asm" INCLUDE "data/mapObjects/blueshouse.asm" BluesHouseBlocks: INCBIN "maps/blueshouse.blk" - dr $19d05,$19d45 + +INCLUDE "data/mapHeaders/vermilionhouse3.asm" +INCLUDE "scripts/vermilionhouse3.asm" +INCLUDE "data/mapObjects/vermilionhouse3.asm" +VermilionHouse3Blocks: INCBIN "maps/vermilionhouse3.blk" INCLUDE "data/mapHeaders/indigoplateaulobby.asm" INCLUDE "scripts/indigoplateaulobby.asm" diff --git a/scripts/vermilionhouse3.asm b/scripts/vermilionhouse3.asm index 478979da..fef07152 100755 --- a/scripts/vermilionhouse3.asm +++ b/scripts/vermilionhouse3.asm @@ -5,8 +5,5 @@ VermilionHouse3TextPointers: ; 19c15 (6:5c15) dw VermilionHouse3Text1 VermilionHouse3Text1: ; 19c17 (6:5c17) - TX_ASM - ld a, $4 - ld [wWhichTrade], a - predef DoInGameTradeDialogue - jp TextScriptEnd + TX_FAR TeachingHMsText + db "@" -- cgit v1.3.1-sl0p From bb2aea02d5f1a9a022993259e4c9993a4df02c98 Mon Sep 17 00:00:00 2001 From: pikalaxalt Date: Fri, 3 Jun 2016 15:42:29 -0400 Subject: Rocket Hideout and tileset headers --- constants/hide_show_constants.asm | 250 +++++++++++----------- data/mapObjects/rockethideout4.asm | 4 +- data/map_header_banks.asm | 10 +- data/map_header_pointers.asm | 16 +- data/tileset_headers.asm | 52 ++--- main.asm | 92 +++++++- scripts/rockethideout4.asm | 428 +++++++++++++++++++++++++++---------- 7 files changed, 562 insertions(+), 290 deletions(-) (limited to 'data/mapObjects') diff --git a/constants/hide_show_constants.asm b/constants/hide_show_constants.asm index f23c57aa..4ca9e178 100755 --- a/constants/hide_show_constants.asm +++ b/constants/hide_show_constants.asm @@ -1,8 +1,6 @@ ; this is a list of the sprites that can be enabled/disabled during the game -; sprites marked with an X are constants that are never used -; because those sprites are not (de)activated in a map's script -; (they are either items or sprites that deactivate after battle -; and are detected in wMissableObjectList) +; there may be unused sprites, but these will remain unmarked until +; the disassembly is complete const_def @@ -31,20 +29,20 @@ const HS_SAFFRON_CITY_C ; 16 const HS_SAFFRON_CITY_D ; 17 const HS_SAFFRON_CITY_E ; 18 - const HS_SAFFRON_CITY_F ; 19 X - const HS_ROUTE_2_ITEM_1 ; 1A X - const HS_ROUTE_2_ITEM_2 ; 1B X - const HS_ROUTE_4_ITEM ; 1C X + const HS_SAFFRON_CITY_F ; 19 + const HS_ROUTE_2_ITEM_1 ; 1A + const HS_ROUTE_2_ITEM_2 ; 1B + const HS_ROUTE_4_ITEM ; 1C const HS_ROUTE_9_ITEM ; 1D - const HS_ROUTE_12_SNORLAX ; 1E X - const HS_ROUTE_12_ITEM_1 ; 1F X - const HS_ROUTE_12_ITEM_2 ; 20 X + const HS_ROUTE_12_SNORLAX ; 1E + const HS_ROUTE_12_ITEM_1 ; 1F + const HS_ROUTE_12_ITEM_2 ; 20 const HS_ROUTE_15_ITEM ; 21 const HS_ROUTE_16_SNORLAX ; 22 const HS_ROUTE_22_RIVAL_1 ; 23 const HS_ROUTE_22_RIVAL_2 ; 24 - const HS_NUGGET_BRIDGE_GUY ; 25 X - const HS_ROUTE_24_ITEM ; 26 X + const HS_NUGGET_BRIDGE_GUY ; 25 + const HS_ROUTE_24_ITEM ; 26 const HS_ROUTE_25_ITEM ; 27 const HS_DAISY_SITTING ; 28 const HS_DAISY_WALKING ; 29 @@ -57,126 +55,126 @@ const HS_OAKS_LAB_OAK_2 ; 30 const HS_VIRIDIAN_GYM_GIOVANNI ; 31 const HS_VIRIDIAN_GYM_ITEM ; 32 - const HS_OLD_AMBER ; 33 X + const HS_OLD_AMBER ; 33 const HS_CERULEAN_BULBASAUR ; 34 - const HS_UNKNOWN_DUNGEON_1_ITEM_1 ; 35 X - const HS_UNKNOWN_DUNGEON_1_ITEM_2 ; 36 X - const HS_UNKNOWN_DUNGEON_1_ITEM_3 ; 37 X - const HS_UNKNOWN_DUNGEON_1_ITEM_4 ; 38 X - const HS_POKEMONTOWER_2_RIVAL ; 39 X - const HS_POKEMONTOWER_3_ITEM ; 3A X - const HS_POKEMONTOWER_4_ITEM_1 ; 3B X - const HS_POKEMONTOWER_4_ITEM_2 ; 3C X - const HS_POKEMONTOWER_4_ITEM_3 ; 3D X - const HS_POKEMONTOWER_5_ITEM ; 3E X - const HS_POKEMONTOWER_6_ITEM_1 ; 3F X - const HS_POKEMONTOWER_6_ITEM_2 ; 40 X - const HS_POKEMONTOWER_7_JESSIE ; 41 X + const HS_UNKNOWN_DUNGEON_1_ITEM_1 ; 35 + const HS_UNKNOWN_DUNGEON_1_ITEM_2 ; 36 + const HS_UNKNOWN_DUNGEON_1_ITEM_3 ; 37 + const HS_UNKNOWN_DUNGEON_1_ITEM_4 ; 38 + const HS_POKEMONTOWER_2_RIVAL ; 39 + const HS_POKEMONTOWER_3_ITEM ; 3A + const HS_POKEMONTOWER_4_ITEM_1 ; 3B + const HS_POKEMONTOWER_4_ITEM_2 ; 3C + const HS_POKEMONTOWER_4_ITEM_3 ; 3D + const HS_POKEMONTOWER_5_ITEM ; 3E + const HS_POKEMONTOWER_6_ITEM_1 ; 3F + const HS_POKEMONTOWER_6_ITEM_2 ; 40 + const HS_POKEMONTOWER_7_JESSIE ; 41 const HS_POKEMONTOWER_7_JAMES ; 42 const HS_POKEMONTOWER_7_MR_FUJI ; 43 const HS_LAVENDER_HOUSE_1_MR_FUJI ; 44 const HS_CELADON_MANSION_5_GIFT ; 45 const HS_GAME_CORNER_ROCKET ; 46 - const HS_FUCHSIA_HOUSE_2_ITEM ; 47 X - const HS_MANSION_1_ITEM_1 ; 48 X - const HS_MANSION_1_ITEM_2 ; 49 X + const HS_FUCHSIA_HOUSE_2_ITEM ; 47 + const HS_MANSION_1_ITEM_1 ; 48 + const HS_MANSION_1_ITEM_2 ; 49 const HS_FIGHTING_DOJO_GIFT_1 ; 4A const HS_FIGHTING_DOJO_GIFT_2 ; 4B const HS_SILPH_CO_1F_RECEPTIONIST ; 4C - const HS_VOLTORB_1 ; 4D X - const HS_VOLTORB_2 ; 4E X - const HS_VOLTORB_3 ; 4F X - const HS_ELECTRODE_1 ; 50 X - const HS_VOLTORB_4 ; 51 X - const HS_VOLTORB_5 ; 52 X - const HS_ELECTRODE_2 ; 53 X - const HS_VOLTORB_6 ; 54 X - const HS_ZAPDOS ; 55 X - const HS_POWER_PLANT_ITEM_1 ; 56 X - const HS_POWER_PLANT_ITEM_2 ; 57 X - const HS_POWER_PLANT_ITEM_3 ; 58 X - const HS_POWER_PLANT_ITEM_4 ; 59 X - const HS_POWER_PLANT_ITEM_5 ; 5A X - const HS_MOLTRES ; 5B X - const HS_VICTORY_ROAD_2_ITEM_1 ; 5C X - const HS_VICTORY_ROAD_2_ITEM_2 ; 5D X - const HS_VICTORY_ROAD_2_ITEM_3 ; 5E X - const HS_VICTORY_ROAD_2_ITEM_4 ; 5F X + const HS_VOLTORB_1 ; 4D + const HS_VOLTORB_2 ; 4E + const HS_VOLTORB_3 ; 4F + const HS_ELECTRODE_1 ; 50 + const HS_VOLTORB_4 ; 51 + const HS_VOLTORB_5 ; 52 + const HS_ELECTRODE_2 ; 53 + const HS_VOLTORB_6 ; 54 + const HS_ZAPDOS ; 55 + const HS_POWER_PLANT_ITEM_1 ; 56 + const HS_POWER_PLANT_ITEM_2 ; 57 + const HS_POWER_PLANT_ITEM_3 ; 58 + const HS_POWER_PLANT_ITEM_4 ; 59 + const HS_POWER_PLANT_ITEM_5 ; 5A + const HS_MOLTRES ; 5B + const HS_VICTORY_ROAD_2_ITEM_1 ; 5C + const HS_VICTORY_ROAD_2_ITEM_2 ; 5D + const HS_VICTORY_ROAD_2_ITEM_3 ; 5E + const HS_VICTORY_ROAD_2_ITEM_4 ; 5F const HS_VICTORY_ROAD_2_BOULDER ; 60 const HS_BILL_POKEMON ; 61 const HS_BILL_1 ; 62 const HS_BILL_2 ; 63 - const HS_VIRIDIAN_FOREST_ITEM_1 ; 64 X - const HS_VIRIDIAN_FOREST_ITEM_2 ; 65 X - const HS_VIRIDIAN_FOREST_ITEM_3 ; 66 X + const HS_VIRIDIAN_FOREST_ITEM_1 ; 64 + const HS_VIRIDIAN_FOREST_ITEM_2 ; 65 + const HS_VIRIDIAN_FOREST_ITEM_3 ; 66 const HS_MT_MOON_1_ITEM_1 ; 67 const HS_MT_MOON_1_ITEM_2 ; 68 - const HS_MT_MOON_1_ITEM_3 ; 69 X - const HS_MT_MOON_1_ITEM_4 ; 6A X - const HS_MT_MOON_1_ITEM_5 ; 6B X - const HS_MT_MOON_1_ITEM_6 ; 6C X + const HS_MT_MOON_1_ITEM_3 ; 69 + const HS_MT_MOON_1_ITEM_4 ; 6A + const HS_MT_MOON_1_ITEM_5 ; 6B + const HS_MT_MOON_1_ITEM_6 ; 6C const HS_MT_MOON_JESSIE ; 6D const HS_MT_MOON_JAMES ; 6E - const HS_MT_MOON_3_FOSSIL_1 ; 6F X - const HS_MT_MOON_3_FOSSIL_2 ; 70 X + const HS_MT_MOON_3_FOSSIL_1 ; 6F + const HS_MT_MOON_3_FOSSIL_2 ; 70 const HS_MT_MOON_3_ITEM_1 ; 71 - const HS_MT_MOON_3_ITEM_2 ; 72 X - const HS_SS_ANNE_2_RIVAL ; 73 X - const HS_SS_ANNE_8_ITEM ; 74 X - const HS_SS_ANNE_9_ITEM_1 ; 75 X - const HS_SS_ANNE_9_ITEM_2 ; 76 X - const HS_SS_ANNE_10_ITEM_1 ; 77 X - const HS_SS_ANNE_10_ITEM_2 ; 78 X - const HS_SS_ANNE_10_ITEM_3 ; 79 X + const HS_MT_MOON_3_ITEM_2 ; 72 + const HS_SS_ANNE_2_RIVAL ; 73 + const HS_SS_ANNE_8_ITEM ; 74 + const HS_SS_ANNE_9_ITEM_1 ; 75 + const HS_SS_ANNE_9_ITEM_2 ; 76 + const HS_SS_ANNE_10_ITEM_1 ; 77 + const HS_SS_ANNE_10_ITEM_2 ; 78 + const HS_SS_ANNE_10_ITEM_3 ; 79 const HS_VICTORY_ROAD_3_ITEM_1 ; 7A const HS_VICTORY_ROAD_3_ITEM_2 ; 7B - const HS_VICTORY_ROAD_3_BOULDER ; 7C X - const HS_ROCKET_HIDEOUT_1_ITEM_1 ; 7D X - const HS_ROCKET_HIDEOUT_1_ITEM_2 ; 7E X - const HS_ROCKET_HIDEOUT_2_ITEM_1 ; 7F X - const HS_ROCKET_HIDEOUT_2_ITEM_2 ; 80 X - const HS_ROCKET_HIDEOUT_2_ITEM_3 ; 81 X - const HS_ROCKET_HIDEOUT_2_ITEM_4 ; 82 X + const HS_VICTORY_ROAD_3_BOULDER ; 7C + const HS_ROCKET_HIDEOUT_1_ITEM_1 ; 7D + const HS_ROCKET_HIDEOUT_1_ITEM_2 ; 7E + const HS_ROCKET_HIDEOUT_2_ITEM_1 ; 7F + const HS_ROCKET_HIDEOUT_2_ITEM_2 ; 80 + const HS_ROCKET_HIDEOUT_2_ITEM_3 ; 81 + const HS_ROCKET_HIDEOUT_2_ITEM_4 ; 82 const HS_ROCKET_HIDEOUT_3_ITEM_1 ; 83 - const HS_ROCKET_HIDEOUT_3_ITEM_2 ; 84 X - const HS_ROCKET_HIDEOUT_4_GIOVANNI ; 85 X - const HS_ROCKET_HIDEOUT_4_ITEM_1 ; 86 X - const HS_ROCKET_HIDEOUT_4_ITEM_2 ; 87 - const HS_ROCKET_HIDEOUT_4_ITEM_3 ; 88 - const HS_ROCKET_HIDEOUT_4_ITEM_4 ; 89 XXX never (de)activated? - const HS_ROCKET_HIDEOUT_4_ITEM_5 ; 8A - const HS_ROCKET_HIDEOUT_4_ITEM_6 ; 8B - const HS_ROCKET_HIDEOUT_4_ITEM_7 ; 8C + const HS_ROCKET_HIDEOUT_3_ITEM_2 ; 84 + const HS_ROCKET_HIDEOUT_4_GIOVANNI ; 85 + const HS_ROCKET_HIDEOUT_4_JAMES ; 86 + const HS_ROCKET_HIDEOUT_4_JESSIE ; 87 + const HS_ROCKET_HIDEOUT_4_ITEM_1 ; 88 + const HS_ROCKET_HIDEOUT_4_ITEM_2 ; 89 + const HS_ROCKET_HIDEOUT_4_ITEM_3 ; 8A + const HS_ROCKET_HIDEOUT_4_ITEM_4 ; 8B + const HS_ROCKET_HIDEOUT_4_ITEM_5 ; 8C const HS_SILPH_CO_2F_1 ; 8D const HS_SILPH_CO_2F_2 ; 8E const HS_SILPH_CO_2F_3 ; 8F - const HS_SILPH_CO_2F_4 ; 90 X + const HS_SILPH_CO_2F_4 ; 90 const HS_SILPH_CO_2F_5 ; 91 const HS_SILPH_CO_3F_1 ; 92 const HS_SILPH_CO_3F_2 ; 93 - const HS_SILPH_CO_3F_ITEM ; 94 X - const HS_SILPH_CO_4F_1 ; 95 X - const HS_SILPH_CO_4F_2 ; 96 X + const HS_SILPH_CO_3F_ITEM ; 94 + const HS_SILPH_CO_4F_1 ; 95 + const HS_SILPH_CO_4F_2 ; 96 const HS_SILPH_CO_4F_3 ; 97 const HS_SILPH_CO_4F_ITEM_1 ; 98 const HS_SILPH_CO_4F_ITEM_2 ; 99 const HS_SILPH_CO_4F_ITEM_3 ; 9A - const HS_SILPH_CO_5F_1 ; 9B X - const HS_SILPH_CO_5F_2 ; 9C X - const HS_SILPH_CO_5F_3 ; 9D X + const HS_SILPH_CO_5F_1 ; 9B + const HS_SILPH_CO_5F_2 ; 9C + const HS_SILPH_CO_5F_3 ; 9D const HS_SILPH_CO_5F_4 ; 9E const HS_SILPH_CO_5F_ITEM_1 ; 9F const HS_SILPH_CO_5F_ITEM_2 ; A0 - const HS_SILPH_CO_5F_ITEM_3 ; A1 X - const HS_SILPH_CO_6F_1 ; A2 X + const HS_SILPH_CO_5F_ITEM_3 ; A1 + const HS_SILPH_CO_6F_1 ; A2 const HS_SILPH_CO_6F_2 ; A3 const HS_SILPH_CO_6F_3 ; A4 const HS_SILPH_CO_6F_ITEM_1 ; A5 const HS_SILPH_CO_6F_ITEM_2 ; A6 const HS_SILPH_CO_7F_1 ; A7 - const HS_SILPH_CO_7F_2 ; A8 X - const HS_SILPH_CO_7F_3 ; A9 X - const HS_SILPH_CO_7F_4 ; AA XXX sprite doesn't exist + const HS_SILPH_CO_7F_2 ; A8 + const HS_SILPH_CO_7F_3 ; A9 + const HS_SILPH_CO_7F_4 ; AA const HS_SILPH_CO_7F_RIVAL ; AB const HS_SILPH_CO_7F_ITEM_1 ; AC const HS_SILPH_CO_7F_ITEM_2 ; AD @@ -185,41 +183,41 @@ const HS_SILPH_CO_8F_2 ; B0 const HS_SILPH_CO_8F_3 ; B1 const HS_SILPH_CO_9F_1 ; B2 - const HS_SILPH_CO_9F_2 ; B3 XXX never (de)activated? - const HS_SILPH_CO_9F_3 ; B4 X - const HS_SILPH_CO_10F_1 ; B5 X - const HS_SILPH_CO_10F_2 ; B6 X + const HS_SILPH_CO_9F_2 ; B3 + const HS_SILPH_CO_9F_3 ; B4 + const HS_SILPH_CO_10F_1 ; B5 + const HS_SILPH_CO_10F_2 ; B6 const HS_SILPH_CO_10F_3 ; B7 const HS_SILPH_CO_10F_ITEM_1 ; B8 const HS_SILPH_CO_10F_ITEM_2 ; B9 - const HS_SILPH_CO_10F_ITEM_3 ; BA XXX sprite doesn't exist - const HS_SILPH_CO_11F_1 ; BB X - const HS_SILPH_CO_11F_2 ; BC X - const HS_SILPH_CO_11F_JESSIE ; BD X - const HS_SILPH_CO_11F_JAMES ; BE X - const HS_MAP_F4_1 ; BF X - const HS_MANSION_2_ITEM ; C0 X - const HS_MANSION_3_ITEM_1 ; C1 X - const HS_MANSION_3_ITEM_2 ; C2 X - const HS_MANSION_4_ITEM_1 ; C3 X - const HS_MANSION_4_ITEM_2 ; C4 X - const HS_MANSION_4_ITEM_3 ; C5 X - const HS_MANSION_4_ITEM_4 ; C6 X - const HS_MANSION_4_ITEM_5 ; C7 X - const HS_SAFARI_ZONE_EAST_ITEM_1 ; C8 X - const HS_SAFARI_ZONE_EAST_ITEM_2 ; C9 X - const HS_SAFARI_ZONE_EAST_ITEM_3 ; CA X - const HS_SAFARI_ZONE_EAST_ITEM_4 ; CB X - const HS_SAFARI_ZONE_NORTH_ITEM_1 ; CC X - const HS_SAFARI_ZONE_NORTH_ITEM_2 ; CD X - const HS_SAFARI_ZONE_WEST_ITEM_1 ; CE X - const HS_SAFARI_ZONE_WEST_ITEM_2 ; CF X - const HS_SAFARI_ZONE_WEST_ITEM_3 ; D0 X - const HS_SAFARI_ZONE_WEST_ITEM_4 ; D1 X - const HS_SAFARI_ZONE_CENTER_ITEM ; D2 X - const HS_UNKNOWN_DUNGEON_2_ITEM_1 ; D3 X - const HS_UNKNOWN_DUNGEON_2_ITEM_2 ; D4 X - const HS_UNKNOWN_DUNGEON_2_ITEM_3 ; D5 X + const HS_SILPH_CO_10F_ITEM_3 ; BA + const HS_SILPH_CO_11F_1 ; BB + const HS_SILPH_CO_11F_2 ; BC + const HS_SILPH_CO_11F_JESSIE ; BD + const HS_SILPH_CO_11F_JAMES ; BE + const HS_MAP_F4_1 ; BF + const HS_MANSION_2_ITEM ; C0 + const HS_MANSION_3_ITEM_1 ; C1 + const HS_MANSION_3_ITEM_2 ; C2 + const HS_MANSION_4_ITEM_1 ; C3 + const HS_MANSION_4_ITEM_2 ; C4 + const HS_MANSION_4_ITEM_3 ; C5 + const HS_MANSION_4_ITEM_4 ; C6 + const HS_MANSION_4_ITEM_5 ; C7 + const HS_SAFARI_ZONE_EAST_ITEM_1 ; C8 + const HS_SAFARI_ZONE_EAST_ITEM_2 ; C9 + const HS_SAFARI_ZONE_EAST_ITEM_3 ; CA + const HS_SAFARI_ZONE_EAST_ITEM_4 ; CB + const HS_SAFARI_ZONE_NORTH_ITEM_1 ; CC + const HS_SAFARI_ZONE_NORTH_ITEM_2 ; CD + const HS_SAFARI_ZONE_WEST_ITEM_1 ; CE + const HS_SAFARI_ZONE_WEST_ITEM_2 ; CF + const HS_SAFARI_ZONE_WEST_ITEM_3 ; D0 + const HS_SAFARI_ZONE_WEST_ITEM_4 ; D1 + const HS_SAFARI_ZONE_CENTER_ITEM ; D2 + const HS_UNKNOWN_DUNGEON_2_ITEM_1 ; D3 + const HS_UNKNOWN_DUNGEON_2_ITEM_2 ; D4 + const HS_UNKNOWN_DUNGEON_2_ITEM_3 ; D5 const HS_UNKNOWN_DUNGEON_2_ITEM_4 ; D6 const HS_MEWTWO ; D7 const HS_UNKNOWN_DUNGEON_3_ITEM_1 ; D8 diff --git a/data/mapObjects/rockethideout4.asm b/data/mapObjects/rockethideout4.asm index 5441f9cd..616f5a75 100755 --- a/data/mapObjects/rockethideout4.asm +++ b/data/mapObjects/rockethideout4.asm @@ -10,8 +10,8 @@ RocketHideout4Object: ; 0x455f1 (size=95) db $9 ; objects object SPRITE_GIOVANNI, $19, $3, STAY, DOWN, $1, OPP_GIOVANNI, $1 - object SPRITE_ROCKET, $17, $c, STAY, DOWN, $2, OPP_ROCKET, $10 - object SPRITE_ROCKET, $1a, $c, STAY, DOWN, $3, OPP_ROCKET, $11 + object SPRITE_JAMES, $19, $a, STAY, DOWN, $2 + object SPRITE_JESSIE, $18, $a, STAY, DOWN, $3 object SPRITE_ROCKET, $b, $2, STAY, DOWN, $4, OPP_ROCKET, $12 object SPRITE_BALL, $a, $c, STAY, NONE, $5, HP_UP object SPRITE_BALL, $9, $4, STAY, NONE, $6, TM_02 diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm index 532c9c85..04bee42f 100644 --- a/data/map_header_banks.asm +++ b/data/map_header_banks.asm @@ -199,11 +199,11 @@ MapHeaderBanks:: ; fc3e4 (3f:43e4) db BANK(VermilionHouse3_h) db BANK(DiglettsCave_h) db BANK(VictoryRoad3_h) - db $11 ; db BANK(RocketHideout1_h) - db $11 ; db BANK(RocketHideout2_h) - db $11 ; db BANK(RocketHideout3_h) - db $11 ; db BANK(RocketHideout4_h) - db $11 ; db BANK(RocketHideoutElevator_h) + db BANK(RocketHideout1_h) + db BANK(RocketHideout2_h) + db BANK(RocketHideout3_h) + db BANK(RocketHideout4_h) + db BANK(RocketHideoutElevator_h) db $01 ; unused db $01 ; unused db $01 ; unused diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm index 23b17f2f..501724af 100644 --- a/data/map_header_pointers.asm +++ b/data/map_header_pointers.asm @@ -199,14 +199,14 @@ MapHeaderPointers:: ; fc1f2 (3f:41f2) dw VermilionHouse3_h dw DiglettsCave_h dw VictoryRoad3_h - dw $4c5e ; dw RocketHideout1_h - dw $4ebb ; dw RocketHideout2_h ;200 - dw $52b9 ; dw RocketHideout3_h - dw $54f1 ; dw RocketHideout4_h - dw $5958 ; dw RocketHideoutElevator_h - dw $5958 ; dw RocketHideoutElevator_h ; unused - dw $5958 ; dw RocketHideoutElevator_h ; unused - dw $5958 ; dw RocketHideoutElevator_h ; unused + dw RocketHideout1_h + dw RocketHideout2_h ;200 + dw RocketHideout3_h + dw RocketHideout4_h + dw RocketHideoutElevator_h + dw RocketHideoutElevator_h ; unused + dw RocketHideoutElevator_h ; unused + dw RocketHideoutElevator_h ; unused dw $5c80 ; dw SilphCo2_h dw $5eea ; dw SilphCo3_h dw $5e09 ; dw SilphCo4_h diff --git a/data/tileset_headers.asm b/data/tileset_headers.asm index c21474f8..d6c6a2c9 100755 --- a/data/tileset_headers.asm +++ b/data/tileset_headers.asm @@ -1,28 +1,28 @@ Tilesets: ; c558 (3:4558) - dr $c558,$c684 + ; dr $c558,$c684 - ;tileset Overworld_Block, Overworld_GFX, Overworld_Coll, $FF,$FF,$FF, $52, OUTDOOR - ;tileset RedsHouse1_Block, RedsHouse1_GFX, RedsHouse1_Coll, $FF,$FF,$FF, $FF, INDOOR - ;tileset Mart_Block, Mart_GFX, Mart_Coll, $18,$19,$1E, $FF, INDOOR - ;tileset Forest_Block, Forest_GFX, Forest_Coll, $FF,$FF,$FF, $20, CAVE - ;tileset RedsHouse2_Block, RedsHouse2_GFX, RedsHouse2_Coll, $FF,$FF,$FF, $FF, INDOOR - ;tileset Dojo_Block, Dojo_GFX, Dojo_Coll, $3A,$FF,$FF, $FF, OUTDOOR - ;tileset Pokecenter_Block, Pokecenter_GFX, Pokecenter_Coll, $18,$19,$1E, $FF, INDOOR - ;tileset Gym_Block, Gym_GFX, Gym_Coll, $3A,$FF,$FF, $FF, OUTDOOR - ;tileset House_Block, House_GFX, House_Coll, $FF,$FF,$FF, $FF, INDOOR - ;tileset ForestGate_Block, ForestGate_GFX, ForestGate_Coll, $17,$32,$FF, $FF, INDOOR - ;tileset Museum_Block, Museum_GFX, Museum_Coll, $17,$32,$FF, $FF, INDOOR - ;tileset Underground_Block, Underground_GFX, Underground_Coll, $FF,$FF,$FF, $FF, INDOOR - ;tileset Gate_Block, Gate_GFX, Gate_Coll, $17,$32,$FF, $FF, INDOOR - ;tileset Ship_Block, Ship_GFX, Ship_Coll, $FF,$FF,$FF, $FF, CAVE - ;tileset ShipPort_Block, ShipPort_GFX, ShipPort_Coll, $FF,$FF,$FF, $FF, CAVE - ;tileset Cemetery_Block, Cemetery_GFX, Cemetery_Coll, $12,$FF,$FF, $FF, INDOOR - ;tileset Interior_Block, Interior_GFX, Interior_Coll, $FF,$FF,$FF, $FF, INDOOR - ;tileset Cavern_Block, Cavern_GFX, Cavern_Coll, $FF,$FF,$FF, $FF, CAVE - ;tileset Lobby_Block, Lobby_GFX, Lobby_Coll, $15,$36,$FF, $FF, INDOOR - ;tileset Mansion_Block, Mansion_GFX, Mansion_Coll, $FF,$FF,$FF, $FF, INDOOR - ;tileset Lab_Block, Lab_GFX, Lab_Coll, $FF,$FF,$FF, $FF, INDOOR - ;tileset Club_Block, Club_GFX, Club_Coll, $07,$17,$FF, $FF, INDOOR - ;tileset Facility_Block, Facility_GFX, Facility_Coll, $12,$FF,$FF, $FF, CAVE - ;tileset Plateau_Block, Plateau_GFX, Plateau_Coll, $FF,$FF,$FF, $45, CAVE - ;tileset BeachHouse_Block, BeachHouse_GFX, BeachHouse_Coll, $FF,$FF,$FF, $FF, INDOOR \ No newline at end of file + tileset Overworld_Block, Overworld_GFX, Overworld_Coll, $FF,$FF,$FF, $52, OUTDOOR + tileset RedsHouse1_Block, RedsHouse1_GFX, RedsHouse1_Coll, $FF,$FF,$FF, $FF, INDOOR + tileset Mart_Block, Mart_GFX, Mart_Coll, $18,$19,$1E, $FF, INDOOR + tileset Forest_Block, Forest_GFX, Forest_Coll, $FF,$FF,$FF, $20, CAVE + tileset RedsHouse2_Block, RedsHouse2_GFX, RedsHouse2_Coll, $FF,$FF,$FF, $FF, INDOOR + tileset Dojo_Block, Dojo_GFX, Dojo_Coll, $3A,$FF,$FF, $FF, OUTDOOR + tileset Pokecenter_Block, Pokecenter_GFX, Pokecenter_Coll, $18,$19,$1E, $FF, INDOOR + tileset Gym_Block, Gym_GFX, Gym_Coll, $3A,$FF,$FF, $FF, OUTDOOR + tileset House_Block, House_GFX, House_Coll, $FF,$FF,$FF, $FF, INDOOR + tileset ForestGate_Block, ForestGate_GFX, ForestGate_Coll, $17,$32,$FF, $FF, INDOOR + tileset Museum_Block, Museum_GFX, Museum_Coll, $17,$32,$FF, $FF, INDOOR + tileset Underground_Block, Underground_GFX, Underground_Coll, $FF,$FF,$FF, $FF, INDOOR + tileset Gate_Block, Gate_GFX, Gate_Coll, $17,$32,$FF, $FF, INDOOR + tileset Ship_Block, Ship_GFX, Ship_Coll, $FF,$FF,$FF, $FF, CAVE + tileset ShipPort_Block, ShipPort_GFX, ShipPort_Coll, $FF,$FF,$FF, $FF, CAVE + tileset Cemetery_Block, Cemetery_GFX, Cemetery_Coll, $12,$FF,$FF, $FF, INDOOR + tileset Interior_Block, Interior_GFX, Interior_Coll, $FF,$FF,$FF, $FF, INDOOR + tileset Cavern_Block, Cavern_GFX, Cavern_Coll, $FF,$FF,$FF, $FF, CAVE + tileset Lobby_Block, Lobby_GFX, Lobby_Coll, $15,$36,$FF, $FF, INDOOR + tileset Mansion_Block, Mansion_GFX, Mansion_Coll, $FF,$FF,$FF, $FF, INDOOR + tileset Lab_Block, Lab_GFX, Lab_Coll, $FF,$FF,$FF, $FF, INDOOR + tileset Club_Block, Club_GFX, Club_Coll, $07,$17,$FF, $FF, INDOOR + tileset Facility_Block, Facility_GFX, Facility_Coll, $12,$FF,$FF, $FF, CAVE + tileset Plateau_Block, Plateau_GFX, Plateau_Coll, $FF,$FF,$FF, $45, CAVE + tileset BeachHouse_Block, BeachHouse_GFX, BeachHouse_Coll, $FF,$FF,$FF, $FF, INDOOR diff --git a/main.asm b/main.asm index be127cd0..f66f8123 100755 --- a/main.asm +++ b/main.asm @@ -879,10 +879,32 @@ INCLUDE "data/mapHeaders/victoryroad3.asm" INCLUDE "scripts/victoryroad3.asm" INCLUDE "data/mapObjects/victoryroad3.asm" VictoryRoad3Blocks: INCBIN "maps/victoryroad3.blk" - dr $44c5e,$45077 -LoadSpinnerArrowTiles: ; 45077 (11:5077) - dr $45077,$46578 +INCLUDE "data/mapHeaders/rockethideout1.asm" +INCLUDE "scripts/rockethideout1.asm" +INCLUDE "data/mapObjects/rockethideout1.asm" +RocketHideout1Blocks: INCBIN "maps/rockethideout1.blk" + +INCLUDE "data/mapHeaders/rockethideout2.asm" +INCLUDE "scripts/rockethideout2.asm" +INCLUDE "data/mapObjects/rockethideout2.asm" +RocketHideout2Blocks: INCBIN "maps/rockethideout2.blk" + +INCLUDE "data/mapHeaders/rockethideout3.asm" +INCLUDE "scripts/rockethideout3.asm" +INCLUDE "data/mapObjects/rockethideout3.asm" +RocketHideout3Blocks: INCBIN "maps/rockethideout3.blk" + +INCLUDE "data/mapHeaders/rockethideout4.asm" +INCLUDE "scripts/rockethideout4.asm" +INCLUDE "data/mapObjects/rockethideout4.asm" +RocketHideout4Blocks: INCBIN "maps/rockethideout4.blk" + +INCLUDE "data/mapHeaders/rockethideoutelevator.asm" +INCLUDE "scripts/rockethideoutelevator.asm" +INCLUDE "data/mapObjects/rockethideoutelevator.asm" +RocketHideoutElevatorBlocks: INCBIN "maps/rockethideoutelevator.blk" + dr $45a08,$46578 INCLUDE "data/mapHeaders/seafoamislands2.asm" INCLUDE "scripts/seafoamislands2.asm" @@ -1658,12 +1680,68 @@ INCLUDE "engine/hidden_object_functions18.asm" SECTION "bank19",ROMX,BANK[$19] Overworld_GFX: - dr $64000,$68000 - + dr $64000,$64600 +Overworld_Block: + dr $64600,$64e00 +RedsHouse1_GFX: +RedsHouse2_GFX: + dr $64e00,$65290 +RedsHouse1_Block: +RedsHouse2_Block: + dr $65290,$653c0 +House_GFX: + dr $653c0,$659a0 +House_Block: + dr $659a0,$65bd0 +Mansion_GFX: + dr $65bd0,$661b0 +Mansion_Block: + dr $661b0,$66630 +ShipPort_GFX: + dr $66630,$66c10 +ShipPort_Block: + dr $66c10,$66d80 +Interior_GFX: + dr $66d80,$67370 +Interior_Block: + dr $67370,$67710 +Plateau_GFX: + dr $67710,$67b70 +Plateau_Block: + dr $67b70,$68000 SECTION "bank1A",ROMX,BANK[$1A] - - dr $68000,$6bff1 + dr $68000,$68040 +Dojo_GFX: +Gym_GFX: + dr $68040,$68640 +Dojo_Block: +Gym_Block: + dr $68640,$68d80 +Mart_GFX: +Pokecenter_GFX: + dr $68d80,$69380 +Mart_Block: +Pokecenter_Block: + dr $69380,$69600 +ForestGate_GFX: +Gate_GFX: + dr $69600,$69600 +Museum_GFX: + dr $69600,$69bf0 +ForestGate_Block: +Gate_Block: + dr $69bf0,$69bf0 +Museum_Block: + dr $69bf0,$6a3f0 +Forest_GFX: + dr $6a3f0,$6a9f0 +Forest_Block: + dr $6a9f0,$6b1f0 +Facility_GFX: + dr $6b1f0,$6b7f0 +Facility_Block: + dr $6b7f0,$6bff1 SECTION "bank1B",ROMX,BANK[$1B] diff --git a/scripts/rockethideout4.asm b/scripts/rockethideout4.asm index 815f6090..75cb7912 100755 --- a/scripts/rockethideout4.asm +++ b/scripts/rockethideout4.asm @@ -1,5 +1,4 @@ RocketHideout4Script: ; 4545d (11:545d) - call RocketHideout4Script_45473 call EnableAutoTextBoxDrawing ld hl, RocketHideout4TrainerHeader0 ld de, RocketHideout4ScriptPointers @@ -8,47 +7,44 @@ RocketHideout4Script: ; 4545d (11:545d) ld [W_ROCKETHIDEOUT4CURSCRIPT], a ret -RocketHideout4Script_45473: ; 45473 (11:5473) - ld hl, wd126 - bit 5, [hl] - res 5, [hl] - ret z - CheckEvent EVENT_ROCKET_HIDEOUT_4_DOOR_UNLOCKED - jr nz, .asm_45496 - CheckBothEventsSet EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_0, EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2, 1 - jr z, .asm_4548c - ld a, $2d - jr .asm_45498 -.asm_4548c - ld a, SFX_GO_INSIDE - call PlaySound - SetEvent EVENT_ROCKET_HIDEOUT_4_DOOR_UNLOCKED -.asm_45496 - ld a, $e -.asm_45498 - ld [wNewTileBlockID], a - lb bc, 5, 12 - predef_jump ReplaceTileBlock - -RocketHideout4Script_454a3: ; 454a3 (11:54a3) +RocketHideout4Script_45510: ; 45510 (11:54a3) + CheckAndResetEvent EVENT_6A0 + call nz, RocketHideout4Script_45525 xor a ld [wJoyIgnore], a +RocketHideout4Script_4551e: ld [W_ROCKETHIDEOUT4CURSCRIPT], a ld [W_CURMAPSCRIPT], a ret +RocketHideout4Script_45525: + ld a, HS_ROCKET_HIDEOUT_4_JAMES + call RocketHideout4Script_45756 + ld a, HS_ROCKET_HIDEOUT_4_JESSIE + call RocketHideout4Script_45756 + ret + RocketHideout4ScriptPointers: ; 454ae (11:54ae)c - dw CheckFightingMapTrainers + dw RocketHideout4Script0 dw DisplayEnemyTrainerTextAndStartBattle dw EndTrainerBattle dw RocketHideout4Script3 + dw RocketHideout4Script4 + dw RocketHideout4Script5 + dw RocketHideout4Script6 + dw RocketHideout4Script7 + dw RocketHideout4Script8 + dw RocketHideout4Script9 + dw RocketHideout4Script10 + dw RocketHideout4Script11 + dw RocketHideout4Script12 + dw RocketHideout4Script13 RocketHideout4Script3: ; 454b6 (11:54b6) ld a, [wIsInBattle] cp $ff - jp z, RocketHideout4Script_454a3 - call UpdateSprites - ld a, $f0 + jp z, RocketHideout4Script_45510 + ld a, $fc ld [wJoyIgnore], a SetEvent EVENT_BEAT_ROCKET_HIDEOUT_GIOVANNI ld a, $a @@ -72,61 +68,296 @@ RocketHideout4Script3: ; 454b6 (11:54b6) ld [W_CURMAPSCRIPT], a ret +RocketHideout4Script0: + CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_0 + call z, RocketHideout4Script_455a5 + CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_3 + call z, CheckFightingMapTrainers + ret + +RocketHideout4Script_455a5: + ld a, [wYCoord] + cp $e + ret nz + ResetEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2 + ld a, [wXCoord] + cp $18 + jr z, .asm_455c2 + ld a, [wXCoord] + cp $19 + ret nz + SetEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2 +.asm_455c2 + xor a + ld [hJoyHeld], a + ld a, $fc + ld [wJoyIgnore], a + call StopAllMusic + ld c, BANK(Music_JessieAndJames) + ld a, MUSIC_JESSIE_AND_JAMES + call PlayMusic + call UpdateSprites + call Delay3 + call UpdateSprites + call Delay3 + ld a, $1 + ld [wDoNotWaitForButtonPressAfterDisplayingText], a + ld a, $b + ld [hSpriteIndexOrTextID], a + call DisplayTextID + xor a + ld [wDoNotWaitForButtonPressAfterDisplayingText], a + ld a, $ff + ld [wJoyIgnore], a + ld a, HS_ROCKET_HIDEOUT_4_JAMES + call RocketHideout4Script_45747 + ld a, HS_ROCKET_HIDEOUT_4_JESSIE + call RocketHideout4Script_45747 + ld a, $4 + call RocketHideout4Script_4551e + ret + +RocketHideout4JessieJamesMovementData_45605: + db $4 +RocketHideout4JessieJamesMovementData_45606: + db $4 + db $4 + db $4 + db $ff + +RocketHideout4Script4: + ld de, RocketHideout4JessieJamesMovementData_45605 + CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2 + jr z, .asm_45617 + ld de, RocketHideout4JessieJamesMovementData_45606 +.asm_45617 + ld a, $2 + ld [hSpriteIndexOrTextID], a + call MoveSprite + ld a, $ff + ld [wJoyIgnore], a + ld a, $5 + call RocketHideout4Script_4551e + ret + +RocketHideout4Script5: + ld a, $ff + ld [wJoyIgnore], a + ld a, [wd730] + bit 0, a + ret nz +RocketHideout4Script6: + ld a, $2 + ld [wSpriteStateData1 + 2 * $10 + 1], a + ld a, SPRITE_FACING_LEFT + ld [wSpriteStateData1 + 2 * $10 + 9], a + CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2 + jr z, .asm_4564a + ld a, SPRITE_FACING_DOWN + ld [wSpriteStateData1 + 2 * $10 + 9], a +.asm_4564a + call Delay3 + ld a, $fc + ld [wJoyIgnore], a +RocketHideout4Script7: + ld de, RocketHideout4JessieJamesMovementData_45606 + CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2 + jr z, .asm_4565f + ld de, RocketHideout4JessieJamesMovementData_45605 +.asm_4565f + ld a, $3 + ld [hSpriteIndexOrTextID], a + call MoveSprite + ld a, $ff + ld [wJoyIgnore], a + ld a, $8 + call RocketHideout4Script_4551e + ret + +RocketHideout4Script8: + ld a, $ff + ld [wJoyIgnore], a + ld a, [wd730] + bit 0, a + ret nz + ld a, $fc + ld [wJoyIgnore], a +RocketHideout4Script9: + ld a, $2 + ld [wSpriteStateData1 + 3 * $10 + 1], a + ld a, SPRITE_FACING_DOWN + ld [wSpriteStateData1 + 3 * $10 + 9], a + CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2 + jr z, .asm_45697 + ld a, SPRITE_FACING_RIGHT + ld [wSpriteStateData1 + 3 * $10 + 9], a +.asm_45697 + call Delay3 + ld a, $c + ld [hSpriteIndexOrTextID], a + call DisplayTextID +RocketHideout4Script10: + ld hl, wd72d + set 6, [hl] + set 7, [hl] + ld hl, RocketHideout4JessieJamesEndBattleText ; 457b2 + ld de, RocketHideout4JessieJamesEndBattleText ; 457b2 + call SaveEndBattleTextPointers + ld a, OPP_ROCKET + ld [wCurOpponent], a + ld a, $2b + ld [wTrainerNo], a + xor a + ld [hJoyHeld], a + ld [wJoyIgnore], a + SetEvent EVENT_6A0 + ld a, $b + call RocketHideout4Script_4551e + ret + +RocketHideout4Script11: + ld a, $ff + ld [wJoyIgnore], a + ld a, [wIsInBattle] + cp $ff + jp z, RocketHideout4Script_45510 + ld a, $2 + ld [wSpriteStateData1 + 2 * $10 + 1], a + ld [wSpriteStateData1 + 3 * $10 + 1], a + xor a + ld [wSpriteStateData1 + 2 * $10 + 9], a + ld [wSpriteStateData1 + 3 * $10 + 9], a + ld a, $fc + ld [wJoyIgnore], a + ld a, $1 + ld [wDoNotWaitForButtonPressAfterDisplayingText], a + ld a, $d + ld [hSpriteIndexOrTextID], a + call DisplayTextID + xor a + ld [wDoNotWaitForButtonPressAfterDisplayingText], a + call StopAllMusic + ld c, BANK(Music_JessieAndJames) + ld a, MUSIC_JESSIE_AND_JAMES + call PlayMusic + ld a, $ff + ld [wJoyIgnore], a + ld a, $c + call RocketHideout4Script_4551e + ret + +RocketHideout4Script12: + ld a, $ff + ld [wJoyIgnore], a + call GBFadeOutToBlack + ld a, HS_ROCKET_HIDEOUT_4_JAMES + call RocketHideout4Script_45756 + ld a, HS_ROCKET_HIDEOUT_4_JESSIE + call RocketHideout4Script_45756 + call UpdateSprites + call Delay3 + call GBFadeInFromBlack + ld a, $d + call RocketHideout4Script_4551e + ret + +RocketHideout4Script13: + call PlayDefaultMusic + xor a + ld [hJoyHeld], a + ld [wJoyIgnore], a + ld hl, wd81b + set 2, [hl] + ld a, $0 + call RocketHideout4Script_4551e + ret + +RocketHideout4Script_45747: + ld [wMissableObjectIndex], a + predef ShowObject + call UpdateSprites + call Delay3 + ret + +RocketHideout4Script_45756: + ld [wMissableObjectIndex], a + predef HideObject + ret + RocketHideout4TextPointers: ; 45501 (11:5501) + dw RocketHideout4Text0 dw RocketHideout4Text1 dw RocketHideout4Text2 dw RocketHideout4Text3 - dw RocketHideout4Text4 dw PickUpItemText dw PickUpItemText dw PickUpItemText dw PickUpItemText dw PickUpItemText + dw RocketHideout4Text9 dw RocketHideout4Text10 + dw RocketHideout4Text11 + dw RocketHideout4Text12 -RocketHideout4TrainerHeaders: ; 45515 (11:5515) -RocketHideout4TrainerHeader0: ; 45515 (11:5515) - dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_0 - db ($0 << 4) ; trainer's view range - dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_0 - dw RocketHideout4BattleText2 ; TextBeforeBattle - dw RocketHideout4AfterBattleText2 ; TextAfterBattle - dw RocketHideout4EndBattleText2 ; TextEndBattle - dw RocketHideout4EndBattleText2 ; TextEndBattle - -RocketHideout4TrainerHeader2: ; 45521 (11:5521) - dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2 - db ($0 << 4) ; trainer's view range - dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2 - dw RocketHideout4BattleText3 ; TextBeforeBattle - dw RocketHideout4AfterBattleText3 ; TextAfterBattle - dw RocketHideout4EndBattleText3 ; TextEndBattle - dw RocketHideout4EndBattleText3 ; TextEndBattle - -RocketHideout4TrainerHeader3: ; 4552d (11:552d) +RocketHideout4TrainerHeaders: +RocketHideout4TrainerHeader0: dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_3 - db ($1 << 4) ; trainer's view range + db ($1 << 4) dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_3 - dw RocketHideout4BattleText4 ; TextBeforeBattle - dw RocketHideout4AfterBattleText4 ; TextAfterBattle - dw RocketHideout4EndBattleText4 ; TextEndBattle - dw RocketHideout4EndBattleText4 ; TextEndBattle - + dw RocketHideout4Trainer0BeforeText ; 4581d + dw RocketHideout4Trainer0AfterText ; 4583a + dw RocketHideout4Trainer0EndBattleText ; 45822 + dw RocketHideout4Trainer0EndBattleText ; 45822 db $ff -RocketHideout4Text1: ; 4553a (11:553a) +RocketHideout4Text1: +RocketHideout4Text2: + db "@" + +RocketHideout4Text10: + TX_FAR _RocketHideoutJessieJamesText1 + TX_ASM + ld c, 10 + call DelayFrames + ld a, $8 + ld [wPlayerMovingDirection], a + ld a, $0 + ld [wEmotionBubbleSpriteIndex], a + ld a, $0 + ld [wWhichEmotionBubble], a + predef EmotionBubble + ld c, 20 + call DelayFrames + jp TextScriptEnd + +RocketHideout4Text11: + TX_FAR _RocketHideoutJessieJamesText2 + db "@" + +RocketHideout4JessieJamesEndBattleText: + TX_FAR _RocketHideoutJessieJamesText3 + db "@" + +RocketHideout4Text12: + TX_FAR _RocketHideoutJessieJamesText4 + TX_ASM + ld c, 64 + call DelayFrames + jp TextScriptEnd + +RocketHideout4Text0: TX_ASM CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_GIOVANNI - jp nz, .asm_545571 - ld hl, RocketHideout4Text_4557a + jp nz, .asm_457fb + ld hl, RocketHideout4Text_45804 call PrintText ld hl, wd72d set 6, [hl] set 7, [hl] - ld hl, RocketHideout4Text_4557f - ld de, RocketHideout4Text_4557f + ld hl, RocketHideout4Text_45809 + ld de, RocketHideout4Text_45809 call SaveEndBattleTextPointers - ld a, [H_SPRITEINDEX] + ld a, [hSpriteIndexOrTextID] ld [wSpriteIndex], a call EngageMapTrainer call InitBattleEnemyParameters @@ -135,87 +366,52 @@ RocketHideout4Text1: ; 4553a (11:553a) ld a, $3 ld [W_ROCKETHIDEOUT4CURSCRIPT], a ld [W_CURMAPSCRIPT], a - jr .asm_209f0 -.asm_545571 - ld hl, RocketHideout4Text10 + jr .asm_45801 + +.asm_457fb + ld hl, RocketHideout4Text9 call PrintText -.asm_209f0 +.asm_45801 jp TextScriptEnd -RocketHideout4Text_4557a: ; 4557a (11:557a) +RocketHideout4Text_45804: TX_FAR _RocketHideout4Text_4557a db "@" -RocketHideout4Text_4557f: ; 4557f (11:557f) +RocketHideout4Text_45809: TX_FAR _RocketHideout4Text_4557f db "@" -RocketHideout4Text10: ; 45584 (11:5584) +RocketHideout4Text9: TX_FAR _RocketHideout4Text_45584 db "@" -RocketHideout4Text2: ; 45589 (11:5589) +RocketHideout4Text3: TX_ASM ld hl, RocketHideout4TrainerHeader0 call TalkToTrainer jp TextScriptEnd -RocketHideout4BattleText2: ; 45593 (11:5593) - TX_FAR _RocketHideout4BattleText2 - db "@" - -RocketHideout4EndBattleText2: ; 45598 (11:5598) - TX_FAR _RocketHideout4EndBattleText2 - db "@" - -RocketHideout4AfterBattleText2: ; 4559d (11:559d) - TX_FAR _RocketHide4AfterBattleText2 - db "@" - -RocketHideout4Text3: ; 455a2 (11:55a2) - TX_ASM - ld hl, RocketHideout4TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -RocketHideout4BattleText3: ; 455ac (11:55ac) - TX_FAR _RocketHideout4BattleText3 - db "@" - -RocketHideout4EndBattleText3: ; 455b1 (11:55b1) - TX_FAR _RocketHideout4EndBattleText3 - db "@" - -RocketHideout4AfterBattleText3: ; 455b6 (11:55b6) - TX_FAR _RocketHide4AfterBattleText3 - db "@" - -RocketHideout4Text4: ; 455bb (11:55bb) - TX_ASM - ld hl, RocketHideout4TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -RocketHideout4BattleText4: ; 455c5 (11:55c5) +RocketHideout4Trainer0BeforeText: TX_FAR _RocketHideout4BattleText4 db "@" -RocketHideout4EndBattleText4: ; 455ca (11:55ca) +RocketHideout4Trainer0EndBattleText: TX_FAR _RocketHideout4EndBattleText4 - db "@" - -RocketHideout4AfterBattleText4: ; 455cf (11:55cf) + TX_BUTTON_SOUND TX_ASM - ld hl, RocketHideout4Text_455ec - call PrintText - CheckAndSetEvent EVENT_ROCKET_DROPPED_LIFT_KEY - jr nz, .asm_455e9 + SetEvent EVENT_ROCKET_DROPPED_LIFT_KEY ld a, HS_ROCKET_HIDEOUT_4_ITEM_5 ld [wMissableObjectIndex], a predef ShowObject -.asm_455e9 jp TextScriptEnd -RocketHideout4Text_455ec: ; 455ec (11:55ec) +RocketHideout4Trainer0AfterText: + TX_ASM + ld hl, RocketHideout4Text_45844 + call PrintText + jp TextScriptEnd + +RocketHideout4Text_45844: TX_FAR _RocketHideout4Text_455ec db "@" -- cgit v1.3.1-sl0p