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
Enemy/Enemy1.cpp@18:ba4159ab4da7, 2019-05-08 (annotated)
- Committer:
- S_Tingle
- Date:
- Wed May 08 15:01:45 2019 +0000
- Revision:
- 18:ba4159ab4da7
- Parent:
- 16:37d98c281eb3
- Child:
- 21:7d4827af00d6
new movement enemy1
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| S_Tingle | 11:953141c3f7dd | 1 | #include "Enemy1.h" |
| S_Tingle | 11:953141c3f7dd | 2 | |
| S_Tingle | 11:953141c3f7dd | 3 | Enemy1::Enemy1(){ |
| S_Tingle | 11:953141c3f7dd | 4 | x_enem = 27; |
| S_Tingle | 11:953141c3f7dd | 5 | y_enem = 17; |
| S_Tingle | 11:953141c3f7dd | 6 | } |
| S_Tingle | 11:953141c3f7dd | 7 | |
| S_Tingle | 11:953141c3f7dd | 8 | Enemy1::~Enemy1(){ |
| S_Tingle | 11:953141c3f7dd | 9 | |
| S_Tingle | 11:953141c3f7dd | 10 | } |
| S_Tingle | 11:953141c3f7dd | 11 | |
| S_Tingle | 11:953141c3f7dd | 12 | void Enemy1::init(int x,int y){ |
| S_Tingle | 11:953141c3f7dd | 13 | x_enem = x; |
| S_Tingle | 11:953141c3f7dd | 14 | y_enem = y; |
| S_Tingle | 11:953141c3f7dd | 15 | } |
| S_Tingle | 11:953141c3f7dd | 16 | |
| S_Tingle | 14:d0650d0de063 | 17 | int Enemy1::get_x_enem(){ |
| S_Tingle | 11:953141c3f7dd | 18 | return x_enem; |
| S_Tingle | 11:953141c3f7dd | 19 | } |
| S_Tingle | 11:953141c3f7dd | 20 | |
| S_Tingle | 14:d0650d0de063 | 21 | int Enemy1::get_y_enem(){ |
| S_Tingle | 11:953141c3f7dd | 22 | return y_enem; |
| S_Tingle | 11:953141c3f7dd | 23 | } |
| S_Tingle | 11:953141c3f7dd | 24 | |
| S_Tingle | 11:953141c3f7dd | 25 | void Enemy1::drawSprite(N5110 &lcd){ |
| S_Tingle | 12:200a1266ceee | 26 | lcd.drawSprite(x_enem,y_enem,7,7,(int *)enemy_A); |
| S_Tingle | 11:953141c3f7dd | 27 | } |
| S_Tingle | 11:953141c3f7dd | 28 | |
| S_Tingle | 11:953141c3f7dd | 29 | void Enemy1::movement(N5110 &lcd){ |
| S_Tingle | 11:953141c3f7dd | 30 | accel = 1; |
| S_Tingle | 18:ba4159ab4da7 | 31 | _incrementer_enem1++; |
| S_Tingle | 18:ba4159ab4da7 | 32 | if ( _incrementer_enem1 == 62 ) { _incrementer_enem1 = 0; } |
| S_Tingle | 18:ba4159ab4da7 | 33 | if ( _incrementer_enem1 >= 0 && _incrementer_enem1 <= 23) { x_enem++; } |
| S_Tingle | 18:ba4159ab4da7 | 34 | else if ( _incrementer_enem1 >= 24 && _incrementer_enem1 <= 30) { y_enem++; } |
| S_Tingle | 18:ba4159ab4da7 | 35 | else if ( _incrementer_enem1 >= 31 && _incrementer_enem1 <= 54) { x_enem--; } |
| S_Tingle | 18:ba4159ab4da7 | 36 | else if ( _incrementer_enem1 >= 55 && _incrementer_enem1 <= 61) { y_enem--; } |
| S_Tingle | 11:953141c3f7dd | 37 | } |
| S_Tingle | 11:953141c3f7dd | 38 | |
| S_Tingle | 11:953141c3f7dd | 39 | bool Enemy1::northCollision(int x, int y, N5110 &lcd){ |
| S_Tingle | 11:953141c3f7dd | 40 | |
| S_Tingle | 13:c3b550fc2445 | 41 | for (int i = 1; i < 6; i++) { |
| S_Tingle | 13:c3b550fc2445 | 42 | if (lcd.getPixel(x + i,y - 1) == 1) { |
| S_Tingle | 11:953141c3f7dd | 43 | return true; |
| S_Tingle | 11:953141c3f7dd | 44 | } |
| S_Tingle | 11:953141c3f7dd | 45 | } |
| S_Tingle | 11:953141c3f7dd | 46 | return false; |
| S_Tingle | 11:953141c3f7dd | 47 | } |
| S_Tingle | 11:953141c3f7dd | 48 | |
| S_Tingle | 11:953141c3f7dd | 49 | bool Enemy1::southCollision(int x, int y, N5110 &lcd){ |
| S_Tingle | 11:953141c3f7dd | 50 | |
| S_Tingle | 13:c3b550fc2445 | 51 | for (int i = 1; i < 6; i++) { |
| S_Tingle | 11:953141c3f7dd | 52 | if (lcd.getPixel(x + i,y + 7) == 1) { |
| S_Tingle | 11:953141c3f7dd | 53 | return true; |
| S_Tingle | 11:953141c3f7dd | 54 | } |
| S_Tingle | 11:953141c3f7dd | 55 | } |
| S_Tingle | 11:953141c3f7dd | 56 | return false; |
| S_Tingle | 11:953141c3f7dd | 57 | } |
| S_Tingle | 11:953141c3f7dd | 58 | |
| S_Tingle | 11:953141c3f7dd | 59 | bool Enemy1::eastCollision(int x, int y, N5110 &lcd){ |
| S_Tingle | 11:953141c3f7dd | 60 | |
| S_Tingle | 13:c3b550fc2445 | 61 | for (int i = 1; i < 6; i++) { |
| S_Tingle | 13:c3b550fc2445 | 62 | if (lcd.getPixel(x + 7,y + i) == 1) { |
| S_Tingle | 11:953141c3f7dd | 63 | return true; |
| S_Tingle | 11:953141c3f7dd | 64 | } |
| S_Tingle | 11:953141c3f7dd | 65 | } |
| S_Tingle | 11:953141c3f7dd | 66 | return false; |
| S_Tingle | 11:953141c3f7dd | 67 | } |
| S_Tingle | 11:953141c3f7dd | 68 | |
| S_Tingle | 11:953141c3f7dd | 69 | bool Enemy1::westCollision(int x, int y, N5110 &lcd){ |
| S_Tingle | 11:953141c3f7dd | 70 | |
| S_Tingle | 13:c3b550fc2445 | 71 | for (int i = 1; i < 6; i++) { |
| S_Tingle | 13:c3b550fc2445 | 72 | if (lcd.getPixel(x - 1,y + i) == 1) { |
| S_Tingle | 11:953141c3f7dd | 73 | return true; |
| S_Tingle | 11:953141c3f7dd | 74 | } |
| S_Tingle | 11:953141c3f7dd | 75 | } |
| S_Tingle | 11:953141c3f7dd | 76 | return false; |
| S_Tingle | 16:37d98c281eb3 | 77 | } |
| S_Tingle | 16:37d98c281eb3 | 78 | |
| S_Tingle | 16:37d98c281eb3 | 79 | bool Enemy1::collidePlayer(int x, int y, Gamepad &pad) { |
| S_Tingle | 16:37d98c281eb3 | 80 | |
| S_Tingle | 16:37d98c281eb3 | 81 | for (int ix = 0; ix < 7; ix++) { |
| S_Tingle | 16:37d98c281eb3 | 82 | for (int iy = 0; iy < 7; iy++) { |
| S_Tingle | 16:37d98c281eb3 | 83 | if ( x + ix == x_enem + 3 && |
| S_Tingle | 16:37d98c281eb3 | 84 | y + iy == y_enem + 3 ) { |
| S_Tingle | 16:37d98c281eb3 | 85 | pad.tone(400,0.5); |
| S_Tingle | 16:37d98c281eb3 | 86 | return true; |
| S_Tingle | 16:37d98c281eb3 | 87 | |
| S_Tingle | 16:37d98c281eb3 | 88 | } |
| S_Tingle | 16:37d98c281eb3 | 89 | } |
| S_Tingle | 16:37d98c281eb3 | 90 | } |
| S_Tingle | 16:37d98c281eb3 | 91 | return false; |
| S_Tingle | 11:953141c3f7dd | 92 | } |