- commit
- 0229c49777dea8d4b21dc45d756cddbfb5e877fa
- parent
- 1ca9fd2701689bbcec0cf9eda1333565d1fe3795
- Author
- Tobias Bengfort <tobias.bengfort@posteo.de>
- Date
- 2023-04-09 17:41
add knockback
Diffstat
| M | src/game.rs | 10 | ++++++++++ |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/game.rs b/src/game.rs
@@ -261,6 +261,10 @@ impl Game {
261 261 let size = enemy.t.size + self.player.size;
262 262 if dx2 + dy2 * 4.0 < size * size {
263 263 self.player.health -= enemy.t.power * dt;
-1 264
-1 265 let d = (dx2 + dy2).sqrt();
-1 266 enemy.p.x -= dx / d * 3.0;
-1 267 enemy.p.y -= dy / d * 3.0;
264 268 }
265 269
266 270 if dx2 + dy2 < self.player.damage_radius * self.player.damage_radius {
@@ -271,6 +275,12 @@ impl Game {
271 275 let projectile_size = enemy.t.size + weapon.size;
272 276 if projectile.p.in_radius(&enemy.p, projectile_size) {
273 277 enemy.health -= weapon.damage * self.player.power * dt;
-1 278
-1 279 let dx = projectile.p.x - enemy.p.x;
-1 280 let dy = projectile.p.y - enemy.p.y;
-1 281 let d = (dx * dx + dy * dy).sqrt();
-1 282 enemy.p.x -= dx / d * 3.0;
-1 283 enemy.p.y -= dy / d * 3.0;
274 284 }
275 285 }
276 286 }