25 #ifndef __I6ENGINE_MODULES_GOFACTORY_H__
26 #define __I6ENGINE_MODULES_GOFACTORY_H__
42 class ComponentFactory;
90 void loadLevel(
const std::string & file,
const std::string & flags,
const std::function<
void(uint16_t)> & callback);
99 std::map<std::string, api::objects::GOTemplate> _templateList;
Factory in order to create Component.
GOPtr createGO(const int64_t goid, const core::IPKey &owner, uint64_t uuid, const std::string &tpl, const api::objects::GOTemplate &templ, const bool sender)
creates a new GameObject of that type
GOFactory(ObjectManager *m, ComponentFactory *c)
used to easily create special GameObjects
#define ASSERT_THREAD_SAFETY_HEADER
A shared pointer counting references and adds objects being not referenced any more to an internal li...
internal representation of all GameObject templates
void registerGOTemplate(const std::string &file)
register a new Template After a template is registered you can easily create new objects of that type...
void loadLevel(const std::string &file, const std::string &flags, const std::function< void(uint16_t)> &callback)
loads a level out of the given file with the given flags
utils::sharedPtr< api::GameObject, api::GameObject > GOPtr
Factory in order to create GameObjects.