#include "Arrow.hpp" Arrow::Arrow(GameRenderer *renderer, const double x, const double y, const double angle) : renderer(renderer), x(x), y(y), angle(angle) { sprite = renderer->load_sprite("./assets/arrow.png", 22, 8); } void Arrow::draw(const double player_x, const double player_y) const { renderer->draw_sprite_rotated( sprite, (int)(x - sprite.width / 2 + renderer->screen_width / 2 - player_x), (int)(y - sprite.height / 2 + renderer->screen_height / 2 - player_y), angle * 180 / M_PI ); } void Arrow::update() { x += std::cos(angle) * speed; y += std::sin(angle) * speed; }