-
Notifications
You must be signed in to change notification settings - Fork 2
/
Paddle.cpp
25 lines (20 loc) · 986 Bytes
/
Paddle.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include "Paddle.h"
void Paddle::changePaddlePosition(bool sdlKeyboardStateUp, bool sdlKeyBoardStateDown, float deltaTime) {
// Implementing movement up and down for corresponding key presses
_mPaddleDirection = 0;
if (sdlKeyboardStateUp)
_mPaddleDirection -= 1;
if (sdlKeyBoardStateDown)
_mPaddleDirection += 1;
// Implementing paddle movement and clipping position if paddle reaches window border
if (static_cast<int>(_position.y) + _length / 2 > _windowLimitY) {
_position.y = static_cast<float>(_windowLimitY) - static_cast<float>(_length) / 2;
}
else if (static_cast<int>(_position.y) - _length / 2 < 0) {
_position.y = 0 + static_cast<float>(_length) / 2;
}
else
_position.y += static_cast<float>(_mPaddleDirection) * _mPaddleMovingSpeed * deltaTime;
}
short int* Paddle::getPaddleDirection() { return &_mPaddleDirection; }
float* Paddle::getPaddleMovingSpeed() { return &_mPaddleMovingSpeed; }