Trying to switch to more object-oriented
This commit is contained in:
@@ -3,12 +3,14 @@
|
||||
|
||||
#include "sdlpp_common.hpp"
|
||||
#include "sdlpp_renderer.hpp"
|
||||
#include "sdlpp_vector.hpp"
|
||||
#include <memory>
|
||||
|
||||
namespace SDLPP {
|
||||
class SDLPPSCOPE CollisionPolygon {
|
||||
public:
|
||||
CollisionPolygon( double x, double y );
|
||||
CollisionPolygon( const Vec2D<double> &input );
|
||||
virtual ~CollisionPolygon() {}
|
||||
virtual bool colidesWith( const CollisionPolygon &other ) const = 0;
|
||||
virtual bool isCircle() const = 0;
|
||||
@@ -26,13 +28,11 @@ public:
|
||||
int getY() const;
|
||||
void setColor( const std::string &color );
|
||||
void setOutlineColor( const std::string &color );
|
||||
virtual std::shared_ptr<CollisionPolygon> copySelf() = 0;
|
||||
virtual std::shared_ptr< CollisionPolygon > copySelf() = 0;
|
||||
|
||||
protected:
|
||||
double original_x;
|
||||
double original_y;
|
||||
int position_x;
|
||||
int position_y;
|
||||
Vec2D<double> original;
|
||||
Vec2D<int> position;
|
||||
bool infinite = false;
|
||||
SDL_Color sdl_color = { 0, 0, 0, 0 };
|
||||
SDL_Color sdl_outline = { 0, 0, 0, 0 };
|
||||
|
||||
Reference in New Issue
Block a user