Split 'paddle' class into header and implementation files

This commit is contained in:
2024-02-15 07:47:35 -05:00
parent 86411ae907
commit 17b391c1c3
2 changed files with 55 additions and 33 deletions

View File

@@ -14,43 +14,25 @@ public:
raylib::Vector2 velocity; /* This variable is made public to allow easy modification (no need for getters/setters) */ raylib::Vector2 velocity; /* This variable is made public to allow easy modification (no need for getters/setters) */
/* Functions */ /* Functions */
Paddle(int pos_x, int pos_y, int width, int height) { Paddle(int pos_x, int pos_y, int width, int height);
this->rectangle = raylib::Rectangle(pos_x, pos_y, width, height);
this->initial_pos = raylib::Vector2(pos_x, pos_y);
this->color = raylib::Color::White();
this->velocity = raylib::Vector2(0,0);
points = 0;
return;
}
raylib::Rectangle getRect() { /* Returns the raylib::Rectangle object of this paddle */
return this->rectangle; raylib::Rectangle getRect();
}
int getPoints() { /* Returns the number of points that this paddle has earned */
return points; int getPoints();
}
void incrementPoints() {
points++;
return;
}
void reset() { /* Increments the number of points that this paddle has earned */
this->rectangle.x = this->initial_pos.x; void incrementPoints();
this->rectangle.y = this->initial_pos.y;
this->velocity = raylib::Vector2(0,0);
return;
}
void updatePosition() { /* Resets the paddle position */
this->rectangle.x += this->velocity.x; void reset();
this->rectangle.y += this->velocity.y;
return; /* Update the paddle position, based on its velocity */
} void updatePosition();
void draw() {
this->rectangle.Draw(this->color); /* Draw the paddle onto the screen */
return; void draw();
}
}; };
#endif #endif

40
paddle.cpp Normal file
View File

@@ -0,0 +1,40 @@
#include "includes/raylib-cpp/raylib-cpp.hpp"
#include "includes/paddle.hpp"
Paddle::Paddle(int pos_x, int pos_y, int width, int height) {
this->rectangle = raylib::Rectangle(pos_x, pos_y, width, height);
this->initial_pos = raylib::Vector2(pos_x, pos_y);
this->color = raylib::Color::White();
this->velocity = raylib::Vector2(0,0);
points = 0;
return;
}
raylib::Rectangle Paddle::getRect() {
return this->rectangle;
}
int Paddle::getPoints() {
return points;
}
void Paddle::incrementPoints() {
points++;
return;
}
void Paddle::reset() {
this->rectangle.x = this->initial_pos.x;
this->rectangle.y = this->initial_pos.y;
this->velocity = raylib::Vector2(0,0);
return;
}
void Paddle::updatePosition() {
this->rectangle.x += this->velocity.x;
this->rectangle.y += this->velocity.y;
return;
}
void Paddle::draw() {
this->rectangle.Draw(this->color);
return;
}