gbrg/.git
5 weeks agoactors are now rendered using a near and far tile system rather than pointers
Lukas Krickl [Thu, 18 Dec 2025 22:03:29 +0000 (23:03 +0100)]
actors are now rendered using a near and far tile system rather than pointers

This will help prevent stale actor data being rendered

5 weeks agoactor: Added simple bat script
Lukas Krickl [Thu, 18 Dec 2025 16:54:21 +0000 (17:54 +0100)]
actor: Added simple bat script

Added actor update call when player moves

5 weeks agoactors: Added basic drawing routine for bats
Lukas Krickl [Thu, 18 Dec 2025 08:54:27 +0000 (09:54 +0100)]
actors: Added basic drawing routine for bats

5 weeks agoactor: added collision checks for tiles that contain an active actor
Lukas Krickl [Thu, 18 Dec 2025 08:41:10 +0000 (09:41 +0100)]
actor: added collision checks for tiles that contain an active actor

5 weeks agoactor: Added actor init code and tables for update and draw calls
Lukas Krickl [Thu, 18 Dec 2025 08:14:24 +0000 (09:14 +0100)]
actor: Added actor init code and tables for update and draw calls

5 weeks agoactor: Added act nearby and prop nearby
Lukas Krickl [Thu, 18 Dec 2025 05:47:52 +0000 (06:47 +0100)]
actor: Added act nearby and prop nearby

Added stubs for updating and drawing actors

5 weeks agoactor: act_move_frward and back now perform collision checks internally
Lukas Krickl [Wed, 17 Dec 2025 13:52:21 +0000 (14:52 +0100)]
actor: act_move_frward and back now perform collision checks internally

5 weeks agoplayer: actors can now write their pointer to the tile they are located at
Lukas Krickl [Wed, 17 Dec 2025 13:44:16 +0000 (14:44 +0100)]
player: actors can now write their pointer to the tile they are located at

5 weeks agotiles: Added prop ptr to tiles
Lukas Krickl [Wed, 17 Dec 2025 10:09:14 +0000 (11:09 +0100)]
tiles: Added prop ptr to tiles

5 weeks agoplayer: fixed turn direction
Lukas Krickl [Wed, 17 Dec 2025 07:15:32 +0000 (08:15 +0100)]
player: fixed turn direction

5 weeks agoui: minimap is now a regular UI element rendered with tiles
Lukas Krickl [Wed, 17 Dec 2025 05:05:54 +0000 (06:05 +0100)]
ui: minimap is now a regular UI element rendered with tiles

5 weeks agomap: doors are now rendered using templates
Lukas Krickl [Tue, 16 Dec 2025 21:46:22 +0000 (22:46 +0100)]
map: doors are now rendered using templates

This makes it easier to change the door style later on.

5 weeks agomaps: wip map rendering with doors
Lukas Krickl [Tue, 16 Dec 2025 17:33:14 +0000 (18:33 +0100)]
maps: wip map rendering with doors

5 weeks agomap: wip rendering ahead and doors
Lukas Krickl [Tue, 16 Dec 2025 16:08:49 +0000 (17:08 +0100)]
map: wip rendering ahead and doors

5 weeks agomap: Added template maps for dungeon drawing
Lukas Krickl [Tue, 16 Dec 2025 13:28:26 +0000 (14:28 +0100)]
map: Added template maps for dungeon drawing

Added example of map draw loader

5 weeks agodebug: Added debug minimap
Lukas Krickl [Tue, 16 Dec 2025 06:38:44 +0000 (07:38 +0100)]
debug: Added debug minimap

5 weeks agomaps: Changed map layout loader
Lukas Krickl [Tue, 16 Dec 2025 05:46:55 +0000 (06:46 +0100)]
maps: Changed map layout loader

The map data now contains only flags.
The loader only loads flags into memory. All other tile data is cleared on load.

5 weeks agoactor: fixed west and east direction mixup
Lukas Krickl [Mon, 15 Dec 2025 22:04:42 +0000 (23:04 +0100)]
actor: fixed west and east direction mixup

