zombo-shooter/src/Zombo.cpp

24 lines
682 B
C++

#include "Zombo.hpp"
Zombo::Zombo(GameRenderer *renderer, const double x, const double y) : renderer(renderer), x(x), y(y)
{
sprite = renderer->load_sprite("./assets/zombo.png", 40, 40);
}
void Zombo::update(const double player_x, const double player_y)
{
double angle = std::atan2(player_y - y, player_x - x);
x += std::cos(angle) * speed;
y += std::sin(angle) * speed;
}
void Zombo::draw(const double player_x, const double player_y) const
{
renderer->draw_sprite(
*sprite,
(int)(x - sprite->width / 2.0 + renderer->screen_width / 2.0 - player_x),
(int)(y - sprite->height / 2.0 + renderer->screen_height / 2.0 - player_y)
);
}