aboutsummaryrefslogtreecommitdiff
path: root/renderer/src/map.rs
diff options
context:
space:
mode:
Diffstat (limited to 'renderer/src/map.rs')
-rw-r--r--renderer/src/map.rs15
1 files changed, 9 insertions, 6 deletions
diff --git a/renderer/src/map.rs b/renderer/src/map.rs
index a1e8d94..5b657d4 100644
--- a/renderer/src/map.rs
+++ b/renderer/src/map.rs
@@ -29,18 +29,18 @@ impl MapRenderer {
for (key, t) in &world.map.tilesets {
for layer in world.map.layers.iter().filter(|l| l.image == *key) {
let tint = layer.color;
- let mut bytes: Vec<u8> = Vec::with_capacity(t.dim().0 * t.dim().1 * 4);
info!(
"loading tileset: (texture: {:?}, tint: {}) => {:?}",
key,
tint,
t.dim()
);
+ let mut bytes: Vec<u8> = Vec::with_capacity(t.dim().0 * t.dim().1 * 4);
for ((_x, _y), c) in t.indexed_iter() {
- bytes.push((c.r as u32 * tint.r as u32) as u8);
- bytes.push((c.g as u32 * tint.g as u32) as u8);
- bytes.push((c.b as u32 * tint.b as u32) as u8);
- bytes.push((c.a as u32 * tint.a as u32) as u8);
+ bytes.push((c.r as u32/* * tint.r as u32*/) as u8);
+ bytes.push((c.g as u32/* * tint.g as u32*/) as u8);
+ bytes.push((c.b as u32/* * tint.b as u32*/) as u8);
+ bytes.push((c.a as u32/* * tint.a as u32*/) as u8);
}
let d = skia_safe::Data::new_copy(&bytes);
let v = skia_safe::Image::from_raster_data(
@@ -98,7 +98,10 @@ impl MapRenderer {
let layer_x = layer_x.try_into().unwrap_or(0);
let layer_y = layer_y.try_into().unwrap_or(0);
- let tile = match l.tiles.get((layer_y, layer_x)) {
+ let tile = match l.tiles.get((
+ ((layer_y as i32) + l.offset.1) as usize,
+ ((layer_y as i32) + l.offset.0) as usize,
+ )) {
Some(t) => t,
None => continue,
};