Skip to content

Commit

Permalink
Identify some time-related data
Browse files Browse the repository at this point in the history
  • Loading branch information
Rangi42 committed Aug 11, 2020
1 parent 64e2cff commit ed3e70b
Show file tree
Hide file tree
Showing 8 changed files with 36 additions and 30 deletions.
1 change: 1 addition & 0 deletions constants/map_data_constants.asm
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ MAP_NONE EQU 0
const PALETTE_NITE
const PALETTE_MORN
const PALETTE_DARK
NUM_MAP_PALETTES EQU const_value

; FishGroups indexes (see data/wild/fish.asm)
const_def
Expand Down
3 changes: 3 additions & 0 deletions constants/wram_constants.asm
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,9 @@ DARKNESS EQU 1 << DARKNESS_F

ANYTIME EQU MORN | DAY | NITE

; wTimeOfDayPalset::
DARKNESS_PALSET EQU (DARKNESS_F << 6) | (DARKNESS_F << 4) | (DARKNESS_F << 2) | DARKNESS_F

; wBattleAnimFlags::
const_def
const BATTLEANIM_STOP_F ; 0
Expand Down
18 changes: 9 additions & 9 deletions engine/battle/battle_transition.asm
Original file line number Diff line number Diff line change
Expand Up @@ -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]
Expand Down Expand Up @@ -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)
Expand Down Expand Up @@ -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]
Expand Down
2 changes: 1 addition & 1 deletion engine/events/overworld.asm
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
2 changes: 1 addition & 1 deletion engine/tilesets/tileset_anims.asm
Original file line number Diff line number Diff line change
Expand Up @@ -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]
Expand Down
40 changes: 21 additions & 19 deletions engine/tilesets/timeofday_pals.asm
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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
Expand Down
File renamed without changes.
File renamed without changes.

0 comments on commit ed3e70b

Please sign in to comment.