5 weeks agomap: wip mapeditor tile loader and directional movement
Lukas Krickl [Mon, 15 Dec 2025 21:15:20 +0000 (22:15 +0100)]
map: wip mapeditor tile loader and directional movement

5 weeks agomap: Added test map
Lukas Krickl [Mon, 15 Dec 2025 15:22:25 +0000 (16:22 +0100)]
map: Added test map

5 weeks agoplayer: Added basic movement
Lukas Krickl [Mon, 15 Dec 2025 14:58:22 +0000 (15:58 +0100)]
player: Added basic movement

5 weeks agoplayer: wip movement on grid
Lukas Krickl [Mon, 15 Dec 2025 12:48:29 +0000 (13:48 +0100)]
player: wip movement on grid

5 weeks agotiles: Added tiles for drawing the map
Lukas Krickl [Mon, 15 Dec 2025 09:49:20 +0000 (10:49 +0100)]
tiles: Added tiles for drawing the map

5 weeks agoplayer: Added turning mechanics
Lukas Krickl [Mon, 15 Dec 2025 07:31:08 +0000 (08:31 +0100)]
player: Added turning mechanics

5 weeks agomap: refactoring added direction vecotrs and directions to actor
Lukas Krickl [Mon, 15 Dec 2025 05:34:53 +0000 (06:34 +0100)]
map: refactoring added direction vecotrs and directions to actor

Reworking tile defs

5 weeks agoAdded TODO
Lukas Krickl [Mon, 15 Dec 2025 04:20:10 +0000 (05:20 +0100)]
Added TODO

5 weeks agochore: removed player collision and gravity routines
Lukas Krickl [Sun, 14 Dec 2025 21:46:52 +0000 (22:46 +0100)]
chore: removed player collision and gravity routines

5 weeks agomap: reworked tile bank in map header to use a bank table instead
Lukas Krickl [Sun, 14 Dec 2025 15:47:46 +0000 (16:47 +0100)]
map: reworked tile bank in map header to use a bank table instead

6 weeks agomap: map transitioon loads now fixes player position
Lukas Krickl [Sun, 14 Dec 2025 07:21:19 +0000 (08:21 +0100)]
map: map transitioon loads now fixes player position

map transitions now use the correct map for flag reads.

6 weeks agomap: Added full reload code
Lukas Krickl [Sat, 13 Dec 2025 06:49:55 +0000 (07:49 +0100)]
map: Added full reload code

6 weeks agomap loader: wip added full redraw flag
Lukas Krickl [Sat, 13 Dec 2025 05:10:10 +0000 (06:10 +0100)]
map loader: wip added full redraw flag

6 weeks agomap: Added map settings load call to allow loading maps for partial redraws
Lukas Krickl [Fri, 12 Dec 2025 08:47:26 +0000 (09:47 +0100)]
map: Added map settings load call to allow loading maps for partial redraws

6 weeks agomap: wip map transitons
Lukas Krickl [Fri, 12 Dec 2025 06:57:43 +0000 (07:57 +0100)]
map: wip map transitons

6 weeks agocollision: moved collision data to hram
Lukas Krickl [Thu, 11 Dec 2025 04:41:15 +0000 (05:41 +0100)]
collision: moved collision data to hram

6 weeks agoactor: Added more collision points
Lukas Krickl [Wed, 10 Dec 2025 04:45:07 +0000 (05:45 +0100)]
actor: Added more collision points

This allows tile collision to sample more points for better collision detection.

6 weeks agoplayer: improved collision box
Lukas Krickl [Tue, 9 Dec 2025 14:32:06 +0000 (15:32 +0100)]
player: improved collision box

gravity: gravity now peaks jump if it is being applied

6 weeks agodebug: Added debug collision display
Lukas Krickl [Tue, 9 Dec 2025 04:24:29 +0000 (05:24 +0100)]
debug: Added debug collision display

6 weeks agoplayer: Added player max jump
Lukas Krickl [Mon, 8 Dec 2025 10:41:57 +0000 (11:41 +0100)]
player: Added player max jump

6 weeks agoplayer: wip jumping
Lukas Krickl [Mon, 8 Dec 2025 08:49:16 +0000 (09:49 +0100)]
player: wip jumping

