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@21:7d4827af00d6, 2019-05-08 (annotated)
- Committer:
- S_Tingle
- Date:
- Wed May 08 23:17:35 2019 +0000
- Revision:
- 21:7d4827af00d6
- Parent:
- 18:ba4159ab4da7
- Child:
- 22:8e38efeae0c9
added all coins
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 | 21:7d4827af00d6 | 4 | |
S_Tingle | 11:953141c3f7dd | 5 | } |
S_Tingle | 11:953141c3f7dd | 6 | |
S_Tingle | 11:953141c3f7dd | 7 | Enemy1::~Enemy1(){ |
S_Tingle | 11:953141c3f7dd | 8 | |
S_Tingle | 11:953141c3f7dd | 9 | } |
S_Tingle | 11:953141c3f7dd | 10 | |
S_Tingle | 11:953141c3f7dd | 11 | void Enemy1::init(int x,int y){ |
S_Tingle | 11:953141c3f7dd | 12 | x_enem = x; |
S_Tingle | 11:953141c3f7dd | 13 | y_enem = y; |
S_Tingle | 11:953141c3f7dd | 14 | } |
S_Tingle | 11:953141c3f7dd | 15 | |
S_Tingle | 14:d0650d0de063 | 16 | int Enemy1::get_x_enem(){ |
S_Tingle | 11:953141c3f7dd | 17 | return x_enem; |
S_Tingle | 11:953141c3f7dd | 18 | } |
S_Tingle | 11:953141c3f7dd | 19 | |
S_Tingle | 14:d0650d0de063 | 20 | int Enemy1::get_y_enem(){ |
S_Tingle | 11:953141c3f7dd | 21 | return y_enem; |
S_Tingle | 11:953141c3f7dd | 22 | } |
S_Tingle | 11:953141c3f7dd | 23 | |
S_Tingle | 21:7d4827af00d6 | 24 | void Enemy1::drawSpriteA(N5110 &lcd){ |
S_Tingle | 12:200a1266ceee | 25 | lcd.drawSprite(x_enem,y_enem,7,7,(int *)enemy_A); |
S_Tingle | 11:953141c3f7dd | 26 | } |
S_Tingle | 11:953141c3f7dd | 27 | |
S_Tingle | 21:7d4827af00d6 | 28 | void Enemy1::drawSprite1(N5110 &lcd){ |
S_Tingle | 21:7d4827af00d6 | 29 | lcd.drawSprite(x_enem,y_enem,7,7,(int *)enemy_1); |
S_Tingle | 21:7d4827af00d6 | 30 | } |
S_Tingle | 21:7d4827af00d6 | 31 | |
S_Tingle | 21:7d4827af00d6 | 32 | void Enemy1::movementA(N5110 &lcd){ |
S_Tingle | 11:953141c3f7dd | 33 | accel = 1; |
S_Tingle | 18:ba4159ab4da7 | 34 | _incrementer_enem1++; |
S_Tingle | 21:7d4827af00d6 | 35 | if ( _incrementer_enem1 == 54 ) { _incrementer_enem1 = 0; } |
S_Tingle | 21:7d4827af00d6 | 36 | if ( _incrementer_enem1 >= 0 && _incrementer_enem1 <= 21) { x_enem++; } |
S_Tingle | 21:7d4827af00d6 | 37 | else if ( _incrementer_enem1 >= 22 && _incrementer_enem1 <= 26) { y_enem++; } |
S_Tingle | 21:7d4827af00d6 | 38 | else if ( _incrementer_enem1 >= 27 && _incrementer_enem1 <= 48) { x_enem--; } |
S_Tingle | 21:7d4827af00d6 | 39 | else if ( _incrementer_enem1 >= 49 && _incrementer_enem1 <= 53) { y_enem--; } |
S_Tingle | 21:7d4827af00d6 | 40 | } |
S_Tingle | 21:7d4827af00d6 | 41 | |
S_Tingle | 21:7d4827af00d6 | 42 | void Enemy1::movement1(N5110 &lcd){ |
S_Tingle | 21:7d4827af00d6 | 43 | accel = 1; |
S_Tingle | 21:7d4827af00d6 | 44 | _incrementer_enem1++; |
S_Tingle | 21:7d4827af00d6 | 45 | if ( _incrementer_enem1 == 124 ) { _incrementer_enem1 = 0; } |
S_Tingle | 21:7d4827af00d6 | 46 | if ( _incrementer_enem1 >= 0 && _incrementer_enem1 <= 22) { y_enem--; } |
S_Tingle | 21:7d4827af00d6 | 47 | else if ( _incrementer_enem1 >= 23 && _incrementer_enem1 <= 61) { x_enem--; } |
S_Tingle | 21:7d4827af00d6 | 48 | else if ( _incrementer_enem1 >= 62 && _incrementer_enem1 <= 84) { y_enem++; } |
S_Tingle | 21:7d4827af00d6 | 49 | else if ( _incrementer_enem1 >= 84 && _incrementer_enem1 <= 123) { x_enem++; } |
S_Tingle | 11:953141c3f7dd | 50 | } |
S_Tingle | 11:953141c3f7dd | 51 | |
S_Tingle | 11:953141c3f7dd | 52 | bool Enemy1::northCollision(int x, int y, N5110 &lcd){ |
S_Tingle | 11:953141c3f7dd | 53 | |
S_Tingle | 13:c3b550fc2445 | 54 | for (int i = 1; i < 6; i++) { |
S_Tingle | 13:c3b550fc2445 | 55 | if (lcd.getPixel(x + i,y - 1) == 1) { |
S_Tingle | 11:953141c3f7dd | 56 | return true; |
S_Tingle | 11:953141c3f7dd | 57 | } |
S_Tingle | 11:953141c3f7dd | 58 | } |
S_Tingle | 11:953141c3f7dd | 59 | return false; |
S_Tingle | 11:953141c3f7dd | 60 | } |
S_Tingle | 11:953141c3f7dd | 61 | |
S_Tingle | 11:953141c3f7dd | 62 | bool Enemy1::southCollision(int x, int y, N5110 &lcd){ |
S_Tingle | 11:953141c3f7dd | 63 | |
S_Tingle | 13:c3b550fc2445 | 64 | for (int i = 1; i < 6; i++) { |
S_Tingle | 11:953141c3f7dd | 65 | if (lcd.getPixel(x + i,y + 7) == 1) { |
S_Tingle | 11:953141c3f7dd | 66 | return true; |
S_Tingle | 11:953141c3f7dd | 67 | } |
S_Tingle | 11:953141c3f7dd | 68 | } |
S_Tingle | 11:953141c3f7dd | 69 | return false; |
S_Tingle | 11:953141c3f7dd | 70 | } |
S_Tingle | 11:953141c3f7dd | 71 | |
S_Tingle | 11:953141c3f7dd | 72 | bool Enemy1::eastCollision(int x, int y, N5110 &lcd){ |
S_Tingle | 11:953141c3f7dd | 73 | |
S_Tingle | 13:c3b550fc2445 | 74 | for (int i = 1; i < 6; i++) { |
S_Tingle | 13:c3b550fc2445 | 75 | if (lcd.getPixel(x + 7,y + i) == 1) { |
S_Tingle | 11:953141c3f7dd | 76 | return true; |
S_Tingle | 11:953141c3f7dd | 77 | } |
S_Tingle | 11:953141c3f7dd | 78 | } |
S_Tingle | 11:953141c3f7dd | 79 | return false; |
S_Tingle | 11:953141c3f7dd | 80 | } |
S_Tingle | 11:953141c3f7dd | 81 | |
S_Tingle | 11:953141c3f7dd | 82 | bool Enemy1::westCollision(int x, int y, N5110 &lcd){ |
S_Tingle | 11:953141c3f7dd | 83 | |
S_Tingle | 13:c3b550fc2445 | 84 | for (int i = 1; i < 6; i++) { |
S_Tingle | 13:c3b550fc2445 | 85 | if (lcd.getPixel(x - 1,y + i) == 1) { |
S_Tingle | 11:953141c3f7dd | 86 | return true; |
S_Tingle | 11:953141c3f7dd | 87 | } |
S_Tingle | 11:953141c3f7dd | 88 | } |
S_Tingle | 11:953141c3f7dd | 89 | return false; |
S_Tingle | 16:37d98c281eb3 | 90 | } |
S_Tingle | 16:37d98c281eb3 | 91 | |
S_Tingle | 16:37d98c281eb3 | 92 | bool Enemy1::collidePlayer(int x, int y, Gamepad &pad) { |
S_Tingle | 16:37d98c281eb3 | 93 | |
S_Tingle | 16:37d98c281eb3 | 94 | for (int ix = 0; ix < 7; ix++) { |
S_Tingle | 16:37d98c281eb3 | 95 | for (int iy = 0; iy < 7; iy++) { |
S_Tingle | 21:7d4827af00d6 | 96 | if ( x + ix == x_enem + 3 && y + iy == y_enem + 3 ) { |
S_Tingle | 16:37d98c281eb3 | 97 | pad.tone(400,0.5); |
S_Tingle | 16:37d98c281eb3 | 98 | return true; |
S_Tingle | 16:37d98c281eb3 | 99 | } |
S_Tingle | 16:37d98c281eb3 | 100 | } |
S_Tingle | 16:37d98c281eb3 | 101 | } |
S_Tingle | 16:37d98c281eb3 | 102 | return false; |
S_Tingle | 11:953141c3f7dd | 103 | } |