8#ifndef URANUS_COMPONENTS_HPP
9#define URANUS_COMPONENTS_HPP
12#include "uranus/engine/components/Clock.hpp"
13#include "uranus/engine/components/Event.hpp"
14#include "uranus/engine/components/Sprite.hpp"
15#include "uranus/engine/manager/Manager.hpp"
24 std::uint32_t uniqueId;
28 std::string uniqueName;
45 explicit Drawable(
size_t zIndex,
bool visible) : zIndex(zIndex), visible(visible) {};
49 std::shared_ptr<engine::Sprite> sprite;
50 explicit Sprite(
const std::shared_ptr<engine::Sprite> &sprite,
size_t zIndex = 0,
bool visible =
true) :
Drawable(zIndex, visible), sprite(sprite) {};
54 std::shared_ptr<sf::Shape> shape;
55 explicit Shape(
const std::shared_ptr<sf::Shape> &shape,
size_t zIndex = 0,
bool visible =
true) :
Drawable(zIndex, visible), shape(shape) {};
63 std::bitset<LAYER_MASK_SIZE> layer;
64 std::bitset<LAYER_MASK_SIZE> mask;
65 std::function<void(
const size_t,
const size_t)> callback;
69 std::function<void(
const size_t,
const engine::Event)> callback;
73 std::function<void(
const size_t,
const engine::Event)> callback;
77 std::function<void(
const size_t,
float delta)> update;
91 std::vector<component::FrameData> frames;
97 std::function<void(
const size_t entity,
const std::string &animationName)> callback;
98 std::vector<component::AnimationData> animations;
107void deletePosition(
size_t entity);
108void deleteVelocity(
size_t entity);
109void deleteDrawable(
size_t entity);
110void deleteInputKeyboard(
size_t entity);
111void deleteInputMouse(
size_t entity);
112void deleteSpriteComponent(
size_t entity);
113void deleteCollisionable(
size_t entity);
114void deleteLoopComponent(
size_t entity);
115void deleteAnimationComponent(
size_t entity);
116void deleteNameComponent(
size_t entity);
117void deleteShapeComponent(
size_t entity);
118void deleteNetworkIdComponent(
size_t entity);
119void deleteDeadComponent(
size_t entity);
This file is used to include some core files of the engine.
Namespace containing all the base components.
Definition: Components.hpp:21
Definition: Components.hpp:94
Definition: Components.hpp:85
Definition: Components.hpp:58
Definition: Components.hpp:101
Definition: Components.hpp:80
Definition: Components.hpp:76
Definition: Components.hpp:27
Definition: Components.hpp:23
Definition: Components.hpp:31
Definition: Components.hpp:36
Definition: Components.hpp:41
Definition: Components.hpp:53
Definition: Components.hpp:48