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@12:200a1266ceee, 2019-05-02 (annotated)
- Committer:
- S_Tingle
- Date:
- Thu May 02 19:59:05 2019 +0000
- Revision:
- 12:200a1266ceee
- Parent:
- 11:953141c3f7dd
- Child:
- 13:c3b550fc2445
Enemy2 added
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 | 11:953141c3f7dd | 17 | int Enemy1::get_x_enem() |
S_Tingle | 11:953141c3f7dd | 18 | { |
S_Tingle | 11:953141c3f7dd | 19 | return x_enem; |
S_Tingle | 11:953141c3f7dd | 20 | } |
S_Tingle | 11:953141c3f7dd | 21 | |
S_Tingle | 11:953141c3f7dd | 22 | int Enemy1::get_y_enem() |
S_Tingle | 11:953141c3f7dd | 23 | { |
S_Tingle | 11:953141c3f7dd | 24 | return y_enem; |
S_Tingle | 11:953141c3f7dd | 25 | } |
S_Tingle | 11:953141c3f7dd | 26 | |
S_Tingle | 11:953141c3f7dd | 27 | void Enemy1::drawSprite(N5110 &lcd){ |
S_Tingle | 12:200a1266ceee | 28 | lcd.drawSprite(x_enem,y_enem,7,7,(int *)enemy_A); |
S_Tingle | 11:953141c3f7dd | 29 | } |
S_Tingle | 11:953141c3f7dd | 30 | |
S_Tingle | 11:953141c3f7dd | 31 | void Enemy1::movement(N5110 &lcd){ |
S_Tingle | 11:953141c3f7dd | 32 | accel = 1; |
S_Tingle | 11:953141c3f7dd | 33 | |
S_Tingle | 11:953141c3f7dd | 34 | if (southCollision(x_enem, y_enem, lcd) == true && westCollision(x_enem, y_enem, lcd) == true){ |
S_Tingle | 11:953141c3f7dd | 35 | y_enem -= accel; |
S_Tingle | 11:953141c3f7dd | 36 | } else if (southCollision(x_enem, y_enem, lcd) == true && eastCollision(x_enem, y_enem, lcd) == true){ |
S_Tingle | 11:953141c3f7dd | 37 | x_enem -= accel; |
S_Tingle | 11:953141c3f7dd | 38 | } else if (northCollision(x_enem, y_enem, lcd) == true && westCollision(x_enem, y_enem, lcd) == true){ |
S_Tingle | 11:953141c3f7dd | 39 | x_enem += accel; |
S_Tingle | 11:953141c3f7dd | 40 | } else if (northCollision(x_enem, y_enem, lcd) == true && eastCollision(x_enem, y_enem, lcd) == true){ |
S_Tingle | 11:953141c3f7dd | 41 | y_enem += accel; |
S_Tingle | 11:953141c3f7dd | 42 | } |
S_Tingle | 11:953141c3f7dd | 43 | } |
S_Tingle | 11:953141c3f7dd | 44 | |
S_Tingle | 11:953141c3f7dd | 45 | |
S_Tingle | 11:953141c3f7dd | 46 | bool Enemy1::northCollision(int x, int y, N5110 &lcd){ |
S_Tingle | 11:953141c3f7dd | 47 | |
S_Tingle | 11:953141c3f7dd | 48 | for (int i = 0; i < 7; i++) { |
S_Tingle | 11:953141c3f7dd | 49 | if (lcd.getPixel(x + i,y + 1) == 1) { |
S_Tingle | 11:953141c3f7dd | 50 | return true; |
S_Tingle | 11:953141c3f7dd | 51 | } |
S_Tingle | 11:953141c3f7dd | 52 | } |
S_Tingle | 11:953141c3f7dd | 53 | return false; |
S_Tingle | 11:953141c3f7dd | 54 | } |
S_Tingle | 11:953141c3f7dd | 55 | |
S_Tingle | 11:953141c3f7dd | 56 | bool Enemy1::southCollision(int x, int y, N5110 &lcd){ |
S_Tingle | 11:953141c3f7dd | 57 | |
S_Tingle | 11:953141c3f7dd | 58 | for (int i = 0; i < 7; i++) { |
S_Tingle | 11:953141c3f7dd | 59 | if (lcd.getPixel(x + i,y + 7) == 1) { |
S_Tingle | 11:953141c3f7dd | 60 | return true; |
S_Tingle | 11:953141c3f7dd | 61 | } |
S_Tingle | 11:953141c3f7dd | 62 | } |
S_Tingle | 11:953141c3f7dd | 63 | return false; |
S_Tingle | 11:953141c3f7dd | 64 | } |
S_Tingle | 11:953141c3f7dd | 65 | |
S_Tingle | 11:953141c3f7dd | 66 | bool Enemy1::eastCollision(int x, int y, N5110 &lcd){ |
S_Tingle | 11:953141c3f7dd | 67 | |
S_Tingle | 11:953141c3f7dd | 68 | for (int i = 0; i < 7; i++) { |
S_Tingle | 11:953141c3f7dd | 69 | if (lcd.getPixel(x + 6,y + i) == 1) { |
S_Tingle | 11:953141c3f7dd | 70 | return true; |
S_Tingle | 11:953141c3f7dd | 71 | } |
S_Tingle | 11:953141c3f7dd | 72 | } |
S_Tingle | 11:953141c3f7dd | 73 | return false; |
S_Tingle | 11:953141c3f7dd | 74 | } |
S_Tingle | 11:953141c3f7dd | 75 | |
S_Tingle | 11:953141c3f7dd | 76 | bool Enemy1::westCollision(int x, int y, N5110 &lcd){ |
S_Tingle | 11:953141c3f7dd | 77 | |
S_Tingle | 11:953141c3f7dd | 78 | for (int i = 0; i < 7; i++) { |
S_Tingle | 11:953141c3f7dd | 79 | if (lcd.getPixel(x + 1,y + i) == 1) { |
S_Tingle | 11:953141c3f7dd | 80 | return true; |
S_Tingle | 11:953141c3f7dd | 81 | } |
S_Tingle | 11:953141c3f7dd | 82 | } |
S_Tingle | 11:953141c3f7dd | 83 | return false; |
S_Tingle | 11:953141c3f7dd | 84 | } |