]> git.localhorst.tv Git - sdl-test7.git/blob - src/pong/Paddle.cpp
imported current version
[sdl-test7.git] / src / pong / Paddle.cpp
1 /*
2  * Paddle.cpp
3  *
4  *  Created on: Apr 10, 2012
5  *      Author: holy
6  */
7
8 #include "Paddle.h"
9
10 #include "Ball.h"
11
12
13 namespace pong {
14
15 Paddle::Paddle(const Vector &size)
16 : Entity(&shape)
17 , shape(size) {
18
19 }
20
21
22 void Paddle::Collide(game::Entity &other, const Vector &normal) {
23
24 }
25
26 void Paddle::Render(SDL_Surface *screen) {
27         SDL_Rect destRect;
28         shape.WriteRect(destRect);
29         SDL_FillRect(screen, &destRect, SDL_MapRGB(screen->format, 0xFF, 0xFF, 0xFF));
30 }
31
32
33 void Paddle::SetMovementSpeed(Vector s) {
34         movementSpeed = s;
35
36         Vector v;
37         v = Velocity();
38         SetVelocity(v.Unify() * s.Length());
39 }
40
41
42 void Paddle::StartMovingUp(void) {
43         SetVelocity(Velocity() - movementSpeed);
44 }
45
46 void Paddle::StopMovingUp(void) {
47         SetVelocity(Velocity() + movementSpeed);
48 }
49
50 void Paddle::StartMovingDown(void) {
51         SetVelocity(Velocity() + movementSpeed);
52 }
53
54 void Paddle::StopMovingDown(void) {
55         SetVelocity(Velocity() - movementSpeed);
56 }
57
58 }