6 weeks agomap: Added single wall tile
Lukas Krickl [Mon, 8 Dec 2025 05:10:37 +0000 (06:10 +0100)]
map: Added single wall tile

tmx2map now warns if a tile is not mapped.

6 weeks agosys: optimized oamalloc slightly
Lukas Krickl [Mon, 8 Dec 2025 04:50:15 +0000 (05:50 +0100)]
sys: optimized oamalloc slightly

7 weeks agomaps: Added map converter script
Lukas Krickl [Sun, 7 Dec 2025 05:26:19 +0000 (06:26 +0100)]
maps: Added map converter script

7 weeks agomap: maps are now 20x14
Lukas Krickl [Sat, 6 Dec 2025 13:12:07 +0000 (14:12 +0100)]
map: maps are now 20x14

7 weeks agoactor: Added center collision point
Lukas Krickl [Sat, 6 Dec 2025 04:53:06 +0000 (05:53 +0100)]
actor: Added center collision point

7 weeks agoactor: fixed collision getting stuck when bumping into walls
Lukas Krickl [Fri, 5 Dec 2025 04:26:20 +0000 (05:26 +0100)]
actor: fixed collision getting stuck when bumping into walls

7 weeks agoactor: Added optional y and x offset to collision checker
Lukas Krickl [Wed, 3 Dec 2025 12:32:11 +0000 (13:32 +0100)]
actor: Added optional y and x offset to collision checker

7 weeks agoactor: Added collision checks
Lukas Krickl [Wed, 3 Dec 2025 09:48:45 +0000 (10:48 +0100)]
actor: Added collision checks

The current implementation still stops x movement when there is no x collision.

7 weeks agoactor: Added left tile collision code
Lukas Krickl [Wed, 3 Dec 2025 08:27:40 +0000 (09:27 +0100)]
actor: Added left tile collision code

7 weeks agoplayer: wip collision checks
Lukas Krickl [Wed, 3 Dec 2025 07:04:31 +0000 (08:04 +0100)]
player: wip collision checks

7 weeks agoevent: removed event.s
Lukas Krickl [Wed, 3 Dec 2025 05:14:54 +0000 (06:14 +0100)]
event: removed event.s

7 weeks agomap: reworked tiles and exit defs
Lukas Krickl [Wed, 3 Dec 2025 05:09:47 +0000 (06:09 +0100)]
map: reworked tiles and exit defs

7 weeks agoevent: Added stub for event exec
Lukas Krickl [Mon, 1 Dec 2025 15:00:59 +0000 (16:00 +0100)]
event: Added stub for event exec

7 weeks agodefs: Added defs for map events
Lukas Krickl [Mon, 1 Dec 2025 06:31:02 +0000 (07:31 +0100)]
defs: Added defs for map events

8 weeks agomap: Added pointer to tile id table to map header
Lukas Krickl [Sun, 30 Nov 2025 06:20:16 +0000 (07:20 +0100)]
map: Added pointer to tile id table to map header

This means every map can now have a distinct table of tiledefs.

8 weeks agotiles: Added event struct
Lukas Krickl [Fri, 28 Nov 2025 05:25:50 +0000 (06:25 +0100)]
tiles: Added event struct

8 weeks agomap: get_tile now returns a static null tile if oob coordinates are requested
Lukas Krickl [Thu, 27 Nov 2025 12:53:57 +0000 (13:53 +0100)]
map: get_tile now returns a static null tile if oob coordinates are requested

8 weeks agoactor: Added basic collision check when moving
Lukas Krickl [Thu, 27 Nov 2025 11:41:10 +0000 (12:41 +0100)]
actor: Added basic collision check when moving

8 weeks agomap: vram origin is now configurable
Lukas Krickl [Wed, 26 Nov 2025 04:51:59 +0000 (05:51 +0100)]
map: vram origin is now configurable

8 weeks agomap: maps are now 10x8 tiles
Lukas Krickl [Wed, 26 Nov 2025 04:45:29 +0000 (05:45 +0100)]
map: maps are now 10x8 tiles

