Ejemplo n.º 1
0
void Enemy::moveEnemy(sf::Vector2f playerPosition){
	sf::Vector2f myPosition(getSpritePosition());

	if(playerIsInRadious(myPosition, playerPosition)){
		if(this->movement.x == 0.f && playerPosition.y < myPosition.y - 1){
			jump();
		}

		if(playerPosition.x < myPosition.x - 1){
			facingRight = false;
			movingLeft = true;
			movingRight = false;
			if(this->movement.x > -(speed)){
				this->movement.x -= 0.2;
			} else {
				this->movement.x = -(speed);
			}
		} else if(playerPosition.x > myPosition.x + 1){
			facingRight = true;
			movingLeft = false;
			movingRight = true;

			if(this->movement.x < speed){
				this->movement.x += 0.2;
			} else{
				this->movement.x = speed;
			}
		} else {
			stopEnemy();
		}
	} else {
		stopEnemy();
	}
}
Ejemplo n.º 2
0
 void LyingWeapon::render(Renderer &renderer) const {
     Vector pos = getSpritePosition();
     Material material = Material::makeMaskedTexture(weapon.getBonusTexture());
     renderer.quadXY(pos, Vector(1.0f, 1.0f), Vector(0.1f, 0.9f, Float32(weapon.getBonusTextureIndex())), Vector(0.8f, -0.8f), material);
 }
Ejemplo n.º 3
0
 void Bonus::render(Renderer &renderer, Texture texture) const {
     Vector pos = getSpritePosition();
     Material material = Material::makeMaskedTexture(texture);
     renderer.quadXY(pos, Vector(1.0f, 1.0f), Vector(0.1f, 0.9f, Float32(textureIndex)), Vector(0.8f, -0.8f), material);
 }