You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
netpong/paddle.hpp

57 lines
1.1 KiB
C++

#ifndef PADDLE_H
#define PADDLE_H
class Paddle {
private:
/* Variables */
raylib::Rectangle rectangle;
raylib::Color color;
int points;
raylib::Vector2 initial_pos;
public:
/* Variables */
raylib::Vector2 velocity; /* This variable is made public to allow easy modification (no need for getters/setters) */
/* Functions */
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() {
return this->rectangle;
}
int getPoints() {
return points;
}
void incrementPoints() {
points++;
return;
}
void reset() {
this->rectangle.x = this->initial_pos.x;
this->rectangle.y = this->initial_pos.y;
this->velocity = raylib::Vector2(0,0);
return;
}
void updatePosition() {
this->rectangle.x += this->velocity.x;
this->rectangle.y += this->velocity.y;
return;
}
void draw() {
this->rectangle.Draw(this->color);
return;
}
};
#endif