diff options
author | metamuffin <yvchraiqi@protonmail.com> | 2022-06-09 10:15:54 +0200 |
---|---|---|
committer | metamuffin <yvchraiqi@protonmail.com> | 2022-06-09 10:15:54 +0200 |
commit | c5799343499ef6ca63490c83f39d9fda2da19a00 (patch) | |
tree | 76870830ef9d7a02d58530773d584fee870a1986 /renderer/src/map.rs | |
parent | 7a0d09e5cd0075e2a0d3db4505d7ec77dff35ae0 (diff) | |
download | twclient-c5799343499ef6ca63490c83f39d9fda2da19a00.tar twclient-c5799343499ef6ca63490c83f39d9fda2da19a00.tar.bz2 twclient-c5799343499ef6ca63490c83f39d9fda2da19a00.tar.zst |
asd
Diffstat (limited to 'renderer/src/map.rs')
-rw-r--r-- | renderer/src/map.rs | 31 |
1 files changed, 16 insertions, 15 deletions
diff --git a/renderer/src/map.rs b/renderer/src/map.rs index 0ea3a6b..8517ee0 100644 --- a/renderer/src/map.rs +++ b/renderer/src/map.rs @@ -85,16 +85,25 @@ impl MapRenderer { if tileset.dim() == (1, 1) { continue; } - - for layer_y in (center.1 - 30)..(center.1 + 30) { - for layer_x in (center.0 - 30)..(center.0 + 30) { + // println!("{:?} {:?}", center, l.tiles.dim()); + for layer_y in (center.1 - 15)..(center.1 + 15) { + for layer_x in (center.0 - 15)..(center.0 + 15) { let layer_x = layer_x.try_into().unwrap_or(0); let layer_y = layer_y.try_into().unwrap_or(0); - if layer_x >= l.tiles.dim().1 || layer_y >= l.tiles.dim().0 { - continue; - } - let tile = l.tiles[(layer_y, layer_x)]; + let tile_rect = Rect { + top: layer_y as f32 * 16.0, + left: layer_x as f32 * 16.0, + bottom: layer_y as f32 * 16.0 + 16.0, + right: layer_x as f32 * 16.0 + 16.0, + }; + canvas.draw_rect(tile_rect, &grid_paint); + + let tile = match l.tiles.get((layer_y, layer_x)) { + Some(t) => t, + None => continue, + }; + println!("{:?}", tile); let _rotate = tile.flags & format::TILEFLAG_ROTATE != 0; let _vflip = tile.flags & format::TILEFLAG_VFLIP != 0; @@ -106,14 +115,6 @@ impl MapRenderer { continue; } - let tile_rect = Rect { - top: layer_y as f32 * 16.0, - left: layer_x as f32 * 16.0, - bottom: layer_y as f32 * 16.0 + 16.0, - right: layer_x as f32 * 16.0 + 16.0, - }; - canvas.draw_rect(tile_rect, &grid_paint); - const TL: u32 = 16; canvas.draw_image_rect( self.tileset.get(&l.image).unwrap(), |