R-Type  1.0.1.0
Rewrite of the R-Type game with networking ability
Loading...
Searching...
No Matches
Scene.hpp
1/*
2** EPITECH PROJECT, 2023
3** Scene.hpp
4** File description:
5** Scene.hpp
6*/
7
8#ifndef URANUS_SCENE_HPP
9#define URANUS_SCENE_HPP
10
11#include "uranus/engine/Dependencies.hpp"
12#include "Base.hpp"
13
14namespace engine {
15
16 class Scene {
17 public:
18 explicit Scene(const std::string &name);
19
20 virtual ~Scene() = default;
21
22 virtual void init() = 0;
23
24 [[nodiscard]]
25 const std::string &getName() const;
26
27 void clear();
28
29 void addPrefab(const std::shared_ptr<engine::Base> &prefab);
30
31 private:
32 std::string _name;
33 std::vector<std::shared_ptr<engine::Base>> _entities;
34 };
35} // namespace engine
36
37#endif // URANUS_SCENE_HPP
Definition: Scene.hpp:16