Trying to switch to more object-oriented
This commit is contained in:
@@ -3,13 +3,17 @@
|
||||
|
||||
#include "sdlpp_common.hpp"
|
||||
#include "sdlpp_collision.hpp"
|
||||
#include "sdlpp_vector.hpp"
|
||||
#include "sdlpp_line.hpp"
|
||||
|
||||
#include <limits>
|
||||
#include <vector>
|
||||
|
||||
namespace SDLPP {
|
||||
class SDLPPSCOPE RectColider : public CollisionPolygon {
|
||||
public:
|
||||
RectColider( double x, double y, double w, double h );
|
||||
RectColider( const Vec2D<double> &top_left, const Vec2D<double> &size );
|
||||
virtual ~RectColider() {}
|
||||
virtual bool colidesWith( const CollisionPolygon &other ) const override;
|
||||
virtual bool isCircle() const override;
|
||||
@@ -23,14 +27,18 @@ public:
|
||||
const std::tuple< int, int, int, int > &color ) override;
|
||||
virtual void render( Renderer &renderer ) override;
|
||||
virtual std::shared_ptr<CollisionPolygon> copySelf() override;
|
||||
virtual std::vector<Line<double>> getLines();
|
||||
|
||||
private:
|
||||
SDL_Rect getRect();
|
||||
|
||||
double w_;
|
||||
double h_;
|
||||
int pixel_w;
|
||||
int pixel_h;
|
||||
double width() const;
|
||||
double height() const;
|
||||
int pixel_width() const;
|
||||
int pixel_height() const;
|
||||
|
||||
Vec2D<double> _size;
|
||||
Vec2D<int> _size_pixel;
|
||||
};
|
||||
} // end of namespace SDLPP
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user