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.
Dependencies: mbed
SnakeTail/SnakeTail.cpp@11:c4b740a970f8, 2020-05-23 (annotated)
- Committer:
- sdlashmar
- Date:
- Sat May 23 10:50:43 2020 +0000
- Revision:
- 11:c4b740a970f8
- Parent:
- 7:c67a5c6a874f
- Child:
- 14:4356797fd16e
tail logic working
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| sdlashmar | 5:256e5e0b6cd7 | 1 | #include "SnakeTail.h" |
| sdlashmar | 5:256e5e0b6cd7 | 2 | |
| sdlashmar | 5:256e5e0b6cd7 | 3 | SnakeTail::SnakeTail() |
| sdlashmar | 5:256e5e0b6cd7 | 4 | { |
| sdlashmar | 5:256e5e0b6cd7 | 5 | |
| sdlashmar | 5:256e5e0b6cd7 | 6 | } |
| sdlashmar | 5:256e5e0b6cd7 | 7 | |
| sdlashmar | 5:256e5e0b6cd7 | 8 | SnakeTail::~SnakeTail() |
| sdlashmar | 5:256e5e0b6cd7 | 9 | { |
| sdlashmar | 5:256e5e0b6cd7 | 10 | |
| sdlashmar | 5:256e5e0b6cd7 | 11 | } |
| sdlashmar | 5:256e5e0b6cd7 | 12 | |
| sdlashmar | 11:c4b740a970f8 | 13 | void SnakeTail::update(Vector2D prevHead, int length) |
| sdlashmar | 5:256e5e0b6cd7 | 14 | { |
| sdlashmar | 11:c4b740a970f8 | 15 | _length = length; |
| sdlashmar | 11:c4b740a970f8 | 16 | _x_init = prevHead.x; |
| sdlashmar | 11:c4b740a970f8 | 17 | _y_init = prevHead.y; |
| sdlashmar | 11:c4b740a970f8 | 18 | //printf("x_init = %i\n", _x_init); |
| sdlashmar | 11:c4b740a970f8 | 19 | //printf("y_init = %i\n", _y_init); |
| sdlashmar | 11:c4b740a970f8 | 20 | prevX = tailX[0]; |
| sdlashmar | 11:c4b740a970f8 | 21 | prevY = tailY[0]; |
| sdlashmar | 11:c4b740a970f8 | 22 | tailX[0] = _x_init; |
| sdlashmar | 11:c4b740a970f8 | 23 | tailY[0] = _y_init; |
| sdlashmar | 7:c67a5c6a874f | 24 | |
| sdlashmar | 7:c67a5c6a874f | 25 | |
| sdlashmar | 7:c67a5c6a874f | 26 | |
| sdlashmar | 11:c4b740a970f8 | 27 | for(int i = 1; i < _length; i++) { |
| sdlashmar | 11:c4b740a970f8 | 28 | prev2X = tailX[i]; |
| sdlashmar | 11:c4b740a970f8 | 29 | prev2Y = tailY[i]; |
| sdlashmar | 7:c67a5c6a874f | 30 | tailX[i] = prevX; |
| sdlashmar | 7:c67a5c6a874f | 31 | tailY[i] = prevY; |
| sdlashmar | 11:c4b740a970f8 | 32 | prevX = prev2X; |
| sdlashmar | 11:c4b740a970f8 | 33 | prevY = prev2Y; |
| sdlashmar | 7:c67a5c6a874f | 34 | } |
| sdlashmar | 11:c4b740a970f8 | 35 | /*for (int l = 0; l < _length; l++) { |
| sdlashmar | 11:c4b740a970f8 | 36 | printf("i = %i\n", l); |
| sdlashmar | 11:c4b740a970f8 | 37 | printf("tailX[i] = %i\n", tailX[l]); |
| sdlashmar | 11:c4b740a970f8 | 38 | printf("tailY[i] = %i\n", tailY[l]); |
| sdlashmar | 11:c4b740a970f8 | 39 | }*/ |
| sdlashmar | 5:256e5e0b6cd7 | 40 | } |
| sdlashmar | 11:c4b740a970f8 | 41 | |
| sdlashmar | 11:c4b740a970f8 | 42 | |
| sdlashmar | 11:c4b740a970f8 | 43 | |
| sdlashmar | 7:c67a5c6a874f | 44 | void SnakeTail::draw(N5110 &lcd, int length) { |
| sdlashmar | 7:c67a5c6a874f | 45 | int _length = length; |
| sdlashmar | 11:c4b740a970f8 | 46 | for(int j = 0; j < _length; j++) { |
| sdlashmar | 7:c67a5c6a874f | 47 | lcd.drawRect(tailX[j], tailY[j], 2, 2, FILL_BLACK); |
| sdlashmar | 7:c67a5c6a874f | 48 | } |
| sdlashmar | 7:c67a5c6a874f | 49 | } |
| sdlashmar | 7:c67a5c6a874f | 50 | |
| sdlashmar | 7:c67a5c6a874f | 51 | |
| sdlashmar | 5:256e5e0b6cd7 | 52 | |
| sdlashmar | 5:256e5e0b6cd7 | 53 | |
| sdlashmar | 5:256e5e0b6cd7 | 54 | |
| sdlashmar | 5:256e5e0b6cd7 | 55 | |
| sdlashmar | 5:256e5e0b6cd7 | 56 | |
| sdlashmar | 5:256e5e0b6cd7 | 57 |