ELEC2645 (2018/19) / Mbed 2 deprecated el17aio

Dependencies:   mbed

Revision:
2:66a4e5d7a7cd
Child:
3:f9cd1a38d5c6
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/RosenEngine/RosenEngine.h	Wed Feb 27 12:07:03 2019 +0000
@@ -0,0 +1,47 @@
+#ifndef ROSENENGINE_H
+#define ROSENENGINE_H
+
+#include "mbed.h"
+#include "N5110.h"
+#include "Gamepad.h"
+
+
+class RosenEngine
+{
+
+public:
+   RosenEngine();
+    ~RosenEngine();
+
+    void init(int paddle_width,int paddle_height,int ball_size,int speed);
+    void read_input(Gamepad &pad);
+    void update(Gamepad &pad);
+    void draw(N5110 &lcd);
+    
+private:
+
+    void check_wall_collision(Gamepad &pad);
+    void check_paddle_collisions(Gamepad &pad);
+    void check_goal(Gamepad &pad);
+    void print_scores(N5110 &lcd);
+    
+    Paddle _p1;
+    Paddle _p2;
+     
+    int _paddle_width;
+    int _paddle_height;
+    int _ball_size;
+    int _speed;
+    
+    // x positions of the paddles
+    int _p1x;
+    int _p2x;
+    
+    Ball _ball;
+    
+    Direction _d;
+    float _mag;
+
+};
+
+#endif
\ No newline at end of file