From 59dfd3da4d3e5d4a368a664c51c22bbdc8ff2ca4 Mon Sep 17 00:00:00 2001 From: Kelly Rauchenberger Date: Sat, 13 Feb 2021 10:11:23 -0500 Subject: Added sprite shadows --- src/renderer.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/renderer.cpp') diff --git a/src/renderer.cpp b/src/renderer.cpp index 246b7fb..f07931b 100644 --- a/src/renderer.cpp +++ b/src/renderer.cpp @@ -122,8 +122,14 @@ void Renderer::render(Game& game) { SDL_RenderCopy(ren_.get(), renLay1_.get(), nullptr, nullptr); + int shadowTexId = loadImageFromFile("../res/shadow.png"); for (const Sprite& sprite : game.getSystem().getSpritesByY() | game.spriteView()) { if (sprite.isAnimated) { + if (sprite.hasShadow) { + const SDL_Rect shadowDest { sprite.loc.x() - 8, sprite.loc.y() - 8, 16, 8 }; + SDL_RenderCopy(ren_.get(), textures_.at(shadowTexId).get(), nullptr, &shadowDest); + } + const SpriteFrame& frame = sprite.frames.at(sprite.animations.at(sprite.animationId).at(sprite.animationFrame)); const SDL_Rect& src = frame.srcRect; SDL_Rect dest { sprite.loc.x() - frame.center.x(), sprite.loc.y() - frame.center.y(), frame.size.w(), frame.size.h() }; -- cgit 1.4.1