summaryrefslogtreecommitdiff
path: root/src/game/effects.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/effects.cpp')
-rw-r--r--src/game/effects.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/game/effects.cpp b/src/game/effects.cpp
index 501b296..daa2770 100644
--- a/src/game/effects.cpp
+++ b/src/game/effects.cpp
@@ -182,11 +182,12 @@ void fx_explosion_t::render_to(render::state_t *render)
render->render(phase, &assets::fx.explosion, render_bounds, sf::Color::White);
}
-fx_ricochet_t::fx_ricochet_t(state_t *game_, v2f_t x_) : effect_t(game_)
+fx_bullet_miss_t::fx_bullet_miss_t(state_t *game_, v2f_t x_, bool water_) : effect_t(game_)
{
ttl = game->now + 0.3;
x = x_;
+ water = water_;
render_bounds[0] = x - v2f_t(0.12f, 0.12f);
render_bounds[1] = x + v2f_t(0.12f, 0.12f);
@@ -197,13 +198,16 @@ fx_ricochet_t::fx_ricochet_t(state_t *game_, v2f_t x_) : effect_t(game_)
ignore_waking = true;
wake();
- assets::fx.ricochet_sound.play_3d(x);
+ if (water)
+ assets::fx.water_splash_sound.play_3d(x);
+ else
+ assets::fx.ricochet_sound.play_3d(x);
}
-void fx_ricochet_t::render_to(render::state_t *render)
+void fx_bullet_miss_t::render_to(render::state_t *render)
{
double phase = (game->now - ttl) / 0.3f;
- render->render(phase, &assets::fx.ricochet, render_bounds, sf::Color::White);
+ render->render(phase, (water ? &assets::fx.water_splash : &assets::fx.ricochet), render_bounds, sf::Color::White);
}
} // namespace game