summaryrefslogtreecommitdiff
path: root/engine
diff options
context:
space:
mode:
Diffstat (limited to 'engine')
-rw-r--r--engine/battle/battle_transition.asm18
-rw-r--r--engine/events/buena.asm8
-rw-r--r--engine/events/overworld.asm2
-rw-r--r--engine/items/pack.asm20
-rw-r--r--engine/overworld/wildmons.asm13
-rw-r--r--engine/pokegear/radio.asm6
-rw-r--r--engine/tilesets/tileset_anims.asm2
-rw-r--r--engine/tilesets/timeofday_pals.asm40
8 files changed, 49 insertions, 60 deletions
diff --git a/engine/battle/battle_transition.asm b/engine/battle/battle_transition.asm
index 89760611b..8071d475e 100644
--- a/engine/battle/battle_transition.asm
+++ b/engine/battle/battle_transition.asm
@@ -270,7 +270,7 @@ StartTrainerBattle_Flash:
.DoFlashAnimation:
ld a, [wTimeOfDayPalset]
- cp %11111111 ; dark cave
+ cp DARKNESS_PALSET
jr z, .done
ld hl, wcf64
ld a, [hl]
@@ -651,13 +651,13 @@ StartTrainerBattle_LoadPokeBallGraphics:
jr .nextscene
.cgb
- ld hl, .daypals
+ ld hl, .pals
ld a, [wTimeOfDayPal]
maskbits NUM_DAYTIMES
cp DARKNESS_F
- jr nz, .daytime
- ld hl, .nightpals
-.daytime
+ jr nz, .not_dark
+ ld hl, .darkpals
+.not_dark
ldh a, [rSVBK]
push af
ld a, BANK(wBGPals1)
@@ -702,11 +702,11 @@ StartTrainerBattle_LoadPokeBallGraphics:
pop hl
ret
-.daypals
-INCLUDE "gfx/overworld/trainer_battle_day.pal"
+.pals
+INCLUDE "gfx/overworld/trainer_battle.pal"
-.nightpals
-INCLUDE "gfx/overworld/trainer_battle_nite.pal"
+.darkpals
+INCLUDE "gfx/overworld/trainer_battle_dark.pal"
.loadpokeballgfx
ld a, [wOtherTrainerClass]
diff --git a/engine/events/buena.asm b/engine/events/buena.asm
index ef8c70bfc..452f5d62a 100644
--- a/engine/events/buena.asm
+++ b/engine/events/buena.asm
@@ -262,9 +262,7 @@ Buena_PrizeMenu:
dba .prizeitem
dba .prizepoints
-NUM_BUENA_PRIZES EQU 9 ; ((BuenaPrizeItems.End - BuenaPrizeItems) / 2)
-
-.indices
+.indices:
db NUM_BUENA_PRIZES
x = 1
rept NUM_BUENA_PRIZES
@@ -273,7 +271,7 @@ x = x + 1
endr
db -1
-.prizeitem
+.prizeitem:
ld a, [wMenuSelection]
call Buena_getprize
ld a, [hl]
@@ -284,7 +282,7 @@ endr
call PlaceString
ret
-.prizepoints
+.prizepoints:
ld a, [wMenuSelection]
call Buena_getprize
inc hl
diff --git a/engine/events/overworld.asm b/engine/events/overworld.asm
index d0ab25d62..eee3e2df3 100644
--- a/engine/events/overworld.asm
+++ b/engine/events/overworld.asm
@@ -289,7 +289,7 @@ FlashFunction:
pop hl
jr c, .useflash
ld a, [wTimeOfDayPalset]
- cp %11111111 ; 3, 3, 3, 3
+ cp DARKNESS_PALSET
jr nz, .notadarkcave
.useflash
call UseFlash
diff --git a/engine/items/pack.asm b/engine/items/pack.asm
index bde5685cc..0aeb39843 100644
--- a/engine/items/pack.asm
+++ b/engine/items/pack.asm
@@ -1409,23 +1409,9 @@ DrawPocketName:
jr nz, .row
ret
-.tilemap
-; ITEM_POCKET
- db $00, $04, $04, $04, $01 ; top border
- db $06, $07, $08, $09, $0a ; Items
- db $02, $05, $05, $05, $03 ; bottom border
-; BALL_POCKET
- db $00, $04, $04, $04, $01 ; top border
- db $15, $16, $17, $18, $19 ; Balls
- db $02, $05, $05, $05, $03 ; bottom border
-; KEY_ITEM_POCKET
- db $00, $04, $04, $04, $01 ; top border
- db $0b, $0c, $0d, $0e, $0f ; Key Items
- db $02, $05, $05, $05, $03 ; bottom border
-; TM_HM_POCKET
- db $00, $04, $04, $04, $01 ; top border
- db $10, $11, $12, $13, $14 ; TM/HM
- db $02, $05, $05, $05, $03 ; bottom border
+.tilemap: ; 5x12
+; the 5x3 pieces correspond to *_POCKET constants
+INCBIN "gfx/pack/pack_menu.tilemap"
Pack_GetItemName:
ld a, [wCurItem]
diff --git a/engine/overworld/wildmons.asm b/engine/overworld/wildmons.asm
index 61ef89b18..902226041 100644
--- a/engine/overworld/wildmons.asm
+++ b/engine/overworld/wildmons.asm
@@ -705,11 +705,14 @@ JumpRoamMons:
JumpRoamMon:
.loop
ld hl, RoamMaps
-.innerloop1 ; This loop happens to be unnecessary.
- call Random ; Choose a random number.
- maskbits NUM_ROAMMON_MAPS ; Mask the number to limit it between 0 and 15.
- cp NUM_ROAMMON_MAPS ; If the number is not less than 16, try again.
- jr nc, .innerloop1 ; I'm sure you can guess why this check is bogus.
+.innerloop1
+ ; 0-15 are all valid indexes into RoamMaps,
+ ; so this retry loop is unnecessary
+ ; since NUM_ROAMMON_MAPS happens to be 16
+ call Random
+ maskbits NUM_ROAMMON_MAPS
+ cp NUM_ROAMMON_MAPS
+ jr nc, .innerloop1
inc a
ld b, a
.innerloop2 ; Loop to get hl to the address of the chosen roam map.
diff --git a/engine/pokegear/radio.asm b/engine/pokegear/radio.asm
index c4ca19255..803a7b036 100644
--- a/engine/pokegear/radio.asm
+++ b/engine/pokegear/radio.asm
@@ -194,10 +194,10 @@ OaksPKMNTalk4:
; Choose a random route, and a random Pokemon from that route.
.sample
call Random
- and %11111
- cp (OaksPKMNTalkRoutes.End - OaksPKMNTalkRoutes) / 2
+ and %11111 ; maskbits NUM_OAKS_POKEMON_TALK_ROUTES would be more efficient
+ cp NUM_OAKS_POKEMON_TALK_ROUTES
jr nc, .sample
- ; We now have a number between 0 and 14.
+ ; We now have a number between 0 and NUM_OAKS_POKEMON_TALK_ROUTES - 1.
ld hl, OaksPKMNTalkRoutes
ld c, a
ld b, 0
diff --git a/engine/tilesets/tileset_anims.asm b/engine/tilesets/tileset_anims.asm
index 33e956df0..5e673356d 100644
--- a/engine/tilesets/tileset_anims.asm
+++ b/engine/tilesets/tileset_anims.asm
@@ -925,7 +925,7 @@ FlickeringCaveEntrancePalette:
ret nz
; We only want to be here if we're in a dark cave.
ld a, [wTimeOfDayPalset]
- cp %11111111 ; 3,3,3,3
+ cp DARKNESS_PALSET
ret nz
ldh a, [rSVBK]
diff --git a/engine/tilesets/timeofday_pals.asm b/engine/tilesets/timeofday_pals.asm
index e890607d4..2f61f1930 100644
--- a/engine/tilesets/timeofday_pals.asm
+++ b/engine/tilesets/timeofday_pals.asm
@@ -190,7 +190,7 @@ ReplaceTimeOfDayPals:
ld a, [wMapTimeOfDay]
cp PALETTE_DARK
jr z, .NeedsFlash
- and $7
+ maskbits NUM_MAP_PALETTES
add l
ld l, a
ld a, 0
@@ -204,55 +204,57 @@ ReplaceTimeOfDayPals:
ld a, [wStatusFlags]
bit STATUSFLAGS_FLASH_F, a
jr nz, .UsedFlash
- ld a, %11111111 ; 3, 3, 3, 3
+ ld a, DARKNESS_PALSET
ld [wTimeOfDayPalset], a
ret
.UsedFlash:
- ld a, %10101010 ; 2, 2, 2, 2
+ ld a, (NITE_F << 6) | (NITE_F << 4) | (NITE_F << 2) | NITE_F
ld [wTimeOfDayPalset], a
ret
.BrightnessLevels:
- dc 3, 2, 1, 0
- dc 1, 1, 1, 1
- dc 2, 2, 2, 2
- dc 0, 0, 0, 0
- dc 3, 3, 3, 3
- dc 3, 2, 1, 0
- dc 3, 2, 1, 0
- dc 3, 2, 1, 0
+; actual palettes used when time is
+; DARKNESS_F, NITE_F, DAY_F, MORN_F
+ dc DARKNESS_F, NITE_F, DAY_F, MORN_F ; PALETTE_AUTO
+ dc DAY_F, DAY_F, DAY_F, DAY_F ; PALETTE_DAY
+ dc NITE_F, NITE_F, NITE_F, NITE_F ; PALETTE_NITE
+ dc MORN_F, MORN_F, MORN_F, MORN_F ; PALETTE_MORN
+ dc DARKNESS_F, DARKNESS_F, DARKNESS_F, DARKNESS_F ; PALETTE_DARK
+ dc DARKNESS_F, NITE_F, DAY_F, MORN_F
+ dc DARKNESS_F, NITE_F, DAY_F, MORN_F
+ dc DARKNESS_F, NITE_F, DAY_F, MORN_F
GetTimePalette:
jumptable .TimePalettes, wTimeOfDay
.TimePalettes:
- dw .MorningPalette
- dw .DayPalette
- dw .NitePalette
- dw .DarknessPalette
+ dw .MorningPalette ; MORN_F
+ dw .DayPalette ; DAY_F
+ dw .NitePalette ; NITE_F
+ dw .DarknessPalette ; DARKNESS_F
.MorningPalette:
ld a, [wTimeOfDayPalset]
- and %00000011 ; 0
+ and %00000011
ret
.DayPalette:
ld a, [wTimeOfDayPalset]
- and %00001100 ; 1
+ and %00001100
srl a
srl a
ret
.NitePalette:
ld a, [wTimeOfDayPalset]
- and %00110000 ; 2
+ and %00110000
swap a
ret
.DarknessPalette:
ld a, [wTimeOfDayPalset]
- and %11000000 ; 3
+ and %11000000
rlca
rlca
ret