Skip to content

Commit 936c9b4

Browse files
Fix tile overlaps
1 parent 25953d4 commit 936c9b4

File tree

2 files changed

+21
-14
lines changed

2 files changed

+21
-14
lines changed

src/game.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -649,6 +649,8 @@ impl Game {
649649
self.map.barrels.remove(i);
650650

651651
done = true;
652+
653+
break;
652654
}
653655
}
654656
PlayerWeapon::Grappling(_grapple) => {

src/map.rs

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -53,29 +53,34 @@ impl Map {
5353
'[' => {
5454
let tile = Tile::new(draw_pos, physics, asset_manager, TileType::LEFT);
5555

56-
draw_inc = tile.dimensions().x;
57-
ground.push(tile);
58-
56+
draw_inc = (tile.dimensions().x / 2.0) + 32.0;
5957
draw_pos += draw_inc;
58+
59+
ground.push(tile);
6060
}
6161

6262
'-' => {
6363
let tile =
6464
Tile::new(draw_pos, physics, asset_manager, TileType::CENTER);
6565

66-
draw_inc = tile.dimensions().x;
67-
ground.push(tile);
68-
66+
draw_inc = (tile.dimensions().x / 2.0) + 32.0;
6967
draw_pos += draw_inc;
68+
69+
ground.push(tile);
7070
}
7171

7272
']' => {
73-
let tile = Tile::new(draw_pos, physics, asset_manager, TileType::RIGHT);
73+
let tile = Tile::new(
74+
(draw_pos - 32.0) + 20.0,
75+
physics,
76+
asset_manager,
77+
TileType::RIGHT,
78+
);
79+
80+
draw_inc = (tile.dimensions().x / 2.0) + 32.0;
81+
draw_pos += draw_inc;
7482

75-
draw_inc = tile.dimensions().x;
7683
ground.push(tile);
77-
78-
draw_pos += draw_inc;
7984
}
8085

8186
'_' => {
@@ -87,7 +92,7 @@ impl Map {
8792
let tile =
8893
Tile::new(draw_pos, physics, asset_manager, TileType::CENTER);
8994

90-
draw_inc = tile.dimensions().x;
95+
draw_inc = (tile.dimensions().x / 2.0) + 32.0;
9196

9297
ground.push(tile);
9398
enemies.push(Enemy::new(draw_pos, physics, asset_manager));
@@ -100,12 +105,12 @@ impl Map {
100105
let tile =
101106
Tile::new(draw_pos, physics, asset_manager, TileType::CENTER);
102107

103-
draw_inc = tile.dimensions().x;
104-
105-
ground.push(tile);
106108
player = Some(Player::new(draw_pos, physics, asset_manager));
107109

110+
draw_inc = tile.dimensions().x;
108111
draw_pos += draw_inc;
112+
113+
ground.push(tile);
109114
}
110115

111116
'*' => {

0 commit comments

Comments
 (0)