This will allow enough room for smooth scrolling to take palce
when loading a new map.

2 months agospirtes: reverted some sprites
Lukas Krickl [Tue, 25 Nov 2025 05:04:28 +0000 (06:04 +0100)]
spirtes: reverted some sprites

2 months agoplayer: reworked movement to be grid based
Lukas Krickl [Mon, 24 Nov 2025 04:52:52 +0000 (05:52 +0100)]
player: reworked movement to be grid based

2 months agodefs: Added act cb flags p0 and state
Lukas Krickl [Sun, 23 Nov 2025 16:01:48 +0000 (17:01 +0100)]
defs: Added act cb flags p0 and state

2 months agoactors: Added combat stats ptr
Lukas Krickl [Sat, 22 Nov 2025 16:01:37 +0000 (17:01 +0100)]
actors: Added combat stats ptr

2 months agotiles: Added test wall tile
Lukas Krickl [Fri, 21 Nov 2025 19:15:35 +0000 (20:15 +0100)]
tiles: Added test wall tile

2 months agoactors: refactoring actor system
Lukas Krickl [Fri, 21 Nov 2025 17:08:08 +0000 (18:08 +0100)]
actors: refactoring actor system

2 months agoupdated TODO
Lukas Krickl [Fri, 21 Nov 2025 14:17:53 +0000 (15:17 +0100)]
updated TODO

2 months agodebug: fixed update tile rendereing
Lukas Krickl [Thu, 20 Nov 2025 16:24:16 +0000 (17:24 +0100)]
debug: fixed update tile rendereing

2 months agodebug: wip added renderer for current tile
Lukas Krickl [Wed, 19 Nov 2025 04:14:12 +0000 (05:14 +0100)]
debug: wip added renderer for current tile

2 months agotiles: adjacent clear now uses the struct's size instead of a hard-coded value
Lukas Krickl [Mon, 17 Nov 2025 12:46:20 +0000 (13:46 +0100)]
tiles: adjacent clear now uses the struct's size instead of a hard-coded value

2 months agotiles: added more docs for tile_get_adjacent
Lukas Krickl [Mon, 17 Nov 2025 10:26:29 +0000 (11:26 +0100)]
tiles: added more docs for tile_get_adjacent

2 months agodefs: Added type for tile adjacent struct
Lukas Krickl [Mon, 17 Nov 2025 09:47:58 +0000 (10:47 +0100)]
defs: Added type for tile adjacent struct

2 months agodebug: Added suspend resume code
Lukas Krickl [Sun, 16 Nov 2025 08:20:00 +0000 (09:20 +0100)]
debug: Added suspend resume code

2 months agodebug: added suspend update call
Lukas Krickl [Sun, 16 Nov 2025 07:16:27 +0000 (08:16 +0100)]
debug: added suspend update call

2 months agodebug: Added debug toggle inputs
Lukas Krickl [Sat, 15 Nov 2025 17:09:19 +0000 (18:09 +0100)]
debug: Added debug toggle inputs

2 months agodebug: Added stub for future debug features
Lukas Krickl [Sat, 15 Nov 2025 13:47:36 +0000 (14:47 +0100)]
debug: Added stub for future debug features

2 months agodefs: documented t_resource
Lukas Krickl [Fri, 14 Nov 2025 15:39:36 +0000 (16:39 +0100)]
defs: documented t_resource

only the lower 4 bits are used for resource count now.

2 months agotiles: added test for food spread
Lukas Krickl [Fri, 14 Nov 2025 08:41:56 +0000 (09:41 +0100)]
tiles: added test for food spread

2 months agotiles: reowrked most in-game tiles
Lukas Krickl [Fri, 14 Nov 2025 05:08:17 +0000 (06:08 +0100)]
tiles: reowrked most in-game tiles

Added bg animation

2 months agotiles: modifier tiles can now be drawn
Lukas Krickl [Thu, 13 Nov 2025 13:35:48 +0000 (14:35 +0100)]
tiles: modifier tiles can now be drawn

2 months agotiles: tile updates are now pre-computed
Lukas Krickl [Thu, 13 Nov 2025 04:52:19 +0000 (05:52 +0100)]
tiles: tile updates are now pre-computed

