
Final Commit
Dependencies: mbed
SnakeEngine/SnakeEngine.cpp@10:62d8cb7742c3, 2018-04-04 (annotated)
- Committer:
- JRM1986
- Date:
- Wed Apr 04 12:25:51 2018 +0000
- Revision:
- 10:62d8cb7742c3
- Parent:
- 9:561e5681b7a6
- Child:
- 13:72bc2579e85e
Function to set and return direction works in low level test, unable to implement as FSM as of yet.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
JRM1986 | 2:ea90cec2489a | 1 | #include "SnakeEngine.h" |
JRM1986 | 2:ea90cec2489a | 2 | |
JRM1986 | 2:ea90cec2489a | 3 | |
JRM1986 | 2:ea90cec2489a | 4 | SnakeEngine::SnakeEngine() |
JRM1986 | 2:ea90cec2489a | 5 | { |
JRM1986 | 2:ea90cec2489a | 6 | |
JRM1986 | 2:ea90cec2489a | 7 | } |
JRM1986 | 2:ea90cec2489a | 8 | |
JRM1986 | 2:ea90cec2489a | 9 | SnakeEngine::~SnakeEngine() |
JRM1986 | 2:ea90cec2489a | 10 | { |
JRM1986 | 2:ea90cec2489a | 11 | |
JRM1986 | 7:c38800a428a6 | 12 | } |
JRM1986 | 10:62d8cb7742c3 | 13 | |
JRM1986 | 9:561e5681b7a6 | 14 | |
JRM1986 | 10:62d8cb7742c3 | 15 | void SnakeEngine::init() |
JRM1986 | 7:c38800a428a6 | 16 | { |
JRM1986 | 8:a2b431b9b3f7 | 17 | |
JRM1986 | 10:62d8cb7742c3 | 18 | /*Vector2D food_pos = _food.get_rand_pos(); |
JRM1986 | 8:a2b431b9b3f7 | 19 | |
JRM1986 | 8:a2b431b9b3f7 | 20 | _fx = food_pos.x; |
JRM1986 | 8:a2b431b9b3f7 | 21 | _fy = food_pos.y; |
JRM1986 | 7:c38800a428a6 | 22 | |
JRM1986 | 10:62d8cb7742c3 | 23 | _food.init(_fx,_fy);*/ |
JRM1986 | 10:62d8cb7742c3 | 24 | _snake.init(); |
JRM1986 | 9:561e5681b7a6 | 25 | |
JRM1986 | 8:a2b431b9b3f7 | 26 | } |
JRM1986 | 8:a2b431b9b3f7 | 27 | |
JRM1986 | 10:62d8cb7742c3 | 28 | void SnakeEngine::get_input(Gamepad &pad, Snake &snake) |
JRM1986 | 10:62d8cb7742c3 | 29 | { |
JRM1986 | 10:62d8cb7742c3 | 30 | _next = pad.get_direction(); |
JRM1986 | 10:62d8cb7742c3 | 31 | _cur = snake.get_snake_direction(); |
JRM1986 | 10:62d8cb7742c3 | 32 | |
JRM1986 | 10:62d8cb7742c3 | 33 | } |
JRM1986 | 10:62d8cb7742c3 | 34 | |
JRM1986 | 10:62d8cb7742c3 | 35 | void SnakeEngine::update(Gamepad &pad) |
JRM1986 | 10:62d8cb7742c3 | 36 | { |
JRM1986 | 10:62d8cb7742c3 | 37 | |
JRM1986 | 10:62d8cb7742c3 | 38 | _snake.update(_next, _cur); |
JRM1986 | 10:62d8cb7742c3 | 39 | |
JRM1986 | 10:62d8cb7742c3 | 40 | } |
JRM1986 | 10:62d8cb7742c3 | 41 | |
JRM1986 | 10:62d8cb7742c3 | 42 | |
JRM1986 | 8:a2b431b9b3f7 | 43 | void SnakeEngine::draw(N5110 &lcd) |
JRM1986 | 8:a2b431b9b3f7 | 44 | { |
JRM1986 | 8:a2b431b9b3f7 | 45 | |
JRM1986 | 8:a2b431b9b3f7 | 46 | lcd.drawRect(0,0,WIDTH,HEIGHT,FILL_TRANSPARENT); |
JRM1986 | 8:a2b431b9b3f7 | 47 | lcd.setContrast(0.5); |
JRM1986 | 8:a2b431b9b3f7 | 48 | _food.update(); |
JRM1986 | 8:a2b431b9b3f7 | 49 | _food.draw(lcd); |
JRM1986 | 10:62d8cb7742c3 | 50 | _snake.update(_next, _cur); |
JRM1986 | 10:62d8cb7742c3 | 51 | _snake.draw(lcd); |
JRM1986 | 9:561e5681b7a6 | 52 | |
JRM1986 | 2:ea90cec2489a | 53 | } |