a-game

2D platformer written from scratch.
Log | Files | Refs | README | LICENSE

commit 45cfc3c8c34e3bb33e1f8c3d19a883711a426c1b
parent fd494c04be18034d98aded0809ba4812018b4d3e
Author: Amin Mesbah <dev@aminmesbah.com>
Date:   Mon, 15 Jul 2019 19:43:03 -0700

Render different rooms at different color offsets

Diffstat:
Msrc/game.c | 4++++
Msrc/world.h | 1+
2 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/src/game.c b/src/game.c @@ -119,6 +119,7 @@ internal void game_init(struct GameMemory *game_memory, v2u framebuffer) 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, }, + .tileset_offset = 0, }; struct Room collision_test_zone = { @@ -135,6 +136,7 @@ internal void game_init(struct GameMemory *game_memory, v2u framebuffer) 0, 37, 0, 38, 39, 3, 3, 3, 3, 3, 3, 4, 0, 2, 3, 3, 3, 3, 3, 3, 39, 40, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, + .tileset_offset = 8, }; i32 s = -3; @@ -168,6 +170,7 @@ internal void game_init(struct GameMemory *game_memory, v2u framebuffer) 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, + .tileset_offset = 4, }; world_room_set(game_state->world, r, &game_state->world_allocator); } @@ -605,6 +608,7 @@ void game_update_and_render(struct GameMemory *game_memory, struct GameInput *ga tile_id = get_tile_value(current_room->tiles, tile_pos); assert(tile_id > 0); tile_id -= 1; + tile_id += current_room->tileset_offset; } else { diff --git a/src/world.h b/src/world.h @@ -26,6 +26,7 @@ static_assert( struct Room { v2i index; + u8 tileset_offset; u8 tiles[ROOM_TILE_COUNT]; };