Uranus  1.0.1.0
Uranus is a GameEngine written in C++
Loading...
Searching...
No Matches
Systems.hpp
1//
2// Created by nicol on 23/01/2023.
3//
4
5#ifndef URANUS_SYSTEMS_HPP
6#define URANUS_SYSTEMS_HPP
7
8#include "Event.hpp"
9#include "Manager.hpp"
10#include "uranus/ecs/Components.hpp"
11#include "uranus/ecs/View.hpp"
12
13namespace engine::system {
14
15 void position();
16
17 void draw();
18
19 void input(engine::Event event);
20
21 void collision();
22
23 void loop();
24
25 void animation();
26
27 // TODO: move tha non "system" functions -----------------------------------
28 void addNewAnimation(size_t entity, const std::string &name, bool loop, float length);
29
30 void insertAnimationFrame(size_t entity, const std::string &name, float frameTime, int frame);
31
32 void playAnimation(size_t entity, const std::string &name);
33
34 void stopAnimation(size_t entity);
35
36 bool isColliding(const sf::FloatRect &obj1, const sf::FloatRect &obj2);
37
38 void setLayer(size_t entity, const std::array<bool, LAYER_SIZE> &layer);
39
40 void setMask(size_t entity, const std::array<bool, MASK_SIZE> &mask);
41
42 void gameLoop();
43
44 void gameInit();
45 //--------------------------------------------------------------------------
46} // namespace engine::system
47
48#endif // URANUS_SYSTEMS_HPP
Definition: Event.hpp:14