From 89295b92838ce901347f0e4e987a0deb3355bf1e Mon Sep 17 00:00:00 2001 From: Thomas Forgione Date: Sat, 6 Oct 2018 11:32:44 +0200 Subject: [PATCH] Working on collisions --- assets/levels/level1.txt | 12 ++++++------ assets/test-textures/mario.png | Bin 0 -> 3794 bytes assets/test-textures/overworld-raw.png | Bin 0 -> 75248 bytes assets/test-textures/overworld.png | Bin 0 -> 3883 bytes src/engine/character/mod.rs | 4 ++++ src/engine/map/mod.rs | 8 ++++++-- src/engine/renderer/mod.rs | 4 ++++ src/engine/texture/mod.rs | 2 +- 8 files changed, 21 insertions(+), 9 deletions(-) create mode 100644 assets/test-textures/mario.png create mode 100644 assets/test-textures/overworld-raw.png create mode 100644 assets/test-textures/overworld.png diff --git a/assets/levels/level1.txt b/assets/levels/level1.txt index 46a3f55..bc85445 100644 --- a/assets/levels/level1.txt +++ b/assets/levels/level1.txt @@ -4,12 +4,12 @@ 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 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 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 1 1 1 1 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 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 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 0 0 0 0 0 0 -1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 -1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 -1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +1 1 1 1 0 0 0 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 +1 1 1 1 0 0 0 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 +1 1 1 1 0 0 0 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 diff --git a/assets/test-textures/mario.png b/assets/test-textures/mario.png new file mode 100644 index 0000000000000000000000000000000000000000..52a20c45694ee9746e4c4f1b20c0f29c2670ce70 GIT binary patch literal 3794 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 L+R9~$mLdNEEVt-$ literal 0 HcmV?d00001 diff --git a/assets/test-textures/overworld-raw.png b/assets/test-textures/overworld-raw.png new file mode 100644 index 0000000000000000000000000000000000000000..f56b851fb742290c4b8fc35b012da19fea379bf2 GIT binary patch literal 75248 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 z%0D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 QVU`Q3siu3WP{ktPUrOQkmH+?% literal 0 HcmV?d00001 diff --git a/assets/test-textures/overworld.png b/assets/test-textures/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..255680be05d3eab24df9c9968c71f0f2d8539972 GIT binary patch literal 3883 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 Vector2 { self.position } + + fn origin(&self) -> Vector2 { + Vector2::new(16.0, 16.0) + } } diff --git a/src/engine/map/mod.rs b/src/engine/map/mod.rs index 5a4a564..dc6ae77 100644 --- a/src/engine/map/mod.rs +++ b/src/engine/map/mod.rs @@ -234,6 +234,10 @@ impl Drawable for PositionedTile { fn position(&self) -> Vector2 { self.position.into() } + + fn origin(&self) -> Vector2 { + Vector2::new(0.0, 0.0) + } } /// The map represents the tiles contained in a level. @@ -363,8 +367,8 @@ impl Map { // Find tile on x, y if x > 0.0 && y > 0.0 { - let row = (y / 16.0) as usize + 2; - let col = (x / 16.0) as usize + 1; + let row = (y / 16.0) as usize; + let col = (x / 16.0) as usize; if let Some((tile, _)) = self.tiles.get((row, col)) { if tile.from_top { diff --git a/src/engine/renderer/mod.rs b/src/engine/renderer/mod.rs index eb383d7..9b040b2 100644 --- a/src/engine/renderer/mod.rs +++ b/src/engine/renderer/mod.rs @@ -32,6 +32,9 @@ pub trait Drawable { /// Returns the position on which the drawable should be drawn. fn position(&self) -> Vector2; + + /// Returns the origin of the sprite. + fn origin(&self) -> Vector2; } /// The game window. @@ -89,6 +92,7 @@ impl Renderer { use sfml::graphics::Transformable; sprite.set_position(drawable.position()); + sprite.set_origin(drawable.origin()); self.window.draw(&sprite); } diff --git a/src/engine/texture/mod.rs b/src/engine/texture/mod.rs index 3d63099..3d554e1 100644 --- a/src/engine/texture/mod.rs +++ b/src/engine/texture/mod.rs @@ -57,7 +57,7 @@ macro_rules! make_textures { } make_textures!( - Mario, mario, make_mario_texture, "../../../assets/textures/mario.png", + Mario, mario, make_mario_texture, "../../../assets/test-textures/mario.png", Overworld, overworld, make_overworld_texture, "../../../assets/textures/overworld.png", );