R-Type  1.0.1.0
Rewrite of the R-Type game with networking ability
Loading...
Searching...
No Matches
Bullet.hpp
1/*
2** EPITECH PROJECT, 2023
3** Bullet.hpp
4** File description:
5** Bullet.hpp
6*/
7
8#ifndef URANUS_BULLET_HPP
9#define URANUS_BULLET_HPP
10
11#include "uranus/engine/Engine.hpp"
12
13class Bullet : public engine::Base {
14public:
15 explicit Bullet(const std::string &uniqueName, uranus::ecs::component::Position pos, std::shared_ptr<engine::Texture> &texture, std::uint32_t networkId = 0, bool owned = false);
16
17 virtual void move(size_t entity, float delta);
18
19 void colliding(const size_t &entity, const size_t &entityCollidingWith);
20
21 void loop(const size_t, float delta);
22
23 void handleKeyboard(size_t entity, const engine::Event event);
24
25 bool isCanMove() const;
26
27 void setCanMove(bool move);
28
29protected:
30 bool canMove;
31 bool networked;
32 std::uint32_t networkId;
33 bool sent;
34};
35
36#endif // URANUS_BULLET_HPP
Definition: Bullet.hpp:13
Definition: Base.hpp:15
Definition: Event.hpp:14
Definition: Components.hpp:31