Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "enemy.h"
- std::vector<enemy*> enemy::guards;
- sf::Sprite* enemy::enemySprite;
- enemy::enemy(float x, float y) {
- this->coordX = x;
- this->coordY = y;
- this->speed = 60;
- this->direction = ( int(this->coordX) % 2) ? LEFT : RIGHT;
- this->xleft = this->coordX - this->range;
- this->xright = this->coordX + this->range;
- }
- sf::Sprite& enemy::getSprite() {
- return *enemySprite;
- }
- void enemy::move() {
- switch(this->direction) {
- case LEFT:
- dx = -1;
- break;
- case RIGHT:
- dx = 1;
- break;
- }
- }
- void enemy::update(float time) {
- if(this->coordX + dx*speed*time < this->xleft || this->coordX + dx*speed*time > this->xright) {
- this->direction = (this->direction == LEFT) ? RIGHT : LEFT;
- this->dx *= -1;
- }
- this->coordX += dx*speed*time;
- this->dx = 0;
- }
- bool enemy::loadFromFile(char filepath[32]) {
- FILE* file;
- int x, y;
- if(file = std::fopen(filepath, "r")) {
- while(!std::feof(file)) {
- std::fscanf(file, "%i %i", &x,&y);
- enemy *guard = new enemy(x, y);
- guards.push_back(guard);
- }
- return true;
- }
- else
- return false;
- }
- void enemy::pushSprite() {
- sf::Texture *enemyTexture = new sf::Texture;
- enemyTexture->loadFromFile("src/guard.png");
- enemySprite = new sf::Sprite;
- enemySprite->setTexture(*enemyTexture);
- }
Advertisement
Add Comment
Please, Sign In to add comment