ELEC2645 (2018/19) / Mbed 2 deprecated el17set_

Dependencies:   mbed

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?

UserRevisionLine numberNew 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 }