diff options
| author | Xander Swan <[hidden email]> | 2026-01-01 18:32:20 -0500 |
|---|---|---|
| committer | Xander Swan <[hidden email]> | 2026-01-01 18:32:20 -0500 |
| commit | 65a2ceda55198dab3bab75c06c0d50adeb0a1101 (patch) | |
| tree | 2a08400520f60fcd86b381bc840bb5c739ff998a /src/tiled/tiled.odin | |
| parent | dc373b507ca68ada2cbf4c8e0d7949d6bc46ed9b (diff) | |
lots of changes + player dash
Diffstat (limited to 'src/tiled/tiled.odin')
| -rw-r--r-- | src/tiled/tiled.odin | 59 |
1 files changed, 32 insertions, 27 deletions
diff --git a/src/tiled/tiled.odin b/src/tiled/tiled.odin index 373715a..d84c296 100644 --- a/src/tiled/tiled.odin +++ b/src/tiled/tiled.odin @@ -183,7 +183,7 @@ load_map :: proc(path: string) -> (Map, Error) { return {}, .COULD_NOT_LOAD } - log.info(jmap) + // log.debug(jmap) tmap: Map err := convert_json_map(jmap, &tmap, path) @@ -356,8 +356,8 @@ iterate_map_tiles :: proc(tmap: Map, callback: Map_Iterate_Callback) { x: i32 = 0 y: i32 = 0 - for cell in tile_layer.data { - if cell != 0 { + for cell, i in tile_layer.data { + if cell > 0 { tile := tmap.tiles[cell - 1] tile_set := tmap.tile_sets[tile.tile_set] callback(x, y, tile, tile_set) @@ -372,7 +372,7 @@ iterate_map_tiles :: proc(tmap: Map, callback: Map_Iterate_Callback) { } } -draw_map :: proc(tmap: Map) { +test_cells :: proc(tmap: Map) { for layer in tmap.layers { tile_layer, ok := layer.layer.(Tile_Layer) if !ok { @@ -382,29 +382,9 @@ draw_map :: proc(tmap: Map) { x: i32 = 0 y: i32 = 0 - for cell in tile_layer.data { - if cell != 0 { - tile := tmap.tiles[cell - 1] - tile_set := tmap.tile_sets[tile.tile_set] - - rl.DrawTexturePro( - tile_set.texture, - rl.Rectangle{ - x = f32(tile.src_start.x), - y = f32(tile.src_start.y), - width = f32(tile.src_size.x), - height = f32(tile.src_size.y), - }, - rl.Rectangle{ - x = f32(x), - y = f32(y), - width = f32(tile.src_size.x), - height = f32(tile.src_size.y), - }, - {0, 0}, - 0, - rl.WHITE, - ) + for cell, i in tile_layer.data { + if cell > 0 { + log.debug(i, [2]i32{x, y}, cell) } x += tmap.tile_width @@ -416,6 +396,31 @@ draw_map :: proc(tmap: Map) { } } +draw_map :: proc(tmap: Map) { + draw_tile :: proc(x: i32, y: i32, tile: Tile, tile_set: Tile_Set) { + rl.DrawTexturePro( + tile_set.texture, + rl.Rectangle{ + x = f32(tile.src_start.x), + y = f32(tile.src_start.y), + width = f32(tile.src_size.x), + height = f32(tile.src_size.y), + }, + rl.Rectangle{ + x = f32(x), + y = f32(y), + width = f32(tile.src_size.x), + height = f32(tile.src_size.y), + }, + {0, 0}, + 0, + rl.WHITE, + ) + } + + iterate_map_tiles(tmap, draw_tile) +} + @(private) load_image :: proc(filename: string, res_dir: string) -> rl.Texture2D { path := strings.concatenate({res_dir, "/", filename}) |
