Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Player/Player.cpp@7:68e06dda79f7, 2019-04-17 (annotated)
- Committer:
- joshdavy
- Date:
- Wed Apr 17 12:39:46 2019 +0000
- Revision:
- 7:68e06dda79f7
- Parent:
- 4:afbf3dd71403
- Child:
- 8:21b6d4dbce44
Level Rendering Complete. Basic Collision Detection.;
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| joshdavy | 3:b34685dbdb8d | 1 | #include "Player.h" |
| joshdavy | 3:b34685dbdb8d | 2 | |
| joshdavy | 3:b34685dbdb8d | 3 | |
| joshdavy | 3:b34685dbdb8d | 4 | |
| joshdavy | 3:b34685dbdb8d | 5 | Player::Player() |
| joshdavy | 3:b34685dbdb8d | 6 | { |
| joshdavy | 7:68e06dda79f7 | 7 | _orientation = 1; |
| joshdavy | 3:b34685dbdb8d | 8 | } |
| joshdavy | 3:b34685dbdb8d | 9 | |
| joshdavy | 3:b34685dbdb8d | 10 | Player::~Player() |
| joshdavy | 3:b34685dbdb8d | 11 | { |
| joshdavy | 3:b34685dbdb8d | 12 | |
| joshdavy | 3:b34685dbdb8d | 13 | } |
| joshdavy | 3:b34685dbdb8d | 14 | |
| joshdavy | 7:68e06dda79f7 | 15 | void Player::update(Gamepad &pad, Block blocks [],int number_of_blocks) |
| joshdavy | 4:afbf3dd71403 | 16 | { |
| joshdavy | 7:68e06dda79f7 | 17 | // if orientation = 1 then |
| joshdavy | 7:68e06dda79f7 | 18 | // for block |
| joshdavy | 7:68e06dda79f7 | 19 | // if in x range of the block |
| joshdavy | 7:68e06dda79f7 | 20 | // if y - height is equal to block y |
| joshdavy | 7:68e06dda79f7 | 21 | // then dont move down |
| joshdavy | 7:68e06dda79f7 | 22 | // else move down |
| joshdavy | 7:68e06dda79f7 | 23 | |
| joshdavy | 4:afbf3dd71403 | 24 | |
| joshdavy | 7:68e06dda79f7 | 25 | if (pad.check_event(Gamepad::L_PRESSED)) { |
| joshdavy | 7:68e06dda79f7 | 26 | _pos.x -= 2; |
| joshdavy | 7:68e06dda79f7 | 27 | } |
| joshdavy | 7:68e06dda79f7 | 28 | if (pad.check_event(Gamepad::R_PRESSED)) { |
| joshdavy | 7:68e06dda79f7 | 29 | _pos.x += 2; |
| joshdavy | 7:68e06dda79f7 | 30 | } |
| joshdavy | 7:68e06dda79f7 | 31 | if (pad.check_event(Gamepad::A_PRESSED)) { |
| joshdavy | 7:68e06dda79f7 | 32 | flip(); |
| joshdavy | 7:68e06dda79f7 | 33 | } |
| joshdavy | 7:68e06dda79f7 | 34 | bool can_move_down = false; |
| joshdavy | 7:68e06dda79f7 | 35 | for (int i = 0; i < number_of_blocks;i++) { |
| joshdavy | 7:68e06dda79f7 | 36 | if (_pos.x + _width > blocks[i].first.x && |
| joshdavy | 7:68e06dda79f7 | 37 | _pos.x - _width < blocks[i].second.x) { |
| joshdavy | 7:68e06dda79f7 | 38 | |
| joshdavy | 7:68e06dda79f7 | 39 | if ( (_pos.y + _height) == blocks[i].first.y ) { |
| joshdavy | 7:68e06dda79f7 | 40 | can_move_down = false; |
| joshdavy | 7:68e06dda79f7 | 41 | } |
| joshdavy | 7:68e06dda79f7 | 42 | } |
| joshdavy | 7:68e06dda79f7 | 43 | } |
| joshdavy | 7:68e06dda79f7 | 44 | |
| joshdavy | 7:68e06dda79f7 | 45 | if (can_move_down) { |
| joshdavy | 7:68e06dda79f7 | 46 | _pos.y += GRAVITY; |
| joshdavy | 7:68e06dda79f7 | 47 | } |
| joshdavy | 4:afbf3dd71403 | 48 | |
| joshdavy | 4:afbf3dd71403 | 49 | |
| joshdavy | 4:afbf3dd71403 | 50 | |
| joshdavy | 4:afbf3dd71403 | 51 | } |
| joshdavy | 4:afbf3dd71403 | 52 | |
| joshdavy | 3:b34685dbdb8d | 53 | |
| joshdavy | 3:b34685dbdb8d | 54 | |
| joshdavy | 3:b34685dbdb8d | 55 |