summaryrefslogtreecommitdiff
path: root/engine
diff options
context:
space:
mode:
Diffstat (limited to 'engine')
-rwxr-xr-xengine/battle/4_2.asm47
-rwxr-xr-xengine/battle/animations.asm4
-rwxr-xr-xengine/battle/core.asm4
-rwxr-xr-xengine/intro.asm4
-rw-r--r--engine/menu/bills_pc.asm3
-rwxr-xr-xengine/menu/pokedex.asm3
-rwxr-xr-xengine/oak_speech2.asm30
-rwxr-xr-xengine/predefs.asm2
-rwxr-xr-xengine/slot_machine.asm4
-rwxr-xr-xengine/titlescreen.asm12
10 files changed, 75 insertions, 38 deletions
diff --git a/engine/battle/4_2.asm b/engine/battle/4_2.asm
index aaada492..ef4798bd 100755
--- a/engine/battle/4_2.asm
+++ b/engine/battle/4_2.asm
@@ -110,31 +110,36 @@ Func_13870: ; 13870 (4:7870)
jr z, .asm_13905
ld [wd0db], a
.asm_1389e
+; determine if wild pokémon can appear where we’re standing.
+; are we standing in grass/water?
hlCoord 9, 9
ld c, [hl]
ld a, [W_GRASSTILE]
cp c
- ld a, [W_GRASSRATE] ; W_GRASSRATE
- jr z, .asm_138c4
- ld a, $14
+ ld a, [W_GRASSRATE]
+ jr z, .CanEncounter
+ ld a, $14 ; in all tilesets with a water tile, this is its id
cp c
- ld a, [W_WATERRATE] ; wEnemyMon1Species
- jr z, .asm_138c4
- ld a, [W_CURMAP] ; W_CURMAP
- cp REDS_HOUSE_1F
- jr c, .asm_13912
- ld a, [W_CURMAPTILESET] ; W_CURMAPTILESET
+ ld a, [W_WATERRATE]
+ jr z, .CanEncounter
+; even if not in grass/water, standing anywhere we can encounter pokémon
+; so long as the map is “indoor” and has wild pokémon defined.
+; …as long as it’s not Viridian Forest or Safari Zone.
+ ld a, [W_CURMAP]
+ cp REDS_HOUSE_1F ; is this an indoor map?
+ jr c, .CantEncounter
+ ld a, [W_CURMAPTILESET]
cp FOREST ; Viridian Forest/Safari Zone
- jr z, .asm_13912
- ld a, [W_GRASSRATE] ; W_GRASSRATE
-.asm_138c4
+ jr z, .CantEncounter
+ ld a, [W_GRASSRATE]
+.CanEncounter
ld b, a
ld a, [hRandomAdd]
cp b
- jr nc, .asm_13912
+ jr nc, .CantEncounter
ld a, [hRandomSub]
ld b, a
- ld hl, WildMonEncounterSlotChances ; $7918
+ ld hl, WildMonEncounterSlotChances
.asm_138d0
ld a, [hli]
cp b
@@ -143,27 +148,27 @@ Func_13870: ; 13870 (4:7870)
jr .asm_138d0
.asm_138d7
ld c, [hl]
- ld hl, W_GRASSMONS ; wd888
+ ld hl, W_GRASSMONS
aCoord 8, 9
cp $14
jr nz, .asm_138e5
- ld hl, W_WATERMONS ; wd8a5 (aliases: wEnemyMon1HP)
+ ld hl, W_WATERMONS
.asm_138e5
ld b, $0
add hl, bc
ld a, [hli]
- ld [W_CURENEMYLVL], a ; W_CURENEMYLVL
+ ld [W_CURENEMYLVL], a
ld a, [hl]
ld [wcf91], a
ld [wEnemyMonSpecies2], a
ld a, [wd0db]
and a
jr z, .asm_13916
- ld a, [wPartyMon1Level] ; wPartyMon1Level
+ ld a, [wPartyMon1Level]
ld b, a
- ld a, [W_CURENEMYLVL] ; W_CURENEMYLVL
+ ld a, [W_CURENEMYLVL]
cp b
- jr c, .asm_13912
+ jr c, .CantEncounter
jr .asm_13916
.asm_13905
ld [wd0db], a
@@ -171,7 +176,7 @@ Func_13870: ; 13870 (4:7870)
ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
call EnableAutoTextBoxDrawing
call DisplayTextID
-.asm_13912
+.CantEncounter
ld a, $1
and a
ret
diff --git a/engine/battle/animations.asm b/engine/battle/animations.asm
index 349d1d5d..0e5c025f 100755
--- a/engine/battle/animations.asm
+++ b/engine/battle/animations.asm
@@ -367,10 +367,10 @@ AnimationTileset2: ; 786ee (1e:46ee)
INCBIN "gfx/attack_anim_2.2bpp"
SlotMachineTiles2: ; 78bde (1e:4bde)
-IF _RED
+IF DEF(_RED)
INCBIN "gfx/red/slotmachine2.2bpp"
ENDC
-IF _BLUE
+IF DEF(_BLUE)
INCBIN "gfx/blue/slotmachine2.2bpp"
ENDC
diff --git a/engine/battle/core.asm b/engine/battle/core.asm
index 263fafa1..43373fdd 100755
--- a/engine/battle/core.asm
+++ b/engine/battle/core.asm
@@ -2954,7 +2954,11 @@ Func_3d4b6: ; 3d4b6 (f:54b6)
jp Delay3
DisabledText: ; 3d555 (f:5555)
+IF DEF(_YELLOW)
+ db "Disabled!@"
+ELSE
db "disabled!@"
+ENDC
TypeText: ; 3d55f (f:555f)
db "TYPE@"
diff --git a/engine/intro.asm b/engine/intro.asm
index 68bf8b50..ace43beb 100755
--- a/engine/intro.asm
+++ b/engine/intro.asm
@@ -429,13 +429,13 @@ FightIntroBackMon: ; 41a99 (10:5a99)
FightIntroFrontMon: ; 42099 (10:6099)
-IF _RED
+IF DEF(_RED)
INCBIN "gfx/red/intro_nido_1.6x6.2bpp"
INCBIN "gfx/red/intro_nido_2.6x6.2bpp"
INCBIN "gfx/red/intro_nido_3.6x6.2bpp"
ds $10 ; blank tile
ENDC
-IF _BLUE
+IF DEF(_BLUE)
INCBIN "gfx/blue/intro_purin_1.6x6.2bpp"
INCBIN "gfx/blue/intro_purin_2.6x6.2bpp"
INCBIN "gfx/blue/intro_purin_3.6x6.2bpp"
diff --git a/engine/menu/bills_pc.asm b/engine/menu/bills_pc.asm
index f1a0e798..891ef6e8 100644
--- a/engine/menu/bills_pc.asm
+++ b/engine/menu/bills_pc.asm
@@ -345,6 +345,9 @@ BillsPCMenuText: ; 216e1 (8:56e1)
next "DEPOSIT ", $4a
next "RELEASE ", $4a
next "CHANGE BOX"
+IF DEF(_YELLOW)
+ next "PRINT BOX"
+ENDC
next "SEE YA!"
db "@"
diff --git a/engine/menu/pokedex.asm b/engine/menu/pokedex.asm
index 227728a0..e636e59d 100755
--- a/engine/menu/pokedex.asm
+++ b/engine/menu/pokedex.asm
@@ -366,6 +366,9 @@ PokedexMenuItemsText: ; 402af (10:42af)
db "DATA"
next "CRY"
next "AREA"
+IF DEF(_YELLOW)
+ next "PRNT"
+ENDC
next "QUIT@"
; tests if a pokemon's bit is set in the seen or owned pokemon bit fields
diff --git a/engine/oak_speech2.asm b/engine/oak_speech2.asm
index 9d994047..34d98fd7 100755
--- a/engine/oak_speech2.asm
+++ b/engine/oak_speech2.asm
@@ -181,7 +181,7 @@ DisplayIntroNameTextBox: ; 6a6c (1:6a6c)
.namestring ; 6aa3 (1:6aa3)
db "NAME@"
-IF _RED
+IF DEF(_RED)
DefaultNamesPlayer: ; 6aa8 (1:6aa8)
db "NEW NAME"
next "RED"
@@ -197,7 +197,7 @@ DefaultNamesRival: ; 6abe (1:6abe)
db "@"
ENDC
-IF _BLUE
+IF DEF(_BLUE)
DefaultNamesPlayer: ; 6aa8 (1:6aa8)
db "NEW NAME"
next "BLUE"
@@ -213,6 +213,22 @@ DefaultNamesRival: ; 6abe (1:6abe)
db "@"
ENDC
+IF DEF(_YELLOW)
+DefaultNamesPlayer:
+ db "NEW NAME"
+ next "YELLOW"
+ next "ASH"
+ next "JACK"
+ db "@"
+
+DefaultNamesRival:
+ db "NEW NAME"
+ next "BLUE"
+ next "GARY"
+ next "JOHN"
+ db "@"
+ENDC
+
Func_6ad6: ; 6ad6 (1:6ad6)
ld b, a
ld c, $0
@@ -234,18 +250,24 @@ Func_6ad6: ; 6ad6 (1:6ad6)
ld de, wcd6d
ld bc, $14
jp CopyData
-IF _RED
+IF DEF(_RED)
DefaultNamesPlayerList: ; 6af2 (1:6af2)
db "NEW NAME@RED@ASH@JACK@"
DefaultNamesRivalList: ; 6b08 (1:6b08)
db "NEW NAME@BLUE@GARY@JOHN@"
ENDC
-IF _BLUE
+IF DEF(_BLUE)
DefaultNamesPlayerList: ; 6af2 (1:6af2)
db "NEW NAME@BLUE@GARY@JOHN@"
DefaultNamesRivalList: ; 6b08 (1:6b08)
db "NEW NAME@RED@ASH@JACK@"
ENDC
+IF DEF(_YELLOW)
+DefaultNamesPlayerList:
+ db "NEW NAME@YELLOW@ASH@JACK@"
+DefaultNamesRivalList:
+ db "NEW NAME@BLUE@GARY@JOHN@"
+ENDC
TextTerminator_6b20: ; 6b20 (1:6b20)
db "@"
diff --git a/engine/predefs.asm b/engine/predefs.asm
index b73c485a..b21ff884 100755
--- a/engine/predefs.asm
+++ b/engine/predefs.asm
@@ -80,7 +80,7 @@ PredefPointers:: ; 4fe79 (13:7e79)
add_predef LoadTilesetHeader
add_predef LearnMoveFromLevelUp
add_predef LearnMove
- add_predef IsItemInBag_ ; 1C, used in Pokémon Tower
+ add_predef IsItemInBag_
dbw $03,CheckForHiddenObjectOrBookshelfOrCardKeyDoor ; for these two, the bank number is actually 0
dbw $03,GiveItem
add_predef ChangeBGPalColor0_4Frames
diff --git a/engine/slot_machine.asm b/engine/slot_machine.asm
index b24b2d25..5b72c8b1 100755
--- a/engine/slot_machine.asm
+++ b/engine/slot_machine.asm
@@ -862,9 +862,9 @@ SLOTSMOUSE EQU $1614
INCLUDE "data/slot_machine_wheels.asm"
SlotMachineTiles1: ; 37a51 (d:7a51)
-IF _RED
+IF DEF(_RED)
INCBIN "gfx/red/slotmachine1.2bpp"
ENDC
-IF _BLUE
+IF DEF(_BLUE)
INCBIN "gfx/blue/slotmachine1.2bpp"
ENDC
diff --git a/engine/titlescreen.asm b/engine/titlescreen.asm
index 0bf4f4a5..e13b7da6 100755
--- a/engine/titlescreen.asm
+++ b/engine/titlescreen.asm
@@ -56,11 +56,11 @@ LoadTitlescreenGraphics: ; 42dd (1:42dd)
ld a, BANK(PokemonLogoGraphics)
call FarCopyData2 ; second chunk
ld hl, Version_GFX ; $402f
-IF _RED
+IF DEF(_RED)
ld de,vChars2 + $600
ld bc,$50
ENDC
-IF _BLUE
+IF DEF(_BLUE)
ld de,vChars2 + $600 + $10
ld bc,$50 - $10
ENDC
@@ -114,10 +114,10 @@ ENDC
call SaveScreenTilesToBuffer2
call LoadScreenTilesFromBuffer2
call EnableLCD
-IF _RED
+IF DEF(_RED)
ld a,CHARMANDER ; which Pokemon to show first on the title screen
ENDC
-IF _BLUE
+IF DEF(_BLUE)
ld a,SQUIRTLE ; which Pokemon to show first on the title screen
ENDC
@@ -382,9 +382,9 @@ PrintGameVersionOnTitleScreen: ; 4598 (1:4598)
; these point to special tiles specifically loaded for that purpose and are not usual text
VersionOnTitleScreenText: ; 45a1 (1:45a1)
-IF _RED
+IF DEF(_RED)
db $60,$61,$7F,$65,$66,$67,$68,$69,"@" ; "Red Version"
ENDC
-IF _BLUE
+IF DEF(_BLUE)
db $61,$62,$63,$64,$65,$66,$67,$68,"@" ; "Blue Version"
ENDC