Commit graph

642 commits

Author SHA1 Message Date
Corwin
ae681019bb set palette location on sprite change 2022-03-06 13:31:36 +00:00
Corwin
2a7b350f57 objects now exist and work 2022-03-06 13:31:36 +00:00
Corwin
a1b67e107f object controller implementations 2022-03-06 13:31:36 +00:00
Corwin
836143e1f4 copy the sprite and palette data 2022-03-06 13:31:36 +00:00
Corwin
d764ff9900 allocate palettes too 2022-03-06 13:31:36 +00:00
Corwin
6a2c9d8826 add some sprite allocation 2022-03-06 13:31:36 +00:00
Corwin
93d994360e make alloc and dealloc public 2022-03-06 13:31:36 +00:00
Corwin
1849571344 sprite allocator 2022-03-06 13:31:34 +00:00
Corwin
beb9abbb7e allocator methods pulled out of global alloc trait 2022-03-06 13:30:47 +00:00
Corwin
475edadcb9 extend to also supporting the end 2022-03-06 13:30:47 +00:00
Corwin
3c6c7efc79 allocator that can have a custom start point 2022-03-06 13:30:47 +00:00
Gwilym Kuiper
39a8b5a64f Update lockfiles 2022-03-05 20:52:26 +00:00
Gwilym Kuiper
803527be23 Fix warning in release mode 2022-03-05 19:52:57 +00:00
Gwilym Kuiper
ba1c2e3eaf Remove unused import 2022-03-05 19:45:01 +00:00
Gwilym Kuiper
d97ceca647 Remove unused function 2022-03-05 19:44:21 +00:00
Gwilym Kuiper
09f6736497 Extract dma_copy to its own module 2022-03-05 19:43:48 +00:00
Gwilym Kuiper
068bc95fe7 Fix warning with non-constant string 2022-03-05 19:35:19 +00:00
Gwilym Kuiper
a3e5187457 Use DMA to copy the entire internal map in one go 2022-03-05 19:35:07 +00:00
Gwilym Kuiper
7b43debd3e WIP: Try removing the hashmap 2022-03-05 19:25:55 +00:00
Gwilym Kuiper
aa7823232b Try using a vec of vecs rather than a hashmap 2022-03-05 19:25:09 +00:00
Gwilym Kuiper
ceb17a0186 Update hat chooses wizard and purple night 2022-03-05 19:25:09 +00:00
Gwilym Kuiper
22c6e37c88 Finally extract InfiniteScrolledMap 2022-03-05 19:25:09 +00:00
Gwilym Kuiper
6b492c5956 Extract more to new files 2022-03-05 19:25:09 +00:00
Gwilym Kuiper
78fb706c9a Extract map to its own file 2022-03-05 19:25:09 +00:00
Gwilym Kuiper
e88602b570 Get my brackets correct 2022-03-05 19:25:09 +00:00
Gwilym Kuiper
a35119fdbd Fix hat chooses the wizard 2022-03-05 19:25:09 +00:00
Gwilym Kuiper
742231fbc5 Try a different transparent tile then 0 2022-03-05 19:25:09 +00:00
Gwilym Kuiper
ed2af0d57e Extract VRamManager to the tiled module 2022-03-05 19:25:09 +00:00
Gwilym Kuiper
f1bc09d6cd Avoid crackle on load 2022-03-05 19:25:09 +00:00
Gwilym Kuiper
d896adfad5 Clear the backgrounds once they aren't used any more 2022-03-05 19:25:09 +00:00
Gwilym Kuiper
de594ad362 Make init take an impl Fn rather than a Box<dyn Fn()> 2022-03-05 19:25:09 +00:00
Gwilym Kuiper
3a913f142a Remove pop while loading a level 2022-03-05 19:25:09 +00:00
Gwilym Kuiper
b0b8ec55c4 Remove unused TILE_BACKGROUND 2022-03-05 19:25:09 +00:00
Gwilym Kuiper
63dd837518 Tiny performance improvement with dma to copy the tile data 2022-03-05 19:25:09 +00:00
Gwilym Kuiper
08aeb56f1e Update background and foreground independentently 2022-03-05 19:25:06 +00:00
Gwilym Kuiper
3941117aa7 Switch to rustc-hash 2022-03-05 19:24:28 +00:00
Gwilym Kuiper
06901b3543 Move post-work to pre-work 2022-03-05 19:23:53 +00:00
Gwilym Kuiper
530b71e0df Copy slightly too much 2022-03-05 19:23:53 +00:00
Gwilym Kuiper
a365c14917 Small fixes 2022-03-05 19:23:53 +00:00
Gwilym Kuiper
3a795fea8f Handle moving up to 10 tiles at once 2022-03-05 19:23:53 +00:00
Gwilym Kuiper
610be70b92 Correctly set the initial offset value in init() 2022-03-05 19:23:53 +00:00
Gwilym Kuiper
a998ae31a4 Correctly use the map width and not the display width 2022-03-05 19:23:53 +00:00
Gwilym Kuiper
ebf21f4add Avoid pointless copies 2022-03-05 19:23:53 +00:00
Gwilym Kuiper
66a61e33e6 More correctly special case tile 0 2022-03-05 19:23:53 +00:00
Gwilym Kuiper
666867e933 Track the generation along with the tile data 2022-03-05 19:23:53 +00:00
Gwilym Kuiper
10c97f48d8 Introduce the MapLoan to infinite scrolled map 2022-03-05 19:23:53 +00:00
Gwilym Kuiper
2c8fce40d3 Store the used backgrounds in a bit array 2022-03-05 19:23:53 +00:00
Gwilym Kuiper
cd05fee360 Use a concrete type for the TileReference 2022-03-05 19:23:53 +00:00
Gwilym Kuiper
5793d6b6ab Introduce methods for increasing and decreasing the reference 2022-03-05 19:23:53 +00:00
Gwilym Kuiper
2a04ebd884 Rename TileReference to VRamState 2022-03-05 19:23:53 +00:00