25 Commits

Author SHA1 Message Date
60c346406c basic sign rendering
All defined signs are now interactable, but the sign message is not
dismissable yet, and only the first paragraph is displayed in
multi-paragraph signs.
2023-07-31 18:08:59 +00:00
c2ea17d25a map_objects: add sign ids 2023-07-30 08:56:28 +00:00
e4ff1b4c5a generate/text: added
Of the "trivial" texts that the current parser can handle, these are
now being inserted in obj_events.
2023-07-30 08:52:46 +00:00
a56def6074 add font and text data
The original font is a bit of a mess, and includes many duplicate
characters.

I decided to reorganize the characters in a new set of glyphs, in
derivced/font.png.

This also includes very basic parsing for text data.
2023-07-30 03:09:20 +00:00
59bd2d8903 render_map: draw 1 more row/column of world coordinates
...for south/east/west only. This is for jumps, which scroll the
screen 32 pixels instead of 16.

There is no north jump.
2023-07-29 06:40:13 +00:00
0b61a59117 font: initial
the fonts are loaded, but nothing is drawn.
2023-07-29 06:38:45 +00:00
e57d93400e main: start vdp1 drawing immediately after updating the command list
This appears to reduce position artifacts between vdp1/vdp2 drawings.
2023-07-29 04:27:35 +00:00
a443d09b3d png_to_nbpp*: add support for concatenating multiple files 2023-07-29 03:56:44 +00:00
d12e49aa16 tools/png_to_nbpp: add support for 1bpp 2023-07-29 03:56:44 +00:00
fde161dabf main: add ledge jumps 2023-07-29 03:56:40 +00:00
62988e73ac main: add warp events
You can now walk from pallet town to the mount moon exit.
2023-07-29 00:18:01 +00:00
e6cae1c242 coordinates: rework map rendering
This also adds interactive player movement.

I am much more satisfied with the coordinate space math in this
commit compared to the previous commit.
2023-07-28 05:46:36 +00:00
9645b4b414 main: add connection drawing 2023-07-27 05:32:54 +00:00
da49dbeb2b Makefile: improve build rules slightly
I'm still not satisfied with the Makefile, but this at least makes it
converge in a single make invocation again.

This also removes the enum value arrays.
2023-07-26 18:17:45 +00:00
d8fb314a79 main: primitive map scrolling 2023-07-25 22:32:41 -07:00
8682decd56 main: incomplete map scrolling 2023-07-26 03:44:30 +00:00
485b2f8dd5 main: rework sprite and tileset loading
All sprites and tilesets can fit at the same time. Load everything all
at once to avoid flickering during drawing.
2023-07-25 23:46:44 +00:00
1b71c6cfb6 sprites: initial implementation 2023-07-25 20:52:44 +00:00
3b9cbf82aa main: use border_block from map_objects 2023-07-25 08:06:27 +00:00
5c588dbe29 map_objects: initial
The map_objects generator is incomplete as there are no models for,
e.g: sprites yet.
2023-07-25 07:46:57 +00:00
e37d56b729 tools/generate: move maps to a new module 2023-07-25 05:43:09 +00:00
b03055c3a5 move generated source code to gen/ directory 2023-07-25 05:35:35 +00:00
c1a96584e4 input: added 2023-07-25 05:35:33 +00:00
210e1bd22a tools: switch tileset storage format to 2 bits per pixel 2023-07-25 05:35:19 +00:00
c55300ea75 initial 2023-07-25 05:34:48 +00:00