aboutsummaryrefslogtreecommitdiff
path: root/src/crepe/api/GameObject.h
blob: fd513ec37aa9eb5d2b9f01c1198d17e2f0d796bc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#pragma once

#include <cstdint>
#include <string>

#include "api/Point.h"

namespace crepe::api {

class GameObject {
public:
	GameObject(uint32_t id, std::string name, std::string tag, Point position, double rotation, double scale);
	void set_parent(GameObject & parent);

	template <typename T, typename... Args>
	T & add_component(Args &&... args);

	uint32_t id;
};

} // namespace crepe::api

#include "GameObject.hpp"