This saves a lot of time during vblank

2 months agotiles: wip refactoring tile drawing
Lukas Krickl [Wed, 12 Nov 2025 04:51:26 +0000 (05:51 +0100)]
tiles: wip refactoring tile drawing

2 months agotiles: added tile flags
Lukas Krickl [Tue, 11 Nov 2025 21:13:49 +0000 (22:13 +0100)]
tiles: added tile flags

2 months agotiles: adjacent tiles are now stored in an array
Lukas Krickl [Tue, 11 Nov 2025 17:19:35 +0000 (18:19 +0100)]
tiles: adjacent tiles are now stored in an array

2 months agotiles: Added adjacnet up getters
Lukas Krickl [Tue, 11 Nov 2025 16:30:07 +0000 (17:30 +0100)]
tiles: Added adjacnet up getters

2 months agotiles: added get adjacent tile clearing
Lukas Krickl [Mon, 10 Nov 2025 12:47:07 +0000 (13:47 +0100)]
tiles: added get adjacent tile clearing

2 months agodefs: Added stub for getting adjacent tiles
Lukas Krickl [Sun, 9 Nov 2025 11:30:43 +0000 (12:30 +0100)]
defs: Added stub for getting adjacent tiles

2 months agotiles: tiles now call the update routine
Lukas Krickl [Sat, 8 Nov 2025 16:32:25 +0000 (17:32 +0100)]
tiles: tiles now call the update routine

2 months agomap: added tile update call test
Lukas Krickl [Sat, 8 Nov 2025 05:30:41 +0000 (06:30 +0100)]
map: added tile update call test

2 months agoplayer: cursor now flickers to make it semi-transparent
Lukas Krickl [Fri, 7 Nov 2025 07:32:38 +0000 (08:32 +0100)]
player: cursor now flickers to make it semi-transparent

2 months agotiles: wip added tile update logic
Lukas Krickl [Wed, 5 Nov 2025 04:34:51 +0000 (05:34 +0100)]
tiles: wip added tile update logic

2 months agotiles: tiles now have an owner id
Lukas Krickl [Tue, 4 Nov 2025 04:39:47 +0000 (05:39 +0100)]
tiles: tiles now have an owner id

Reworked tile types to take tile owner into account
Reworked UI to take tile owner into account

2 months agoui: fixed string drawing routine
Lukas Krickl [Sun, 2 Nov 2025 13:07:59 +0000 (14:07 +0100)]
ui: fixed string drawing routine

2 months agoui: wip tile rendering
Lukas Krickl [Sun, 2 Nov 2025 12:21:23 +0000 (13:21 +0100)]
ui: wip tile rendering

2 months agoTODO: Added note about food
Lukas Krickl [Sun, 2 Nov 2025 05:48:00 +0000 (06:48 +0100)]
TODO: Added note about food

2 months agoui: added stub for UI draw request
Lukas Krickl [Sat, 1 Nov 2025 17:41:10 +0000 (18:41 +0100)]
ui: added stub for UI draw request

2 months agoplayer: cursor is now capped to map bounds
Lukas Krickl [Sat, 1 Nov 2025 15:56:56 +0000 (16:56 +0100)]
player: cursor is now capped to map bounds

2 months agovideo: scrolling does now not wrap around the screen anymore
Lukas Krickl [Sat, 1 Nov 2025 11:20:34 +0000 (12:20 +0100)]
video: scrolling does now not wrap around the screen anymore

2 months agoplayer: Added cursor movement
Lukas Krickl [Sat, 1 Nov 2025 06:49:24 +0000 (07:49 +0100)]
player: Added cursor movement

fixed cursor rendering

2 months agomap: wip player scrolling
Lukas Krickl [Thu, 30 Oct 2025 16:57:20 +0000 (17:57 +0100)]
map: wip player scrolling

2 months agomap: the map loader now draws maps correctly
Lukas Krickl [Thu, 30 Oct 2025 11:43:25 +0000 (12:43 +0100)]
map: the map loader now draws maps correctly