From 2968172921fafcff59cb1b5b9f68ce5e9b9fb083 Mon Sep 17 00:00:00 2001 From: En Yi Date: Sat, 11 Nov 2023 12:06:19 +0800 Subject: [PATCH] Use signed int for water runners --- engine/EC.h | 6 +++--- scenes/water_flow.c | 4 ++-- water_test.c | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/engine/EC.h b/engine/EC.h index c1b228c..b5aa6d5 100644 --- a/engine/EC.h +++ b/engine/EC.h @@ -148,9 +148,9 @@ typedef struct _BFSTile { typedef struct _BFSTileMap { BFSTile_t* tilemap; - uint32_t width; - uint32_t height; - uint32_t len; + int32_t width; + int32_t height; + int32_t len; }BFSTileMap_t; typedef enum _WaterRunnerState diff --git a/scenes/water_flow.c b/scenes/water_flow.c index 4c58ee1..7dc4fa2 100644 --- a/scenes/water_flow.c +++ b/scenes/water_flow.c @@ -180,7 +180,7 @@ void update_water_runner_system(Scene_t* scene) switch (p_crunner->state) { case BFS_RESET: - for (size_t i = 0; i < p_crunner->bfs_tilemap.len; ++i) + for (int32_t i = 0; i < p_crunner->bfs_tilemap.len; ++i) { //p_crunner->bfs_tilemap.tilemap[i].to = -1; p_crunner->bfs_tilemap.tilemap[i].from = -1; @@ -254,7 +254,7 @@ void update_water_runner_system(Scene_t* scene) int start_tile = (p_crunner->current_tile / p_crunner->bfs_tilemap.width) * p_crunner->bfs_tilemap.width; - for (size_t i = 0; i < p_crunner->bfs_tilemap.width; ++i) + for (int32_t i = 0; i < p_crunner->bfs_tilemap.width; ++i) { p_crunner->bfs_tilemap.tilemap[start_tile + i].reachable = false; } diff --git a/water_test.c b/water_test.c index 087b205..fc26de8 100644 --- a/water_test.c +++ b/water_test.c @@ -68,7 +68,7 @@ static void level_scene_render_func(Scene_t* scene) if ( - bot <= tilemap.n_tiles + (unsigned int)bot <= tilemap.n_tiles && tilemap.tiles[bot].water_level < MAX_WATER_LEVEL && tilemap.tiles[i].water_level == 0 )