Olympe Engine 2.0
2D Game Engine with ECS Architecture
Loading...
Searching...
No Matches
Sector.h
Go to the documentation of this file.
1/* Sector.h
2 Represents a sector (area) inside a level. Owns a CollisionMap and a GraphicMap.
3*/
4#pragma once
5
6#include "CollisionMap.h"
7#include "GraphicMap.h"
8#include <memory>
9#include <string>
10#include <iostream>
11#include "system/system_utils.h"
12
13class Sector
14{
15public:
16 std::string name;
17 std::unique_ptr<CollisionMap> collision;
18 std::unique_ptr<GraphicMap> graphics;
19
20 Sector(const std::string& n = "Unnamed") : name(n)
21 {
22 SYSTEM_LOG << "Sector '" << name << "' created\n";
23 collision = std::make_unique<CollisionMap>();
24 graphics = std::make_unique<GraphicMap>();
25 }
27 {
28 SYSTEM_LOG << "Sector '" << name << "' destroyed\n";
29 }
30};
ComponentTypeID GetComponentTypeID_Static()
Definition ECS_Entity.h:56
std::unique_ptr< GraphicMap > graphics
Definition Sector.h:18
std::string name
Definition Sector.h:16
~Sector()
Definition Sector.h:26
std::unique_ptr< CollisionMap > collision
Definition Sector.h:17
Sector(const std::string &n="Unnamed")
Definition Sector.h:20
#define SYSTEM_LOG