game/sdlpp/sdlpp_circlerenderer.cpp

49 lines
1.2 KiB
C++

#include "sdlpp_circlerenderer.hpp"
namespace SDLPP {
CircleRender::CircleRender( int x, int y, int rad,
std::shared_ptr< Renderer > &r )
: RenderObject( r ) {
x_ = x;
y_ = y;
rad_ = rad;
}
CircleRender::CircleRender( int x, int y, int rad,
std::shared_ptr< Renderer > &r,
std::shared_ptr< Texture > &t )
: CircleRender( x, y, rad, r ) {
setTexture( t );
}
CircleRender::CircleRender( int x, int y, int rad,
std::shared_ptr< Renderer > &r,
const std::string &img_path )
: CircleRender( x, y, rad, r ) {
auto texture = std::make_shared< Texture >( r, img_path );
setTexture( texture );
}
void CircleRender::render() {
std::cout << "I'm a circle, look at me go!" << std::endl
<< "My dimensions are: [" << x_ << ", " << y_
<< "], radius: " << rad_ << std::endl;
}
int CircleRender::leftmost() {
return x_ - rad_;
}
int CircleRender::topmost() {
return y_ - rad_;
}
int CircleRender::collisionPushX() {
return x_;
}
int CircleRender::collisionPushY() {
return y_;
}
} // namespace SDLPP