aboutsummaryrefslogtreecommitdiff
path: root/mwe/ecs-memory-efficient/inc/GameObjectMax.h
blob: 62cd3e6a9e34ea40f75049ac120aeaaaf385fa28 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#pragma once

#include <cstdint>
#include <string>

class GameObject {
public:
	GameObject(std::uint32_t id, std::string name, std::string tag, int layer);

	template<typename... Args>
    void addSpriteComponent(Args&&... args);
	template<typename... Args>
    void addRigidbodyComponent(Args&&... args);
	template<typename... Args>
    void addColiderComponent(Args&&... args);

	std::uint32_t mId;
	std::string mName;
	std::string mTag;
	bool mActive;
	int mLayer;
};

#include "GameObjectMax.hpp"