ELEC2645 (2019/20)
/
ELEC2645_Project_el18jb
test 1 doc
Ennemy/Enemy.cpp
- Committer:
- joebarhouch
- Date:
- 2020-05-26
- Revision:
- 8:d19b30a6cd69
- Child:
- 9:9830d3a78572
File content as of revision 8:d19b30a6cd69:
#include "Enemy.h" int s_enemy[] = { 1,1,1,1,1,1,1, 1,1,1,0,1,0,1, 1,1,1,0,1,0,1, 1,1,1,1,1,1,1, 1,1,1,1,1,1,1, 0,1,1,0,1,1,0, }; Enemy::Enemy(int spawnX, int spawnY) { _enY = spawnY; _enX = spawnX; if( spawnX > WIDTH/2) { eDir = 1; //right } else { eDir = 0; //left } } Enemy::~Enemy() {} void Enemy::update(int eYpos, bool efall) { // go left or right depending on direction switch (eDir) { case 1: _enX -= 2; //switch direction when it hits a wall if(_enX + 8 > WIDTH || _enX < 0) { eDir = 0; break; } break; case 0: _enX +=2; //switch direction when it hits a wall if(_enX + 8 > WIDTH || _enX < 0) { eDir = 1; break; } break; } //fall down switch (efall) { case 1: _enY +=3; break; case 2: _enY = eYpos; break; } } void Enemy::draw(N5110 &lcd) { Bitmap bit_en(s_enemy, 6, 7 ); bit_en.render(lcd, _enX, _enY); } bool Enemy::fell() { if( _enY + 6 > HEIGHT) { _fell = true; } else { _fell = false; } return _fell; } Vector2D Enemy::get_pos() { Vector2D pos = {_enX, _enY}; return pos; }