#include <hxcpp.h>

#ifndef INCLUDED_IMap
#include <IMap.h>
#endif
#ifndef INCLUDED_Luxe
#include <Luxe.h>
#endif
#ifndef INCLUDED_haxe_ds_StringMap
#include <haxe/ds/StringMap.h>
#endif
#ifndef INCLUDED_luxe_Component
#include <luxe/Component.h>
#endif
#ifndef INCLUDED_luxe_Emitter
#include <luxe/Emitter.h>
#endif
#ifndef INCLUDED_luxe_Entity
#include <luxe/Entity.h>
#endif
#ifndef INCLUDED_luxe_Events
#include <luxe/Events.h>
#endif
#ifndef INCLUDED_luxe_ID
#include <luxe/ID.h>
#endif
#ifndef INCLUDED_luxe_Objects
#include <luxe/Objects.h>
#endif
#ifndef INCLUDED_luxe_Scene
#include <luxe/Scene.h>
#endif
#ifndef INCLUDED_luxe_components_Components
#include <luxe/components/Components.h>
#endif
#ifndef INCLUDED_phoenix_Quaternion
#include <phoenix/Quaternion.h>
#endif
#ifndef INCLUDED_phoenix_Transform
#include <phoenix/Transform.h>
#endif
#ifndef INCLUDED_phoenix_Vector
#include <phoenix/Vector.h>
#endif
#ifndef INCLUDED_snow_utils_Timer
#include <snow/utils/Timer.h>
#endif
namespace luxe{

Void Entity_obj::__construct(Dynamic _options)
{
HX_STACK_FRAME("luxe.Entity","new",0x3aab5f6d,"luxe.Entity.new","luxe/Entity.hx",22,0x55caa482)

HX_STACK_ARG(_options,"_options")
{
	HX_STACK_LINE(45)
	this->active = true;
	HX_STACK_LINE(39)
	this->fixed_rate = (int)0;
	HX_STACK_LINE(36)
	this->started = false;
	HX_STACK_LINE(34)
	this->inited = false;
	HX_STACK_LINE(32)
	this->destroyed = false;
	HX_STACK_LINE(119)
	super::__construct(HX_CSTRING("entity"),null());
	HX_STACK_LINE(122)
	hx::AddEq(this->name,(HX_CSTRING(".") + this->id));
	HX_STACK_LINE(126)
	this->options = _options;
	HX_STACK_LINE(128)
	this->_components = ::luxe::components::Components_obj::__new(hx::ObjectPtr<OBJ_>(this));
	HX_STACK_LINE(129)
	this->children = Array_obj< ::Dynamic >::__new();
	HX_STACK_LINE(130)
	this->events = ::luxe::Events_obj::__new();
	HX_STACK_LINE(131)
	this->transform = ::phoenix::Transform_obj::__new();
	HX_STACK_LINE(134)
	this->transform->listen_pos(this->set_pos_from_transform_dyn());
	HX_STACK_LINE(135)
	this->transform->listen_scale(this->set_scale_from_transform_dyn());
	HX_STACK_LINE(136)
	this->transform->listen_origin(this->set_origin_from_transform_dyn());
	HX_STACK_LINE(137)
	this->transform->listen_parent(this->set_parent_from_transform_dyn());
	HX_STACK_LINE(138)
	this->transform->listen_rotation(this->set_rotation_from_transform_dyn());
	HX_STACK_LINE(140)
	if (((this->options != null()))){
		HX_STACK_LINE(143)
		if (((this->options->__Field(HX_CSTRING("name"),true) != null()))){
			HX_STACK_LINE(144)
			this->name = this->options->__Field(HX_CSTRING("name"),true);
		}
		HX_STACK_LINE(148)
		if (((this->options->__Field(HX_CSTRING("pos"),true) != null()))){
			HX_STACK_LINE(149)
			this->set_pos(this->options->__Field(HX_CSTRING("pos"),true)->__Field(HX_CSTRING("clone"),true)());
		}
		HX_STACK_LINE(152)
		if (((this->options->__Field(HX_CSTRING("scale"),true) != null()))){
			HX_STACK_LINE(153)
			this->set_scale(this->options->__Field(HX_CSTRING("scale"),true)->__Field(HX_CSTRING("clone"),true)());
		}
		HX_STACK_LINE(160)
		bool _should_add = true;		HX_STACK_VAR(_should_add,"_should_add");
		HX_STACK_LINE(162)
		if (((this->options->__Field(HX_CSTRING("no_scene"),true) != null()))){
			HX_STACK_LINE(163)
			if (((this->options->__Field(HX_CSTRING("no_scene"),true) == true))){
				HX_STACK_LINE(164)
				_should_add = false;
				HX_STACK_LINE(171)
				Dynamic();
			}
		}
		HX_STACK_LINE(169)
		if (((this->options->__Field(HX_CSTRING("parent"),true) != null()))){
			HX_STACK_LINE(171)
			_should_add = false;
			HX_STACK_LINE(172)
			this->set_parent(this->options->__Field(HX_CSTRING("parent"),true));
			HX_STACK_LINE(171)
			Dynamic();
		}
		HX_STACK_LINE(177)
		if ((_should_add)){
			HX_STACK_LINE(179)
			if (((this->options->__Field(HX_CSTRING("scene"),true) != null()))){
				HX_STACK_LINE(180)
				this->set_scene(this->options->__Field(HX_CSTRING("scene"),true));
				HX_STACK_LINE(171)
				Dynamic();
			}
			else{
				HX_STACK_LINE(183)
				this->set_scene(::Luxe_obj::scene);
				HX_STACK_LINE(171)
				Dynamic();
			}
		}
	}
	else{
		HX_STACK_LINE(191)
		this->set_scene(::Luxe_obj::scene);
		HX_STACK_LINE(171)
		Dynamic();
	}
	HX_STACK_LINE(199)
	if (((this->get_scene() != null()))){
		HX_STACK_LINE(203)
		this->get_scene()->add(hx::ObjectPtr<OBJ_>(this));
	}
	else{
		HX_STACK_LINE(171)
		Dynamic();
	}
	HX_STACK_LINE(171)
	Dynamic();
}
;
	return null();
}

//Entity_obj::~Entity_obj() { }

Dynamic Entity_obj::__CreateEmpty() { return  new Entity_obj; }
hx::ObjectPtr< Entity_obj > Entity_obj::__new(Dynamic _options)
{  hx::ObjectPtr< Entity_obj > result = new Entity_obj();
	result->__construct(_options);
	return result;}

Dynamic Entity_obj::__Create(hx::DynamicArray inArgs)
{  hx::ObjectPtr< Entity_obj > result = new Entity_obj();
	result->__construct(inArgs[0]);
	return result;}

Void Entity_obj::init( ){
{
		HX_STACK_FRAME("luxe.Entity","init",0x1800d763,"luxe.Entity.init","luxe/Entity.hx",67,0x55caa482)
		HX_STACK_THIS(this)
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC0(Entity_obj,init,(void))

Void Entity_obj::update( Float dt){
{
		HX_STACK_FRAME("luxe.Entity","update",0xab291d1c,"luxe.Entity.update","luxe/Entity.hx",69,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(dt,"dt")
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,update,(void))

Void Entity_obj::onfixedupdate( Float rate){
{
		HX_STACK_FRAME("luxe.Entity","onfixedupdate",0xe3a5550b,"luxe.Entity.onfixedupdate","luxe/Entity.hx",71,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(rate,"rate")
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,onfixedupdate,(void))

Void Entity_obj::onreset( ){
{
		HX_STACK_FRAME("luxe.Entity","onreset",0x64d911dd,"luxe.Entity.onreset","luxe/Entity.hx",74,0x55caa482)
		HX_STACK_THIS(this)
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC0(Entity_obj,onreset,(void))

Void Entity_obj::ondestroy( ){
{
		HX_STACK_FRAME("luxe.Entity","ondestroy",0xde639488,"luxe.Entity.ondestroy","luxe/Entity.hx",76,0x55caa482)
		HX_STACK_THIS(this)
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC0(Entity_obj,ondestroy,(void))

Void Entity_obj::onkeyup( Dynamic event){
{
		HX_STACK_FRAME("luxe.Entity","onkeyup",0x5d0f9dc8,"luxe.Entity.onkeyup","luxe/Entity.hx",79,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(event,"event")
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,onkeyup,(void))

Void Entity_obj::onkeydown( Dynamic event){
{
		HX_STACK_FRAME("luxe.Entity","onkeydown",0x6b4ba50f,"luxe.Entity.onkeydown","luxe/Entity.hx",81,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(event,"event")
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,onkeydown,(void))

Void Entity_obj::ontextinput( Dynamic event){
{
		HX_STACK_FRAME("luxe.Entity","ontextinput",0xbd8ecb4b,"luxe.Entity.ontextinput","luxe/Entity.hx",83,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(event,"event")
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,ontextinput,(void))

Void Entity_obj::oninputdown( ::String name,Dynamic event){
{
		HX_STACK_FRAME("luxe.Entity","oninputdown",0x1870707a,"luxe.Entity.oninputdown","luxe/Entity.hx",86,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(name,"name")
		HX_STACK_ARG(event,"event")
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC2(Entity_obj,oninputdown,(void))

Void Entity_obj::oninputup( ::String name,Dynamic event){
{
		HX_STACK_FRAME("luxe.Entity","oninputup",0x8dfc2873,"luxe.Entity.oninputup","luxe/Entity.hx",88,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(name,"name")
		HX_STACK_ARG(event,"event")
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC2(Entity_obj,oninputup,(void))

Void Entity_obj::onmousedown( Dynamic event){
{
		HX_STACK_FRAME("luxe.Entity","onmousedown",0xfd9a6c15,"luxe.Entity.onmousedown","luxe/Entity.hx",91,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(event,"event")
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,onmousedown,(void))

Void Entity_obj::onmouseup( Dynamic event){
{
		HX_STACK_FRAME("luxe.Entity","onmouseup",0x7a50774e,"luxe.Entity.onmouseup","luxe/Entity.hx",93,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(event,"event")
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,onmouseup,(void))

Void Entity_obj::onmousemove( Dynamic event){
{
		HX_STACK_FRAME("luxe.Entity","onmousemove",0x038d56c4,"luxe.Entity.onmousemove","luxe/Entity.hx",95,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(event,"event")
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,onmousemove,(void))

Void Entity_obj::onmousewheel( Dynamic event){
{
		HX_STACK_FRAME("luxe.Entity","onmousewheel",0xd572fd88,"luxe.Entity.onmousewheel","luxe/Entity.hx",97,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(event,"event")
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,onmousewheel,(void))

Void Entity_obj::ontouchdown( Dynamic event){
{
		HX_STACK_FRAME("luxe.Entity","ontouchdown",0x16b242af,"luxe.Entity.ontouchdown","luxe/Entity.hx",100,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(event,"event")
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,ontouchdown,(void))

Void Entity_obj::ontouchup( Dynamic event){
{
		HX_STACK_FRAME("luxe.Entity","ontouchup",0x92d59368,"luxe.Entity.ontouchup","luxe/Entity.hx",102,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(event,"event")
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,ontouchup,(void))

Void Entity_obj::ontouchmove( Dynamic event){
{
		HX_STACK_FRAME("luxe.Entity","ontouchmove",0x1ca52d5e,"luxe.Entity.ontouchmove","luxe/Entity.hx",104,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(event,"event")
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,ontouchmove,(void))

Void Entity_obj::ongamepadup( Dynamic event){
{
		HX_STACK_FRAME("luxe.Entity","ongamepadup",0x58e9584a,"luxe.Entity.ongamepadup","luxe/Entity.hx",107,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(event,"event")
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,ongamepadup,(void))

Void Entity_obj::ongamepaddown( Dynamic event){
{
		HX_STACK_FRAME("luxe.Entity","ongamepaddown",0x5cea8411,"luxe.Entity.ongamepaddown","luxe/Entity.hx",109,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(event,"event")
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,ongamepaddown,(void))

Void Entity_obj::ongamepadaxis( Dynamic event){
{
		HX_STACK_FRAME("luxe.Entity","ongamepadaxis",0x5af5a850,"luxe.Entity.ongamepadaxis","luxe/Entity.hx",111,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(event,"event")
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,ongamepadaxis,(void))

Void Entity_obj::ongamepaddevice( Dynamic event){
{
		HX_STACK_FRAME("luxe.Entity","ongamepaddevice",0x8cf1f205,"luxe.Entity.ongamepaddevice","luxe/Entity.hx",113,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(event,"event")
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,ongamepaddevice,(void))

Dynamic Entity_obj::add( Dynamic _component){
	HX_STACK_FRAME("luxe.Entity","add",0x3aa1812e,"luxe.Entity.add","luxe/Entity.hx",221,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_ARG(_component,"_component")
	HX_STACK_LINE(221)
	return this->_components->add(_component);
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,add,return )

bool Entity_obj::remove( ::String _name){
	HX_STACK_FRAME("luxe.Entity","remove",0x28ac3357,"luxe.Entity.remove","luxe/Entity.hx",226,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_ARG(_name,"_name")
	HX_STACK_LINE(226)
	return this->_components->remove(_name);
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,remove,return )

Dynamic Entity_obj::get( ::String _name,Dynamic __o__in_children){
Dynamic _in_children = __o__in_children.Default(false);
	HX_STACK_FRAME("luxe.Entity","get",0x3aa60fa3,"luxe.Entity.get","luxe/Entity.hx",231,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_ARG(_name,"_name")
	HX_STACK_ARG(_in_children,"_in_children")
{
		HX_STACK_LINE(231)
		return this->_components->get(_name,_in_children);
	}
}


HX_DEFINE_DYNAMIC_FUNC2(Entity_obj,get,return )

Dynamic Entity_obj::get_any( ::String _name,Dynamic __o__in_children,Dynamic __o__first_only){
Dynamic _in_children = __o__in_children.Default(false);
Dynamic _first_only = __o__first_only.Default(true);
	HX_STACK_FRAME("luxe.Entity","get_any",0xa1bf5d10,"luxe.Entity.get_any","luxe/Entity.hx",236,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_ARG(_name,"_name")
	HX_STACK_ARG(_in_children,"_in_children")
	HX_STACK_ARG(_first_only,"_first_only")
{
		HX_STACK_LINE(236)
		return this->_components->get_any(_name,_in_children,_first_only);
	}
}


HX_DEFINE_DYNAMIC_FUNC3(Entity_obj,get_any,return )

bool Entity_obj::has( ::String _name){
	HX_STACK_FRAME("luxe.Entity","has",0x3aa6ce67,"luxe.Entity.has","luxe/Entity.hx",241,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_ARG(_name,"_name")
	HX_STACK_LINE(241)
	return this->_components->has(_name);
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,has,return )

Void Entity_obj::_init( ){
{
		HX_STACK_FRAME("luxe.Entity","_init",0x236f833c,"luxe.Entity._init","luxe/Entity.hx",249,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_LINE(255)
		this->init();
		HX_STACK_LINE(258)
		this->emit(HX_CSTRING("init"),null(),hx::SourceInfo(HX_CSTRING("Entity.hx"),258,HX_CSTRING("luxe.Entity"),HX_CSTRING("_init")));
		struct _Function_1_1{
			inline static Dynamic Block( ::luxe::Entity_obj *__this){
				HX_STACK_FRAME("*","closure",0x5bdab937,"*.closure","luxe/Entity.hx",261,0x55caa482)
				{
					HX_STACK_LINE(261)
					::IMap this1 = __this->get_components();		HX_STACK_VAR(this1,"this1");
					HX_STACK_LINE(261)
					return this1->iterator();
				}
				return null();
			}
		};
		HX_STACK_LINE(261)
		for(::cpp::FastIterator_obj< ::luxe::Component > *__it = ::cpp::CreateFastIterator< ::luxe::Component >(_Function_1_1::Block(this));  __it->hasNext(); ){
			::luxe::Component _component = __it->next();
			_component->init();
		}
		HX_STACK_LINE(267)
		{
			HX_STACK_LINE(267)
			int _g = (int)0;		HX_STACK_VAR(_g,"_g");
			HX_STACK_LINE(267)
			Array< ::Dynamic > _g1 = this->children;		HX_STACK_VAR(_g1,"_g1");
			HX_STACK_LINE(267)
			while(((_g < _g1->length))){
				HX_STACK_LINE(267)
				::luxe::Entity _child = _g1->__get(_g).StaticCast< ::luxe::Entity >();		HX_STACK_VAR(_child,"_child");
				HX_STACK_LINE(267)
				++(_g);
				HX_STACK_LINE(269)
				_child->_init();
			}
		}
		HX_STACK_LINE(273)
		this->inited = true;
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC0(Entity_obj,_init,(void))

Void Entity_obj::_reset( Dynamic _){
{
		HX_STACK_FRAME("luxe.Entity","_reset",0x06d32823,"luxe.Entity._reset","luxe/Entity.hx",277,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_,"_")
		HX_STACK_LINE(282)
		this->onreset();
		HX_STACK_LINE(284)
		this->emit(HX_CSTRING("reset"),null(),hx::SourceInfo(HX_CSTRING("Entity.hx"),284,HX_CSTRING("luxe.Entity"),HX_CSTRING("_reset")));
		struct _Function_1_1{
			inline static Dynamic Block( ::luxe::Entity_obj *__this){
				HX_STACK_FRAME("*","closure",0x5bdab937,"*.closure","luxe/Entity.hx",286,0x55caa482)
				{
					HX_STACK_LINE(286)
					::IMap this1 = __this->get_components();		HX_STACK_VAR(this1,"this1");
					HX_STACK_LINE(286)
					return this1->iterator();
				}
				return null();
			}
		};
		HX_STACK_LINE(286)
		for(::cpp::FastIterator_obj< ::luxe::Component > *__it = ::cpp::CreateFastIterator< ::luxe::Component >(_Function_1_1::Block(this));  __it->hasNext(); ){
			::luxe::Component _component = __it->next();
			_component->onreset();
		}
		HX_STACK_LINE(292)
		{
			HX_STACK_LINE(292)
			int _g = (int)0;		HX_STACK_VAR(_g,"_g");
			HX_STACK_LINE(292)
			Array< ::Dynamic > _g1 = this->children;		HX_STACK_VAR(_g1,"_g1");
			HX_STACK_LINE(292)
			while(((_g < _g1->length))){
				HX_STACK_LINE(292)
				::luxe::Entity _child = _g1->__get(_g).StaticCast< ::luxe::Entity >();		HX_STACK_VAR(_child,"_child");
				HX_STACK_LINE(292)
				++(_g);
				HX_STACK_LINE(293)
				_child->_reset(_);
				HX_STACK_LINE(138)
				Dynamic();
			}
		}
		HX_STACK_LINE(298)
		this->_start_fixed_rate_timer(this->get_fixed_rate());
		HX_STACK_LINE(301)
		this->started = true;
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_reset,(void))

Void Entity_obj::destroy( Dynamic __o__from_parent){
Dynamic _from_parent = __o__from_parent.Default(false);
	HX_STACK_FRAME("luxe.Entity","destroy",0x9f86c687,"luxe.Entity.destroy","luxe/Entity.hx",306,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_ARG(_from_parent,"_from_parent")
{
		HX_STACK_LINE(311)
		{
			HX_STACK_LINE(311)
			int _g = (int)0;		HX_STACK_VAR(_g,"_g");
			HX_STACK_LINE(311)
			Array< ::Dynamic > _g1 = this->children;		HX_STACK_VAR(_g1,"_g1");
			HX_STACK_LINE(311)
			while(((_g < _g1->length))){
				HX_STACK_LINE(311)
				::luxe::Entity _child = _g1->__get(_g).StaticCast< ::luxe::Entity >();		HX_STACK_VAR(_child,"_child");
				HX_STACK_LINE(311)
				++(_g);
				HX_STACK_LINE(313)
				_child->destroy(true);
			}
		}
		HX_STACK_LINE(317)
		this->children = null();
		HX_STACK_LINE(318)
		this->children = Array_obj< ::Dynamic >::__new();
		struct _Function_1_1{
			inline static Dynamic Block( ::luxe::Entity_obj *__this){
				HX_STACK_FRAME("*","closure",0x5bdab937,"*.closure","luxe/Entity.hx",320,0x55caa482)
				{
					HX_STACK_LINE(320)
					::IMap this1 = __this->get_components();		HX_STACK_VAR(this1,"this1");
					HX_STACK_LINE(320)
					return this1->iterator();
				}
				return null();
			}
		};
		HX_STACK_LINE(320)
		for(::cpp::FastIterator_obj< ::luxe::Component > *__it = ::cpp::CreateFastIterator< ::luxe::Component >(_Function_1_1::Block(this));  __it->hasNext(); ){
			::luxe::Component _component = __it->next();
			{
				HX_STACK_LINE(322)
				_component->onremoved();
				HX_STACK_LINE(323)
				_component->ondestroy();
			}
;
		}
		HX_STACK_LINE(327)
		this->emit(HX_CSTRING("destroy"),null(),hx::SourceInfo(HX_CSTRING("Entity.hx"),327,HX_CSTRING("luxe.Entity"),HX_CSTRING("destroy")));
		HX_STACK_LINE(329)
		this->ondestroy();
		HX_STACK_LINE(332)
		if (((  (((this->get_parent() != null()))) ? bool(!(_from_parent)) : bool(false) ))){
			HX_STACK_LINE(334)
			this->get_parent()->_remove_child(hx::ObjectPtr<OBJ_>(this));
		}
		HX_STACK_LINE(338)
		this->_stop_fixed_rate_timer();
		HX_STACK_LINE(341)
		this->destroyed = true;
		HX_STACK_LINE(342)
		this->inited = false;
		HX_STACK_LINE(343)
		this->started = false;
		HX_STACK_LINE(348)
		if (((this->get_scene() != null()))){
			HX_STACK_LINE(349)
			this->get_scene()->remove(hx::ObjectPtr<OBJ_>(this));
		}
		HX_STACK_LINE(353)
		if (((this->events != null()))){
			HX_STACK_LINE(354)
			this->events->destroy();
			HX_STACK_LINE(355)
			this->events = null();
		}
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,destroy,(void))

Void Entity_obj::_update( Float dt){
{
		HX_STACK_FRAME("luxe.Entity","_update",0x707d3135,"luxe.Entity._update","luxe/Entity.hx",361,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(dt,"dt")
		HX_STACK_LINE(363)
		if ((this->destroyed)){
			HX_STACK_LINE(365)
			return null();
		}
		HX_STACK_LINE(368)
		if (((  ((!(((  ((!((!(this->get_active()))))) ? bool(!(this->inited)) : bool(true) ))))) ? bool(!(this->started)) : bool(true) ))){
			HX_STACK_LINE(369)
			return null();
		}
		HX_STACK_LINE(375)
		this->transform->clean_check();
		HX_STACK_LINE(378)
		this->update(dt);
		HX_STACK_LINE(380)
		if (((this->events != null()))){
			HX_STACK_LINE(382)
			this->events->process();
		}
		struct _Function_1_1{
			inline static Dynamic Block( ::luxe::Entity_obj *__this){
				HX_STACK_FRAME("*","closure",0x5bdab937,"*.closure","luxe/Entity.hx",386,0x55caa482)
				{
					HX_STACK_LINE(386)
					::IMap this1 = __this->get_components();		HX_STACK_VAR(this1,"this1");
					HX_STACK_LINE(386)
					return this1->iterator();
				}
				return null();
			}
		};
		HX_STACK_LINE(386)
		for(::cpp::FastIterator_obj< ::luxe::Component > *__it = ::cpp::CreateFastIterator< ::luxe::Component >(_Function_1_1::Block(this));  __it->hasNext(); ){
			::luxe::Component _component = __it->next();
			_component->update(dt);
		}
		HX_STACK_LINE(391)
		if (((this->children->length > (int)0))){
			HX_STACK_LINE(392)
			int _g = (int)0;		HX_STACK_VAR(_g,"_g");
			HX_STACK_LINE(392)
			Array< ::Dynamic > _g1 = this->children;		HX_STACK_VAR(_g1,"_g1");
			HX_STACK_LINE(392)
			while(((_g < _g1->length))){
				HX_STACK_LINE(392)
				::luxe::Entity _child = _g1->__get(_g).StaticCast< ::luxe::Entity >();		HX_STACK_VAR(_child,"_child");
				HX_STACK_LINE(392)
				++(_g);
				HX_STACK_LINE(393)
				_child->_update(dt);
			}
		}
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_update,(void))

Void Entity_obj::_fixed_update( ){
{
		HX_STACK_FRAME("luxe.Entity","_fixed_update",0x8f91c8e0,"luxe.Entity._fixed_update","luxe/Entity.hx",401,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_LINE(403)
		if ((this->destroyed)){
			HX_STACK_LINE(404)
			return null();
		}
		HX_STACK_LINE(407)
		if (((  ((!(((  ((!((!(this->get_active()))))) ? bool(!(this->inited)) : bool(true) ))))) ? bool(!(this->started)) : bool(true) ))){
			HX_STACK_LINE(408)
			return null();
		}
		HX_STACK_LINE(413)
		this->emit(HX_CSTRING("fixedupdate"),null(),hx::SourceInfo(HX_CSTRING("Entity.hx"),413,HX_CSTRING("luxe.Entity"),HX_CSTRING("_fixed_update")));
		HX_STACK_LINE(415)
		this->onfixedupdate(this->get_fixed_rate());
		struct _Function_1_1{
			inline static Dynamic Block( ::luxe::Entity_obj *__this){
				HX_STACK_FRAME("*","closure",0x5bdab937,"*.closure","luxe/Entity.hx",417,0x55caa482)
				{
					HX_STACK_LINE(417)
					::IMap this1 = __this->get_components();		HX_STACK_VAR(this1,"this1");
					HX_STACK_LINE(417)
					return this1->iterator();
				}
				return null();
			}
		};
		HX_STACK_LINE(417)
		for(::cpp::FastIterator_obj< ::luxe::Component > *__it = ::cpp::CreateFastIterator< ::luxe::Component >(_Function_1_1::Block(this));  __it->hasNext(); ){
			::luxe::Component _component = __it->next();
			_component->onfixedupdate(this->get_fixed_rate());
		}
		HX_STACK_LINE(421)
		{
			HX_STACK_LINE(421)
			int _g = (int)0;		HX_STACK_VAR(_g,"_g");
			HX_STACK_LINE(421)
			Array< ::Dynamic > _g1 = this->children;		HX_STACK_VAR(_g1,"_g1");
			HX_STACK_LINE(421)
			while(((_g < _g1->length))){
				HX_STACK_LINE(421)
				::luxe::Entity _child = _g1->__get(_g).StaticCast< ::luxe::Entity >();		HX_STACK_VAR(_child,"_child");
				HX_STACK_LINE(421)
				++(_g);
				HX_STACK_LINE(422)
				_child->_fixed_update();
			}
		}
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC0(Entity_obj,_fixed_update,(void))

Void Entity_obj::_listen( ::String _event,Dynamic _handler,Dynamic __o__self){
Dynamic _self = __o__self.Default(false);
	HX_STACK_FRAME("luxe.Entity","_listen",0xd9717373,"luxe.Entity._listen","luxe/Entity.hx",429,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_ARG(_event,"_event")
	HX_STACK_ARG(_handler,"_handler")
	HX_STACK_ARG(_self,"_self")
{
		HX_STACK_LINE(438)
		if ((!(_self))){
			HX_STACK_LINE(439)
			this->on(_event,_handler,hx::SourceInfo(HX_CSTRING("Entity.hx"),439,HX_CSTRING("luxe.Entity"),HX_CSTRING("_listen")));
		}
		HX_STACK_LINE(442)
		if (((this->get_scene() != null()))){
			HX_STACK_LINE(443)
			::String _switch_1 = (_event);
			if (  ( _switch_1==HX_CSTRING("keyup"))){
				HX_STACK_LINE(445)
				this->get_scene()->on(_event,this->_keyup_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),445,HX_CSTRING("luxe.Entity"),HX_CSTRING("_listen")));
			}
			else if (  ( _switch_1==HX_CSTRING("keydown"))){
				HX_STACK_LINE(446)
				this->get_scene()->on(_event,this->_keydown_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),446,HX_CSTRING("luxe.Entity"),HX_CSTRING("_listen")));
			}
			else if (  ( _switch_1==HX_CSTRING("textinput"))){
				HX_STACK_LINE(447)
				this->get_scene()->on(_event,this->_textinput_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),447,HX_CSTRING("luxe.Entity"),HX_CSTRING("_listen")));
			}
			else if (  ( _switch_1==HX_CSTRING("mousedown"))){
				HX_STACK_LINE(449)
				this->get_scene()->on(_event,this->_mousedown_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),449,HX_CSTRING("luxe.Entity"),HX_CSTRING("_listen")));
			}
			else if (  ( _switch_1==HX_CSTRING("mouseup"))){
				HX_STACK_LINE(450)
				this->get_scene()->on(_event,this->_mouseup_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),450,HX_CSTRING("luxe.Entity"),HX_CSTRING("_listen")));
			}
			else if (  ( _switch_1==HX_CSTRING("mousemove"))){
				HX_STACK_LINE(451)
				this->get_scene()->on(_event,this->_mousemove_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),451,HX_CSTRING("luxe.Entity"),HX_CSTRING("_listen")));
			}
			else if (  ( _switch_1==HX_CSTRING("mousewheel"))){
				HX_STACK_LINE(452)
				this->get_scene()->on(_event,this->_mousewheel_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),452,HX_CSTRING("luxe.Entity"),HX_CSTRING("_listen")));
			}
			else if (  ( _switch_1==HX_CSTRING("touchdown"))){
				HX_STACK_LINE(454)
				this->get_scene()->on(_event,this->_touchdown_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),454,HX_CSTRING("luxe.Entity"),HX_CSTRING("_listen")));
			}
			else if (  ( _switch_1==HX_CSTRING("touchup"))){
				HX_STACK_LINE(455)
				this->get_scene()->on(_event,this->_touchup_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),455,HX_CSTRING("luxe.Entity"),HX_CSTRING("_listen")));
			}
			else if (  ( _switch_1==HX_CSTRING("touchmove"))){
				HX_STACK_LINE(456)
				this->get_scene()->on(_event,this->_touchmove_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),456,HX_CSTRING("luxe.Entity"),HX_CSTRING("_listen")));
			}
			else if (  ( _switch_1==HX_CSTRING("inputup"))){
				HX_STACK_LINE(458)
				this->get_scene()->on(_event,this->_inputup_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),458,HX_CSTRING("luxe.Entity"),HX_CSTRING("_listen")));
			}
			else if (  ( _switch_1==HX_CSTRING("inputdown"))){
				HX_STACK_LINE(459)
				this->get_scene()->on(_event,this->_inputdown_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),459,HX_CSTRING("luxe.Entity"),HX_CSTRING("_listen")));
			}
			else if (  ( _switch_1==HX_CSTRING("gamepaddown"))){
				HX_STACK_LINE(461)
				this->get_scene()->on(_event,this->_gamepaddown_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),461,HX_CSTRING("luxe.Entity"),HX_CSTRING("_listen")));
			}
			else if (  ( _switch_1==HX_CSTRING("gamepadup"))){
				HX_STACK_LINE(462)
				this->get_scene()->on(_event,this->_gamepadup_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),462,HX_CSTRING("luxe.Entity"),HX_CSTRING("_listen")));
			}
			else if (  ( _switch_1==HX_CSTRING("gamepadaxis"))){
				HX_STACK_LINE(463)
				this->get_scene()->on(_event,this->_gamepadaxis_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),463,HX_CSTRING("luxe.Entity"),HX_CSTRING("_listen")));
			}
			else if (  ( _switch_1==HX_CSTRING("gamepaddevice"))){
				HX_STACK_LINE(464)
				this->get_scene()->on(_event,this->_gamepaddevice_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),464,HX_CSTRING("luxe.Entity"),HX_CSTRING("_listen")));
			}
		}
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC3(Entity_obj,_listen,(void))

Void Entity_obj::_unlisten( ::String _event,Dynamic _handler,Dynamic __o__self){
Dynamic _self = __o__self.Default(false);
	HX_STACK_FRAME("luxe.Entity","_unlisten",0xe95ac58c,"luxe.Entity._unlisten","luxe/Entity.hx",473,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_ARG(_event,"_event")
	HX_STACK_ARG(_handler,"_handler")
	HX_STACK_ARG(_self,"_self")
{
		HX_STACK_LINE(473)
		if ((!(_self))){
			HX_STACK_LINE(474)
			this->off(_event,_handler,hx::SourceInfo(HX_CSTRING("Entity.hx"),474,HX_CSTRING("luxe.Entity"),HX_CSTRING("_unlisten")));
		}
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC3(Entity_obj,_unlisten,(void))

Void Entity_obj::_detach_scene( ){
{
		HX_STACK_FRAME("luxe.Entity","_detach_scene",0xe66c124c,"luxe.Entity._detach_scene","luxe/Entity.hx",484,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_LINE(484)
		if (((this->get_scene() != null()))){
			HX_STACK_LINE(486)
			this->get_scene()->off(HX_CSTRING("reset"),this->_reset_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),486,HX_CSTRING("luxe.Entity"),HX_CSTRING("_detach_scene")));
			HX_STACK_LINE(487)
			this->get_scene()->off(HX_CSTRING("destroy"),this->destroy_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),487,HX_CSTRING("luxe.Entity"),HX_CSTRING("_detach_scene")));
			HX_STACK_LINE(490)
			this->get_scene()->off(HX_CSTRING("keyup"),this->_keyup_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),490,HX_CSTRING("luxe.Entity"),HX_CSTRING("_detach_scene")));
			HX_STACK_LINE(491)
			this->get_scene()->off(HX_CSTRING("keydown"),this->_keydown_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),491,HX_CSTRING("luxe.Entity"),HX_CSTRING("_detach_scene")));
			HX_STACK_LINE(492)
			this->get_scene()->off(HX_CSTRING("textinput"),this->_textinput_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),492,HX_CSTRING("luxe.Entity"),HX_CSTRING("_detach_scene")));
			HX_STACK_LINE(493)
			this->get_scene()->off(HX_CSTRING("mousedown"),this->_mousedown_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),493,HX_CSTRING("luxe.Entity"),HX_CSTRING("_detach_scene")));
			HX_STACK_LINE(494)
			this->get_scene()->off(HX_CSTRING("mouseup"),this->_mouseup_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),494,HX_CSTRING("luxe.Entity"),HX_CSTRING("_detach_scene")));
			HX_STACK_LINE(495)
			this->get_scene()->off(HX_CSTRING("mousemove"),this->_mousemove_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),495,HX_CSTRING("luxe.Entity"),HX_CSTRING("_detach_scene")));
			HX_STACK_LINE(496)
			this->get_scene()->off(HX_CSTRING("mousewheel"),this->_mousewheel_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),496,HX_CSTRING("luxe.Entity"),HX_CSTRING("_detach_scene")));
			HX_STACK_LINE(497)
			this->get_scene()->off(HX_CSTRING("touchdown"),this->_touchdown_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),497,HX_CSTRING("luxe.Entity"),HX_CSTRING("_detach_scene")));
			HX_STACK_LINE(498)
			this->get_scene()->off(HX_CSTRING("touchup"),this->_touchup_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),498,HX_CSTRING("luxe.Entity"),HX_CSTRING("_detach_scene")));
			HX_STACK_LINE(499)
			this->get_scene()->off(HX_CSTRING("touchmove"),this->_touchmove_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),499,HX_CSTRING("luxe.Entity"),HX_CSTRING("_detach_scene")));
			HX_STACK_LINE(500)
			this->get_scene()->off(HX_CSTRING("inputup"),this->_inputup_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),500,HX_CSTRING("luxe.Entity"),HX_CSTRING("_detach_scene")));
			HX_STACK_LINE(501)
			this->get_scene()->off(HX_CSTRING("inputdown"),this->_inputdown_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),501,HX_CSTRING("luxe.Entity"),HX_CSTRING("_detach_scene")));
			HX_STACK_LINE(502)
			this->get_scene()->off(HX_CSTRING("gamepaddown"),this->_gamepaddown_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),502,HX_CSTRING("luxe.Entity"),HX_CSTRING("_detach_scene")));
			HX_STACK_LINE(503)
			this->get_scene()->off(HX_CSTRING("gamepadup"),this->_gamepadup_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),503,HX_CSTRING("luxe.Entity"),HX_CSTRING("_detach_scene")));
			HX_STACK_LINE(504)
			this->get_scene()->off(HX_CSTRING("gamepadaxis"),this->_gamepadaxis_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),504,HX_CSTRING("luxe.Entity"),HX_CSTRING("_detach_scene")));
			HX_STACK_LINE(505)
			this->get_scene()->off(HX_CSTRING("gamepaddevice"),this->_gamepaddevice_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),505,HX_CSTRING("luxe.Entity"),HX_CSTRING("_detach_scene")));
		}
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC0(Entity_obj,_detach_scene,(void))

Void Entity_obj::_attach_scene( ){
{
		HX_STACK_FRAME("luxe.Entity","_attach_scene",0xae36123e,"luxe.Entity._attach_scene","luxe/Entity.hx",513,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_LINE(513)
		if (((this->get_scene() != null()))){
			HX_STACK_LINE(514)
			this->get_scene()->on(HX_CSTRING("reset"),this->_reset_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),514,HX_CSTRING("luxe.Entity"),HX_CSTRING("_attach_scene")));
			HX_STACK_LINE(515)
			this->get_scene()->on(HX_CSTRING("destroy"),this->destroy_dyn(),hx::SourceInfo(HX_CSTRING("Entity.hx"),515,HX_CSTRING("luxe.Entity"),HX_CSTRING("_attach_scene")));
		}
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC0(Entity_obj,_attach_scene,(void))

Void Entity_obj::_keyup( Dynamic _event){
{
		HX_STACK_FRAME("luxe.Entity","_keyup",0xff09b40e,"luxe.Entity._keyup","luxe/Entity.hx",522,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_event,"_event")
		HX_STACK_LINE(524)
		if (((  ((!(((  ((!((!(this->get_active()))))) ? bool(!(this->inited)) : bool(true) ))))) ? bool(!(this->started)) : bool(true) ))){
			HX_STACK_LINE(525)
			return null();
		}
		HX_STACK_LINE(530)
		this->onkeyup(_event);
		HX_STACK_LINE(531)
		this->emit(HX_CSTRING("keyup"),_event,hx::SourceInfo(HX_CSTRING("Entity.hx"),531,HX_CSTRING("luxe.Entity"),HX_CSTRING("_keyup")));
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_keyup,(void))

Void Entity_obj::_keydown( Dynamic _event){
{
		HX_STACK_FRAME("luxe.Entity","_keydown",0x10ac58d5,"luxe.Entity._keydown","luxe/Entity.hx",535,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_event,"_event")
		HX_STACK_LINE(537)
		if (((  ((!(((  ((!((!(this->get_active()))))) ? bool(!(this->inited)) : bool(true) ))))) ? bool(!(this->started)) : bool(true) ))){
			HX_STACK_LINE(538)
			return null();
		}
		HX_STACK_LINE(543)
		this->onkeydown(_event);
		HX_STACK_LINE(544)
		this->emit(HX_CSTRING("keydown"),_event,hx::SourceInfo(HX_CSTRING("Entity.hx"),544,HX_CSTRING("luxe.Entity"),HX_CSTRING("_keydown")));
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_keydown,(void))

Void Entity_obj::_textinput( Dynamic _event){
{
		HX_STACK_FRAME("luxe.Entity","_textinput",0x03587c91,"luxe.Entity._textinput","luxe/Entity.hx",548,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_event,"_event")
		HX_STACK_LINE(550)
		if (((  ((!(((  ((!((!(this->get_active()))))) ? bool(!(this->inited)) : bool(true) ))))) ? bool(!(this->started)) : bool(true) ))){
			HX_STACK_LINE(551)
			return null();
		}
		HX_STACK_LINE(556)
		this->ontextinput(_event);
		HX_STACK_LINE(557)
		this->emit(HX_CSTRING("textinput"),_event,hx::SourceInfo(HX_CSTRING("Entity.hx"),557,HX_CSTRING("luxe.Entity"),HX_CSTRING("_textinput")));
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_textinput,(void))

Void Entity_obj::_mousedown( Dynamic _event){
{
		HX_STACK_FRAME("luxe.Entity","_mousedown",0x43641d5b,"luxe.Entity._mousedown","luxe/Entity.hx",564,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_event,"_event")
		HX_STACK_LINE(566)
		if (((  ((!(((  ((!((!(this->get_active()))))) ? bool(!(this->inited)) : bool(true) ))))) ? bool(!(this->started)) : bool(true) ))){
			HX_STACK_LINE(567)
			return null();
		}
		HX_STACK_LINE(572)
		this->onmousedown(_event);
		HX_STACK_LINE(573)
		this->emit(HX_CSTRING("mousedown"),_event,hx::SourceInfo(HX_CSTRING("Entity.hx"),573,HX_CSTRING("luxe.Entity"),HX_CSTRING("_mousedown")));
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_mousedown,(void))

Void Entity_obj::_mouseup( Dynamic _event){
{
		HX_STACK_FRAME("luxe.Entity","_mouseup",0x1fb12b14,"luxe.Entity._mouseup","luxe/Entity.hx",578,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_event,"_event")
		HX_STACK_LINE(580)
		if (((  ((!(((  ((!((!(this->get_active()))))) ? bool(!(this->inited)) : bool(true) ))))) ? bool(!(this->started)) : bool(true) ))){
			HX_STACK_LINE(581)
			return null();
		}
		HX_STACK_LINE(586)
		this->onmouseup(_event);
		HX_STACK_LINE(587)
		this->emit(HX_CSTRING("mouseup"),_event,hx::SourceInfo(HX_CSTRING("Entity.hx"),587,HX_CSTRING("luxe.Entity"),HX_CSTRING("_mouseup")));
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_mouseup,(void))

Void Entity_obj::_mousewheel( Dynamic _event){
{
		HX_STACK_FRAME("luxe.Entity","_mousewheel",0xa0246982,"luxe.Entity._mousewheel","luxe/Entity.hx",591,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_event,"_event")
		HX_STACK_LINE(593)
		if (((  ((!(((  ((!((!(this->get_active()))))) ? bool(!(this->inited)) : bool(true) ))))) ? bool(!(this->started)) : bool(true) ))){
			HX_STACK_LINE(594)
			return null();
		}
		HX_STACK_LINE(599)
		this->onmousewheel(_event);
		HX_STACK_LINE(600)
		this->emit(HX_CSTRING("mousewheel"),_event,hx::SourceInfo(HX_CSTRING("Entity.hx"),600,HX_CSTRING("luxe.Entity"),HX_CSTRING("_mousewheel")));
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_mousewheel,(void))

Void Entity_obj::_mousemove( Dynamic _event){
{
		HX_STACK_FRAME("luxe.Entity","_mousemove",0x4957080a,"luxe.Entity._mousemove","luxe/Entity.hx",604,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_event,"_event")
		HX_STACK_LINE(606)
		if (((  ((!(((  ((!((!(this->get_active()))))) ? bool(!(this->inited)) : bool(true) ))))) ? bool(!(this->started)) : bool(true) ))){
			HX_STACK_LINE(607)
			return null();
		}
		HX_STACK_LINE(612)
		this->onmousemove(_event);
		HX_STACK_LINE(613)
		this->emit(HX_CSTRING("mousemove"),_event,hx::SourceInfo(HX_CSTRING("Entity.hx"),613,HX_CSTRING("luxe.Entity"),HX_CSTRING("_mousemove")));
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_mousemove,(void))

Void Entity_obj::_touchdown( Dynamic _event){
{
		HX_STACK_FRAME("luxe.Entity","_touchdown",0x5c7bf3f5,"luxe.Entity._touchdown","luxe/Entity.hx",618,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_event,"_event")
		HX_STACK_LINE(620)
		if (((  ((!(((  ((!((!(this->get_active()))))) ? bool(!(this->inited)) : bool(true) ))))) ? bool(!(this->started)) : bool(true) ))){
			HX_STACK_LINE(621)
			return null();
		}
		HX_STACK_LINE(626)
		this->ontouchdown(_event);
		HX_STACK_LINE(627)
		this->emit(HX_CSTRING("touchdown"),_event,hx::SourceInfo(HX_CSTRING("Entity.hx"),627,HX_CSTRING("luxe.Entity"),HX_CSTRING("_touchdown")));
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_touchdown,(void))

Void Entity_obj::_touchup( Dynamic _event){
{
		HX_STACK_FRAME("luxe.Entity","_touchup",0x3836472e,"luxe.Entity._touchup","luxe/Entity.hx",631,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_event,"_event")
		HX_STACK_LINE(633)
		if (((  ((!(((  ((!((!(this->get_active()))))) ? bool(!(this->inited)) : bool(true) ))))) ? bool(!(this->started)) : bool(true) ))){
			HX_STACK_LINE(634)
			return null();
		}
		HX_STACK_LINE(639)
		this->ontouchup(_event);
		HX_STACK_LINE(640)
		this->emit(HX_CSTRING("touchup"),_event,hx::SourceInfo(HX_CSTRING("Entity.hx"),640,HX_CSTRING("luxe.Entity"),HX_CSTRING("_touchup")));
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_touchup,(void))

Void Entity_obj::_touchmove( Dynamic _event){
{
		HX_STACK_FRAME("luxe.Entity","_touchmove",0x626edea4,"luxe.Entity._touchmove","luxe/Entity.hx",644,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_event,"_event")
		HX_STACK_LINE(646)
		if (((  ((!(((  ((!((!(this->get_active()))))) ? bool(!(this->inited)) : bool(true) ))))) ? bool(!(this->started)) : bool(true) ))){
			HX_STACK_LINE(647)
			return null();
		}
		HX_STACK_LINE(652)
		this->ontouchmove(_event);
		HX_STACK_LINE(653)
		this->emit(HX_CSTRING("touchmove"),_event,hx::SourceInfo(HX_CSTRING("Entity.hx"),653,HX_CSTRING("luxe.Entity"),HX_CSTRING("_touchmove")));
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_touchmove,(void))

Void Entity_obj::_gamepadaxis( Dynamic _event){
{
		HX_STACK_FRAME("luxe.Entity","_gamepadaxis",0xeb82b716,"luxe.Entity._gamepadaxis","luxe/Entity.hx",658,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_event,"_event")
		HX_STACK_LINE(660)
		if (((  ((!(((  ((!((!(this->get_active()))))) ? bool(!(this->inited)) : bool(true) ))))) ? bool(!(this->started)) : bool(true) ))){
			HX_STACK_LINE(661)
			return null();
		}
		HX_STACK_LINE(666)
		this->ongamepadaxis(_event);
		HX_STACK_LINE(667)
		this->emit(HX_CSTRING("gamepadaxis"),_event,hx::SourceInfo(HX_CSTRING("Entity.hx"),667,HX_CSTRING("luxe.Entity"),HX_CSTRING("_gamepadaxis")));
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_gamepadaxis,(void))

Void Entity_obj::_gamepaddown( Dynamic _event){
{
		HX_STACK_FRAME("luxe.Entity","_gamepaddown",0xed7792d7,"luxe.Entity._gamepaddown","luxe/Entity.hx",671,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_event,"_event")
		HX_STACK_LINE(673)
		if (((  ((!(((  ((!((!(this->get_active()))))) ? bool(!(this->inited)) : bool(true) ))))) ? bool(!(this->started)) : bool(true) ))){
			HX_STACK_LINE(674)
			return null();
		}
		HX_STACK_LINE(679)
		this->ongamepaddown(_event);
		HX_STACK_LINE(680)
		this->emit(HX_CSTRING("gamepaddown"),_event,hx::SourceInfo(HX_CSTRING("Entity.hx"),680,HX_CSTRING("luxe.Entity"),HX_CSTRING("_gamepaddown")));
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_gamepaddown,(void))

Void Entity_obj::_gamepadup( Dynamic _event){
{
		HX_STACK_FRAME("luxe.Entity","_gamepadup",0x9eb30990,"luxe.Entity._gamepadup","luxe/Entity.hx",684,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_event,"_event")
		HX_STACK_LINE(686)
		if (((  ((!(((  ((!((!(this->get_active()))))) ? bool(!(this->inited)) : bool(true) ))))) ? bool(!(this->started)) : bool(true) ))){
			HX_STACK_LINE(687)
			return null();
		}
		HX_STACK_LINE(692)
		this->ongamepadup(_event);
		HX_STACK_LINE(693)
		this->emit(HX_CSTRING("gamepadup"),_event,hx::SourceInfo(HX_CSTRING("Entity.hx"),693,HX_CSTRING("luxe.Entity"),HX_CSTRING("_gamepadup")));
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_gamepadup,(void))

Void Entity_obj::_gamepaddevice( Dynamic _event){
{
		HX_STACK_FRAME("luxe.Entity","_gamepaddevice",0x25f4be4b,"luxe.Entity._gamepaddevice","luxe/Entity.hx",697,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_event,"_event")
		HX_STACK_LINE(699)
		if (((  ((!(((  ((!((!(this->get_active()))))) ? bool(!(this->inited)) : bool(true) ))))) ? bool(!(this->started)) : bool(true) ))){
			HX_STACK_LINE(700)
			return null();
		}
		HX_STACK_LINE(705)
		this->ongamepaddevice(_event);
		HX_STACK_LINE(706)
		this->emit(HX_CSTRING("gamepaddevice"),_event,hx::SourceInfo(HX_CSTRING("Entity.hx"),706,HX_CSTRING("luxe.Entity"),HX_CSTRING("_gamepaddevice")));
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_gamepaddevice,(void))

Void Entity_obj::_inputdown( Dynamic _event){
{
		HX_STACK_FRAME("luxe.Entity","_inputdown",0x5e3a21c0,"luxe.Entity._inputdown","luxe/Entity.hx",712,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_event,"_event")
		HX_STACK_LINE(714)
		if (((  ((!(((  ((!((!(this->get_active()))))) ? bool(!(this->inited)) : bool(true) ))))) ? bool(!(this->started)) : bool(true) ))){
			HX_STACK_LINE(715)
			return null();
		}
		HX_STACK_LINE(720)
		this->oninputdown(_event->__Field(HX_CSTRING("name"),true),_event->__Field(HX_CSTRING("event"),true));
		HX_STACK_LINE(721)
		this->emit(HX_CSTRING("inputdown"),_event,hx::SourceInfo(HX_CSTRING("Entity.hx"),721,HX_CSTRING("luxe.Entity"),HX_CSTRING("_inputdown")));
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_inputdown,(void))

Void Entity_obj::_inputup( Dynamic _event){
{
		HX_STACK_FRAME("luxe.Entity","_inputup",0x335cdc39,"luxe.Entity._inputup","luxe/Entity.hx",725,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_event,"_event")
		HX_STACK_LINE(727)
		if (((  ((!(((  ((!((!(this->get_active()))))) ? bool(!(this->inited)) : bool(true) ))))) ? bool(!(this->started)) : bool(true) ))){
			HX_STACK_LINE(728)
			return null();
		}
		HX_STACK_LINE(733)
		this->oninputup(_event->__Field(HX_CSTRING("name"),true),_event->__Field(HX_CSTRING("event"),true));
		HX_STACK_LINE(734)
		this->emit(HX_CSTRING("inputup"),_event,hx::SourceInfo(HX_CSTRING("Entity.hx"),734,HX_CSTRING("luxe.Entity"),HX_CSTRING("_inputup")));
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_inputup,(void))

Float Entity_obj::get_fixed_rate( ){
	HX_STACK_FRAME("luxe.Entity","get_fixed_rate",0x56a59b27,"luxe.Entity.get_fixed_rate","luxe/Entity.hx",743,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_LINE(743)
	return this->fixed_rate;
}


HX_DEFINE_DYNAMIC_FUNC0(Entity_obj,get_fixed_rate,return )

Float Entity_obj::set_fixed_rate( Float _rate){
	HX_STACK_FRAME("luxe.Entity","set_fixed_rate",0x76c5839b,"luxe.Entity.set_fixed_rate","luxe/Entity.hx",747,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_ARG(_rate,"_rate")
	HX_STACK_LINE(749)
	this->fixed_rate = _rate;
	HX_STACK_LINE(751)
	this->_stop_fixed_rate_timer();
	HX_STACK_LINE(752)
	this->_start_fixed_rate_timer(_rate);
	HX_STACK_LINE(754)
	return this->get_fixed_rate();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,set_fixed_rate,return )

Void Entity_obj::_stop_fixed_rate_timer( ){
{
		HX_STACK_FRAME("luxe.Entity","_stop_fixed_rate_timer",0xf4198482,"luxe.Entity._stop_fixed_rate_timer","luxe/Entity.hx",759,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_LINE(759)
		if (((this->fixed_rate_timer != null()))){
			HX_STACK_LINE(760)
			this->fixed_rate_timer->stop();
			HX_STACK_LINE(761)
			this->fixed_rate_timer = null();
		}
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC0(Entity_obj,_stop_fixed_rate_timer,(void))

Void Entity_obj::_start_fixed_rate_timer( Float _rate){
{
		HX_STACK_FRAME("luxe.Entity","_start_fixed_rate_timer",0xbead10fa,"luxe.Entity._start_fixed_rate_timer","luxe/Entity.hx",768,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_rate,"_rate")
		HX_STACK_LINE(768)
		if (((  (((  (((_rate != (int)0))) ? bool((this->get_parent() == null())) : bool(false) ))) ? bool(!(this->destroyed)) : bool(false) ))){
			HX_STACK_LINE(769)
			this->fixed_rate_timer = ::snow::utils::Timer_obj::__new(_rate);
			HX_STACK_LINE(770)
			this->fixed_rate_timer->run = this->_fixed_update_dyn();
		}
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_start_fixed_rate_timer,(void))

::haxe::ds::StringMap Entity_obj::get_components( ){
	HX_STACK_FRAME("luxe.Entity","get_components",0x5c119f72,"luxe.Entity.get_components","luxe/Entity.hx",778,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_LINE(778)
	return this->_components->components;
}


HX_DEFINE_DYNAMIC_FUNC0(Entity_obj,get_components,return )

Void Entity_obj::_add_child( ::luxe::Entity child){
{
		HX_STACK_FRAME("luxe.Entity","_add_child",0x04ab4a12,"luxe.Entity._add_child","luxe/Entity.hx",783,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(child,"child")
		HX_STACK_LINE(785)
		this->children->push(child);
		HX_STACK_LINE(790)
		if (((child->get_scene() != null()))){
			HX_STACK_LINE(792)
			bool removed = child->get_scene()->remove(child);		HX_STACK_VAR(removed,"removed");
		}
		else{
			HX_STACK_LINE(138)
			Dynamic();
		}
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_add_child,(void))

Void Entity_obj::_remove_child( ::luxe::Entity child){
{
		HX_STACK_FRAME("luxe.Entity","_remove_child",0x54f46c4d,"luxe.Entity._remove_child","luxe/Entity.hx",802,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(child,"child")
		HX_STACK_LINE(802)
		this->children->remove(child);
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,_remove_child,(void))

Void Entity_obj::set_pos_from_transform( ::phoenix::Vector _pos){
{
		HX_STACK_FRAME("luxe.Entity","set_pos_from_transform",0x2a7e6b72,"luxe.Entity.set_pos_from_transform","luxe/Entity.hx",811,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_pos,"_pos")
		struct _Function_1_1{
			inline static Dynamic Block( ::luxe::Entity_obj *__this){
				HX_STACK_FRAME("*","closure",0x5bdab937,"*.closure","luxe/Entity.hx",811,0x55caa482)
				{
					HX_STACK_LINE(811)
					::IMap this1 = __this->get_components();		HX_STACK_VAR(this1,"this1");
					HX_STACK_LINE(811)
					return this1->iterator();
				}
				return null();
			}
		};
		HX_STACK_LINE(811)
		for(::cpp::FastIterator_obj< ::luxe::Component > *__it = ::cpp::CreateFastIterator< ::luxe::Component >(_Function_1_1::Block(this));  __it->hasNext(); ){
			::luxe::Component _component = __it->next();
			_component->entity_pos_change(_pos);
		}
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,set_pos_from_transform,(void))

Void Entity_obj::set_rotation_from_transform( ::phoenix::Quaternion _rotation){
{
		HX_STACK_FRAME("luxe.Entity","set_rotation_from_transform",0xf7a74368,"luxe.Entity.set_rotation_from_transform","luxe/Entity.hx",820,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_rotation,"_rotation")
		struct _Function_1_1{
			inline static Dynamic Block( ::luxe::Entity_obj *__this){
				HX_STACK_FRAME("*","closure",0x5bdab937,"*.closure","luxe/Entity.hx",820,0x55caa482)
				{
					HX_STACK_LINE(820)
					::IMap this1 = __this->get_components();		HX_STACK_VAR(this1,"this1");
					HX_STACK_LINE(820)
					return this1->iterator();
				}
				return null();
			}
		};
		HX_STACK_LINE(820)
		for(::cpp::FastIterator_obj< ::luxe::Component > *__it = ::cpp::CreateFastIterator< ::luxe::Component >(_Function_1_1::Block(this));  __it->hasNext(); ){
			::luxe::Component _component = __it->next();
			_component->entity_rotation_change(_rotation);
		}
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,set_rotation_from_transform,(void))

Void Entity_obj::set_scale_from_transform( ::phoenix::Vector _scale){
{
		HX_STACK_FRAME("luxe.Entity","set_scale_from_transform",0x0154d33c,"luxe.Entity.set_scale_from_transform","luxe/Entity.hx",829,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_scale,"_scale")
		struct _Function_1_1{
			inline static Dynamic Block( ::luxe::Entity_obj *__this){
				HX_STACK_FRAME("*","closure",0x5bdab937,"*.closure","luxe/Entity.hx",829,0x55caa482)
				{
					HX_STACK_LINE(829)
					::IMap this1 = __this->get_components();		HX_STACK_VAR(this1,"this1");
					HX_STACK_LINE(829)
					return this1->iterator();
				}
				return null();
			}
		};
		HX_STACK_LINE(829)
		for(::cpp::FastIterator_obj< ::luxe::Component > *__it = ::cpp::CreateFastIterator< ::luxe::Component >(_Function_1_1::Block(this));  __it->hasNext(); ){
			::luxe::Component _component = __it->next();
			_component->entity_scale_change(_scale);
		}
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,set_scale_from_transform,(void))

Void Entity_obj::set_origin_from_transform( ::phoenix::Vector _origin){
{
		HX_STACK_FRAME("luxe.Entity","set_origin_from_transform",0x1a1cb7c0,"luxe.Entity.set_origin_from_transform","luxe/Entity.hx",838,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_origin,"_origin")
		struct _Function_1_1{
			inline static Dynamic Block( ::luxe::Entity_obj *__this){
				HX_STACK_FRAME("*","closure",0x5bdab937,"*.closure","luxe/Entity.hx",838,0x55caa482)
				{
					HX_STACK_LINE(838)
					::IMap this1 = __this->get_components();		HX_STACK_VAR(this1,"this1");
					HX_STACK_LINE(838)
					return this1->iterator();
				}
				return null();
			}
		};
		HX_STACK_LINE(838)
		for(::cpp::FastIterator_obj< ::luxe::Component > *__it = ::cpp::CreateFastIterator< ::luxe::Component >(_Function_1_1::Block(this));  __it->hasNext(); ){
			::luxe::Component _component = __it->next();
			_component->entity_origin_change(_origin);
		}
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,set_origin_from_transform,(void))

Void Entity_obj::set_parent_from_transform( ::phoenix::Transform _parent){
{
		HX_STACK_FRAME("luxe.Entity","set_parent_from_transform",0xc1ab18fc,"luxe.Entity.set_parent_from_transform","luxe/Entity.hx",847,0x55caa482)
		HX_STACK_THIS(this)
		HX_STACK_ARG(_parent,"_parent")
		struct _Function_1_1{
			inline static Dynamic Block( ::luxe::Entity_obj *__this){
				HX_STACK_FRAME("*","closure",0x5bdab937,"*.closure","luxe/Entity.hx",847,0x55caa482)
				{
					HX_STACK_LINE(847)
					::IMap this1 = __this->get_components();		HX_STACK_VAR(this1,"this1");
					HX_STACK_LINE(847)
					return this1->iterator();
				}
				return null();
			}
		};
		HX_STACK_LINE(847)
		for(::cpp::FastIterator_obj< ::luxe::Component > *__it = ::cpp::CreateFastIterator< ::luxe::Component >(_Function_1_1::Block(this));  __it->hasNext(); ){
			::luxe::Component _component = __it->next();
			_component->entity_parent_change(_parent);
		}
	}
return null();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,set_parent_from_transform,(void))

::phoenix::Vector Entity_obj::set_pos( ::phoenix::Vector _p){
	HX_STACK_FRAME("luxe.Entity","set_pos",0x94cc50c4,"luxe.Entity.set_pos","luxe/Entity.hx",857,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_ARG(_p,"_p")
	HX_STACK_LINE(857)
	return this->transform->set_pos(_p);
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,set_pos,return )

::phoenix::Vector Entity_obj::get_pos( ){
	HX_STACK_FRAME("luxe.Entity","get_pos",0xa1cabfb8,"luxe.Entity.get_pos","luxe/Entity.hx",863,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_LINE(863)
	return this->transform->get_pos();
}


HX_DEFINE_DYNAMIC_FUNC0(Entity_obj,get_pos,return )

::phoenix::Quaternion Entity_obj::set_rotation( ::phoenix::Quaternion _r){
	HX_STACK_FRAME("luxe.Entity","set_rotation",0x721fbc0e,"luxe.Entity.set_rotation","luxe/Entity.hx",871,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_ARG(_r,"_r")
	HX_STACK_LINE(871)
	return this->transform->set_rotation(_r);
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,set_rotation,return )

::phoenix::Quaternion Entity_obj::get_rotation( ){
	HX_STACK_FRAME("luxe.Entity","get_rotation",0x5d26989a,"luxe.Entity.get_rotation","luxe/Entity.hx",877,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_LINE(877)
	return this->transform->get_rotation();
}


HX_DEFINE_DYNAMIC_FUNC0(Entity_obj,get_rotation,return )

::phoenix::Vector Entity_obj::set_scale( ::phoenix::Vector _s){
	HX_STACK_FRAME("luxe.Entity","set_scale",0x4f4cedba,"luxe.Entity.set_scale","luxe/Entity.hx",885,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_ARG(_s,"_s")
	HX_STACK_LINE(885)
	return this->transform->set_scale(_s);
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,set_scale,return )

::phoenix::Vector Entity_obj::get_scale( ){
	HX_STACK_FRAME("luxe.Entity","get_scale",0x6bfc01ae,"luxe.Entity.get_scale","luxe/Entity.hx",891,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_LINE(891)
	return this->transform->get_scale();
}


HX_DEFINE_DYNAMIC_FUNC0(Entity_obj,get_scale,return )

::phoenix::Vector Entity_obj::set_origin( ::phoenix::Vector _origin){
	HX_STACK_FRAME("luxe.Entity","set_origin",0x22de44b6,"luxe.Entity.set_origin","luxe/Entity.hx",899,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_ARG(_origin,"_origin")
	HX_STACK_LINE(899)
	return this->transform->set_origin(_origin);
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,set_origin,return )

::phoenix::Vector Entity_obj::get_origin( ){
	HX_STACK_FRAME("luxe.Entity","get_origin",0x1f60a642,"luxe.Entity.get_origin","luxe/Entity.hx",906,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_LINE(906)
	return this->transform->get_origin();
}


HX_DEFINE_DYNAMIC_FUNC0(Entity_obj,get_origin,return )

::luxe::Entity Entity_obj::set_parent( ::luxe::Entity other){
	HX_STACK_FRAME("luxe.Entity","set_parent",0xc55b2ffa,"luxe.Entity.set_parent","luxe/Entity.hx",912,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_ARG(other,"other")
	HX_STACK_LINE(918)
	if (((this->get_parent() != null()))){
		HX_STACK_LINE(919)
		this->get_parent()->_remove_child(hx::ObjectPtr<OBJ_>(this));
	}
	HX_STACK_LINE(923)
	this->parent = other;
	HX_STACK_LINE(927)
	if (((this->get_parent() != null()))){
		HX_STACK_LINE(928)
		this->get_parent()->_add_child(hx::ObjectPtr<OBJ_>(this));
		HX_STACK_LINE(929)
		this->transform->set_parent(this->get_parent()->transform);
	}
	else{
		HX_STACK_LINE(931)
		this->transform->set_parent(null());
	}
	HX_STACK_LINE(934)
	return this->get_parent();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,set_parent,return )

::luxe::Entity Entity_obj::get_parent( ){
	HX_STACK_FRAME("luxe.Entity","get_parent",0xc1dd9186,"luxe.Entity.get_parent","luxe/Entity.hx",940,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_LINE(940)
	return this->parent;
}


HX_DEFINE_DYNAMIC_FUNC0(Entity_obj,get_parent,return )

::luxe::Scene Entity_obj::set_scene( ::luxe::Scene _scene){
	HX_STACK_FRAME("luxe.Entity","set_scene",0x4f4ff87c,"luxe.Entity.set_scene","luxe/Entity.hx",946,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_ARG(_scene,"_scene")
	HX_STACK_LINE(948)
	this->_detach_scene();
	HX_STACK_LINE(950)
	this->scene = _scene;
	HX_STACK_LINE(952)
	this->_attach_scene();
	HX_STACK_LINE(954)
	return this->get_scene();
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,set_scene,return )

::luxe::Scene Entity_obj::get_scene( ){
	HX_STACK_FRAME("luxe.Entity","get_scene",0x6bff0c70,"luxe.Entity.get_scene","luxe/Entity.hx",960,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_LINE(960)
	return this->scene;
}


HX_DEFINE_DYNAMIC_FUNC0(Entity_obj,get_scene,return )

bool Entity_obj::set_active( bool _active){
	HX_STACK_FRAME("luxe.Entity","set_active",0xee236c96,"luxe.Entity.set_active","luxe/Entity.hx",968,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_ARG(_active,"_active")
	HX_STACK_LINE(968)
	return this->active = _active;
}


HX_DEFINE_DYNAMIC_FUNC1(Entity_obj,set_active,return )

bool Entity_obj::get_active( ){
	HX_STACK_FRAME("luxe.Entity","get_active",0xeaa5ce22,"luxe.Entity.get_active","luxe/Entity.hx",974,0x55caa482)
	HX_STACK_THIS(this)
	HX_STACK_LINE(974)
	return this->active;
}


HX_DEFINE_DYNAMIC_FUNC0(Entity_obj,get_active,return )


Entity_obj::Entity_obj()
{
}

void Entity_obj::__Mark(HX_MARK_PARAMS)
{
	HX_MARK_BEGIN_CLASS(Entity);
	HX_MARK_MEMBER_NAME(events,"events");
	HX_MARK_MEMBER_NAME(children,"children");
	HX_MARK_MEMBER_NAME(destroyed,"destroyed");
	HX_MARK_MEMBER_NAME(inited,"inited");
	HX_MARK_MEMBER_NAME(started,"started");
	HX_MARK_MEMBER_NAME(fixed_rate,"fixed_rate");
	HX_MARK_MEMBER_NAME(parent,"parent");
	HX_MARK_MEMBER_NAME(scene,"scene");
	HX_MARK_MEMBER_NAME(active,"active");
	HX_MARK_MEMBER_NAME(transform,"transform");
	HX_MARK_MEMBER_NAME(_components,"_components");
	HX_MARK_MEMBER_NAME(fixed_rate_timer,"fixed_rate_timer");
	HX_MARK_MEMBER_NAME(options,"options");
	::luxe::Objects_obj::__Mark(HX_MARK_ARG);
	HX_MARK_END_CLASS();
}

void Entity_obj::__Visit(HX_VISIT_PARAMS)
{
	HX_VISIT_MEMBER_NAME(events,"events");
	HX_VISIT_MEMBER_NAME(children,"children");
	HX_VISIT_MEMBER_NAME(destroyed,"destroyed");
	HX_VISIT_MEMBER_NAME(inited,"inited");
	HX_VISIT_MEMBER_NAME(started,"started");
	HX_VISIT_MEMBER_NAME(fixed_rate,"fixed_rate");
	HX_VISIT_MEMBER_NAME(parent,"parent");
	HX_VISIT_MEMBER_NAME(scene,"scene");
	HX_VISIT_MEMBER_NAME(active,"active");
	HX_VISIT_MEMBER_NAME(transform,"transform");
	HX_VISIT_MEMBER_NAME(_components,"_components");
	HX_VISIT_MEMBER_NAME(fixed_rate_timer,"fixed_rate_timer");
	HX_VISIT_MEMBER_NAME(options,"options");
	::luxe::Objects_obj::__Visit(HX_VISIT_ARG);
}

Dynamic Entity_obj::__Field(const ::String &inName,bool inCallProp)
{
	switch(inName.length) {
	case 3:
		if (HX_FIELD_EQ(inName,"pos") ) { return get_pos(); }
		if (HX_FIELD_EQ(inName,"add") ) { return add_dyn(); }
		if (HX_FIELD_EQ(inName,"get") ) { return get_dyn(); }
		if (HX_FIELD_EQ(inName,"has") ) { return has_dyn(); }
		break;
	case 4:
		if (HX_FIELD_EQ(inName,"init") ) { return init_dyn(); }
		break;
	case 5:
		if (HX_FIELD_EQ(inName,"scene") ) { return inCallProp ? get_scene() : scene; }
		if (HX_FIELD_EQ(inName,"scale") ) { return get_scale(); }
		if (HX_FIELD_EQ(inName,"_init") ) { return _init_dyn(); }
		break;
	case 6:
		if (HX_FIELD_EQ(inName,"events") ) { return events; }
		if (HX_FIELD_EQ(inName,"inited") ) { return inited; }
		if (HX_FIELD_EQ(inName,"parent") ) { return inCallProp ? get_parent() : parent; }
		if (HX_FIELD_EQ(inName,"active") ) { return inCallProp ? get_active() : active; }
		if (HX_FIELD_EQ(inName,"origin") ) { return get_origin(); }
		if (HX_FIELD_EQ(inName,"update") ) { return update_dyn(); }
		if (HX_FIELD_EQ(inName,"remove") ) { return remove_dyn(); }
		if (HX_FIELD_EQ(inName,"_reset") ) { return _reset_dyn(); }
		if (HX_FIELD_EQ(inName,"_keyup") ) { return _keyup_dyn(); }
		break;
	case 7:
		if (HX_FIELD_EQ(inName,"started") ) { return started; }
		if (HX_FIELD_EQ(inName,"options") ) { return options; }
		if (HX_FIELD_EQ(inName,"onreset") ) { return onreset_dyn(); }
		if (HX_FIELD_EQ(inName,"onkeyup") ) { return onkeyup_dyn(); }
		if (HX_FIELD_EQ(inName,"get_any") ) { return get_any_dyn(); }
		if (HX_FIELD_EQ(inName,"destroy") ) { return destroy_dyn(); }
		if (HX_FIELD_EQ(inName,"_update") ) { return _update_dyn(); }
		if (HX_FIELD_EQ(inName,"_listen") ) { return _listen_dyn(); }
		if (HX_FIELD_EQ(inName,"set_pos") ) { return set_pos_dyn(); }
		if (HX_FIELD_EQ(inName,"get_pos") ) { return get_pos_dyn(); }
		break;
	case 8:
		if (HX_FIELD_EQ(inName,"children") ) { return children; }
		if (HX_FIELD_EQ(inName,"rotation") ) { return get_rotation(); }
		if (HX_FIELD_EQ(inName,"_keydown") ) { return _keydown_dyn(); }
		if (HX_FIELD_EQ(inName,"_mouseup") ) { return _mouseup_dyn(); }
		if (HX_FIELD_EQ(inName,"_touchup") ) { return _touchup_dyn(); }
		if (HX_FIELD_EQ(inName,"_inputup") ) { return _inputup_dyn(); }
		break;
	case 9:
		if (HX_FIELD_EQ(inName,"destroyed") ) { return destroyed; }
		if (HX_FIELD_EQ(inName,"transform") ) { return transform; }
		if (HX_FIELD_EQ(inName,"ondestroy") ) { return ondestroy_dyn(); }
		if (HX_FIELD_EQ(inName,"onkeydown") ) { return onkeydown_dyn(); }
		if (HX_FIELD_EQ(inName,"oninputup") ) { return oninputup_dyn(); }
		if (HX_FIELD_EQ(inName,"onmouseup") ) { return onmouseup_dyn(); }
		if (HX_FIELD_EQ(inName,"ontouchup") ) { return ontouchup_dyn(); }
		if (HX_FIELD_EQ(inName,"_unlisten") ) { return _unlisten_dyn(); }
		if (HX_FIELD_EQ(inName,"set_scale") ) { return set_scale_dyn(); }
		if (HX_FIELD_EQ(inName,"get_scale") ) { return get_scale_dyn(); }
		if (HX_FIELD_EQ(inName,"set_scene") ) { return set_scene_dyn(); }
		if (HX_FIELD_EQ(inName,"get_scene") ) { return get_scene_dyn(); }
		break;
	case 10:
		if (HX_FIELD_EQ(inName,"components") ) { return get_components(); }
		if (HX_FIELD_EQ(inName,"fixed_rate") ) { return inCallProp ? get_fixed_rate() : fixed_rate; }
		if (HX_FIELD_EQ(inName,"_textinput") ) { return _textinput_dyn(); }
		if (HX_FIELD_EQ(inName,"_mousedown") ) { return _mousedown_dyn(); }
		if (HX_FIELD_EQ(inName,"_mousemove") ) { return _mousemove_dyn(); }
		if (HX_FIELD_EQ(inName,"_touchdown") ) { return _touchdown_dyn(); }
		if (HX_FIELD_EQ(inName,"_touchmove") ) { return _touchmove_dyn(); }
		if (HX_FIELD_EQ(inName,"_gamepadup") ) { return _gamepadup_dyn(); }
		if (HX_FIELD_EQ(inName,"_inputdown") ) { return _inputdown_dyn(); }
		if (HX_FIELD_EQ(inName,"_add_child") ) { return _add_child_dyn(); }
		if (HX_FIELD_EQ(inName,"set_origin") ) { return set_origin_dyn(); }
		if (HX_FIELD_EQ(inName,"get_origin") ) { return get_origin_dyn(); }
		if (HX_FIELD_EQ(inName,"set_parent") ) { return set_parent_dyn(); }
		if (HX_FIELD_EQ(inName,"get_parent") ) { return get_parent_dyn(); }
		if (HX_FIELD_EQ(inName,"set_active") ) { return set_active_dyn(); }
		if (HX_FIELD_EQ(inName,"get_active") ) { return get_active_dyn(); }
		break;
	case 11:
		if (HX_FIELD_EQ(inName,"_components") ) { return _components; }
		if (HX_FIELD_EQ(inName,"ontextinput") ) { return ontextinput_dyn(); }
		if (HX_FIELD_EQ(inName,"oninputdown") ) { return oninputdown_dyn(); }
		if (HX_FIELD_EQ(inName,"onmousedown") ) { return onmousedown_dyn(); }
		if (HX_FIELD_EQ(inName,"onmousemove") ) { return onmousemove_dyn(); }
		if (HX_FIELD_EQ(inName,"ontouchdown") ) { return ontouchdown_dyn(); }
		if (HX_FIELD_EQ(inName,"ontouchmove") ) { return ontouchmove_dyn(); }
		if (HX_FIELD_EQ(inName,"ongamepadup") ) { return ongamepadup_dyn(); }
		if (HX_FIELD_EQ(inName,"_mousewheel") ) { return _mousewheel_dyn(); }
		break;
	case 12:
		if (HX_FIELD_EQ(inName,"onmousewheel") ) { return onmousewheel_dyn(); }
		if (HX_FIELD_EQ(inName,"_gamepadaxis") ) { return _gamepadaxis_dyn(); }
		if (HX_FIELD_EQ(inName,"_gamepaddown") ) { return _gamepaddown_dyn(); }
		if (HX_FIELD_EQ(inName,"set_rotation") ) { return set_rotation_dyn(); }
		if (HX_FIELD_EQ(inName,"get_rotation") ) { return get_rotation_dyn(); }
		break;
	case 13:
		if (HX_FIELD_EQ(inName,"onfixedupdate") ) { return onfixedupdate_dyn(); }
		if (HX_FIELD_EQ(inName,"ongamepaddown") ) { return ongamepaddown_dyn(); }
		if (HX_FIELD_EQ(inName,"ongamepadaxis") ) { return ongamepadaxis_dyn(); }
		if (HX_FIELD_EQ(inName,"_fixed_update") ) { return _fixed_update_dyn(); }
		if (HX_FIELD_EQ(inName,"_detach_scene") ) { return _detach_scene_dyn(); }
		if (HX_FIELD_EQ(inName,"_attach_scene") ) { return _attach_scene_dyn(); }
		if (HX_FIELD_EQ(inName,"_remove_child") ) { return _remove_child_dyn(); }
		break;
	case 14:
		if (HX_FIELD_EQ(inName,"_gamepaddevice") ) { return _gamepaddevice_dyn(); }
		if (HX_FIELD_EQ(inName,"get_fixed_rate") ) { return get_fixed_rate_dyn(); }
		if (HX_FIELD_EQ(inName,"set_fixed_rate") ) { return set_fixed_rate_dyn(); }
		if (HX_FIELD_EQ(inName,"get_components") ) { return get_components_dyn(); }
		break;
	case 15:
		if (HX_FIELD_EQ(inName,"ongamepaddevice") ) { return ongamepaddevice_dyn(); }
		break;
	case 16:
		if (HX_FIELD_EQ(inName,"fixed_rate_timer") ) { return fixed_rate_timer; }
		break;
	case 22:
		if (HX_FIELD_EQ(inName,"_stop_fixed_rate_timer") ) { return _stop_fixed_rate_timer_dyn(); }
		if (HX_FIELD_EQ(inName,"set_pos_from_transform") ) { return set_pos_from_transform_dyn(); }
		break;
	case 23:
		if (HX_FIELD_EQ(inName,"_start_fixed_rate_timer") ) { return _start_fixed_rate_timer_dyn(); }
		break;
	case 24:
		if (HX_FIELD_EQ(inName,"set_scale_from_transform") ) { return set_scale_from_transform_dyn(); }
		break;
	case 25:
		if (HX_FIELD_EQ(inName,"set_origin_from_transform") ) { return set_origin_from_transform_dyn(); }
		if (HX_FIELD_EQ(inName,"set_parent_from_transform") ) { return set_parent_from_transform_dyn(); }
		break;
	case 27:
		if (HX_FIELD_EQ(inName,"set_rotation_from_transform") ) { return set_rotation_from_transform_dyn(); }
	}
	return super::__Field(inName,inCallProp);
}

Dynamic Entity_obj::__SetField(const ::String &inName,const Dynamic &inValue,bool inCallProp)
{
	switch(inName.length) {
	case 3:
		if (HX_FIELD_EQ(inName,"pos") ) { return set_pos(inValue); }
		break;
	case 5:
		if (HX_FIELD_EQ(inName,"scene") ) { if (inCallProp) return set_scene(inValue);scene=inValue.Cast< ::luxe::Scene >(); return inValue; }
		if (HX_FIELD_EQ(inName,"scale") ) { return set_scale(inValue); }
		break;
	case 6:
		if (HX_FIELD_EQ(inName,"events") ) { events=inValue.Cast< ::luxe::Events >(); return inValue; }
		if (HX_FIELD_EQ(inName,"inited") ) { inited=inValue.Cast< bool >(); return inValue; }
		if (HX_FIELD_EQ(inName,"parent") ) { if (inCallProp) return set_parent(inValue);parent=inValue.Cast< ::luxe::Entity >(); return inValue; }
		if (HX_FIELD_EQ(inName,"active") ) { if (inCallProp) return set_active(inValue);active=inValue.Cast< bool >(); return inValue; }
		if (HX_FIELD_EQ(inName,"origin") ) { return set_origin(inValue); }
		break;
	case 7:
		if (HX_FIELD_EQ(inName,"started") ) { started=inValue.Cast< bool >(); return inValue; }
		if (HX_FIELD_EQ(inName,"options") ) { options=inValue.Cast< Dynamic >(); return inValue; }
		break;
	case 8:
		if (HX_FIELD_EQ(inName,"children") ) { children=inValue.Cast< Array< ::Dynamic > >(); return inValue; }
		if (HX_FIELD_EQ(inName,"rotation") ) { return set_rotation(inValue); }
		break;
	case 9:
		if (HX_FIELD_EQ(inName,"destroyed") ) { destroyed=inValue.Cast< bool >(); return inValue; }
		if (HX_FIELD_EQ(inName,"transform") ) { transform=inValue.Cast< ::phoenix::Transform >(); return inValue; }
		break;
	case 10:
		if (HX_FIELD_EQ(inName,"fixed_rate") ) { if (inCallProp) return set_fixed_rate(inValue);fixed_rate=inValue.Cast< Float >(); return inValue; }
		break;
	case 11:
		if (HX_FIELD_EQ(inName,"_components") ) { _components=inValue.Cast< ::luxe::components::Components >(); return inValue; }
		break;
	case 16:
		if (HX_FIELD_EQ(inName,"fixed_rate_timer") ) { fixed_rate_timer=inValue.Cast< ::snow::utils::Timer >(); return inValue; }
	}
	return super::__SetField(inName,inValue,inCallProp);
}

void Entity_obj::__GetFields(Array< ::String> &outFields)
{
	outFields->push(HX_CSTRING("components"));
	outFields->push(HX_CSTRING("events"));
	outFields->push(HX_CSTRING("children"));
	outFields->push(HX_CSTRING("destroyed"));
	outFields->push(HX_CSTRING("inited"));
	outFields->push(HX_CSTRING("started"));
	outFields->push(HX_CSTRING("fixed_rate"));
	outFields->push(HX_CSTRING("parent"));
	outFields->push(HX_CSTRING("scene"));
	outFields->push(HX_CSTRING("active"));
	outFields->push(HX_CSTRING("transform"));
	outFields->push(HX_CSTRING("pos"));
	outFields->push(HX_CSTRING("rotation"));
	outFields->push(HX_CSTRING("scale"));
	outFields->push(HX_CSTRING("origin"));
	outFields->push(HX_CSTRING("_components"));
	outFields->push(HX_CSTRING("fixed_rate_timer"));
	outFields->push(HX_CSTRING("options"));
	super::__GetFields(outFields);
};

static ::String sStaticFields[] = {
	String(null()) };

#if HXCPP_SCRIPTABLE
static hx::StorageInfo sMemberStorageInfo[] = {
	{hx::fsObject /*::luxe::Events*/ ,(int)offsetof(Entity_obj,events),HX_CSTRING("events")},
	{hx::fsObject /*Array< ::Dynamic >*/ ,(int)offsetof(Entity_obj,children),HX_CSTRING("children")},
	{hx::fsBool,(int)offsetof(Entity_obj,destroyed),HX_CSTRING("destroyed")},
	{hx::fsBool,(int)offsetof(Entity_obj,inited),HX_CSTRING("inited")},
	{hx::fsBool,(int)offsetof(Entity_obj,started),HX_CSTRING("started")},
	{hx::fsFloat,(int)offsetof(Entity_obj,fixed_rate),HX_CSTRING("fixed_rate")},
	{hx::fsObject /*::luxe::Entity*/ ,(int)offsetof(Entity_obj,parent),HX_CSTRING("parent")},
	{hx::fsObject /*::luxe::Scene*/ ,(int)offsetof(Entity_obj,scene),HX_CSTRING("scene")},
	{hx::fsBool,(int)offsetof(Entity_obj,active),HX_CSTRING("active")},
	{hx::fsObject /*::phoenix::Transform*/ ,(int)offsetof(Entity_obj,transform),HX_CSTRING("transform")},
	{hx::fsObject /*::luxe::components::Components*/ ,(int)offsetof(Entity_obj,_components),HX_CSTRING("_components")},
	{hx::fsObject /*::snow::utils::Timer*/ ,(int)offsetof(Entity_obj,fixed_rate_timer),HX_CSTRING("fixed_rate_timer")},
	{hx::fsObject /*Dynamic*/ ,(int)offsetof(Entity_obj,options),HX_CSTRING("options")},
	{ hx::fsUnknown, 0, null()}
};
#endif

static ::String sMemberFields[] = {
	HX_CSTRING("events"),
	HX_CSTRING("children"),
	HX_CSTRING("destroyed"),
	HX_CSTRING("inited"),
	HX_CSTRING("started"),
	HX_CSTRING("fixed_rate"),
	HX_CSTRING("parent"),
	HX_CSTRING("scene"),
	HX_CSTRING("active"),
	HX_CSTRING("transform"),
	HX_CSTRING("_components"),
	HX_CSTRING("fixed_rate_timer"),
	HX_CSTRING("options"),
	HX_CSTRING("init"),
	HX_CSTRING("update"),
	HX_CSTRING("onfixedupdate"),
	HX_CSTRING("onreset"),
	HX_CSTRING("ondestroy"),
	HX_CSTRING("onkeyup"),
	HX_CSTRING("onkeydown"),
	HX_CSTRING("ontextinput"),
	HX_CSTRING("oninputdown"),
	HX_CSTRING("oninputup"),
	HX_CSTRING("onmousedown"),
	HX_CSTRING("onmouseup"),
	HX_CSTRING("onmousemove"),
	HX_CSTRING("onmousewheel"),
	HX_CSTRING("ontouchdown"),
	HX_CSTRING("ontouchup"),
	HX_CSTRING("ontouchmove"),
	HX_CSTRING("ongamepadup"),
	HX_CSTRING("ongamepaddown"),
	HX_CSTRING("ongamepadaxis"),
	HX_CSTRING("ongamepaddevice"),
	HX_CSTRING("add"),
	HX_CSTRING("remove"),
	HX_CSTRING("get"),
	HX_CSTRING("get_any"),
	HX_CSTRING("has"),
	HX_CSTRING("_init"),
	HX_CSTRING("_reset"),
	HX_CSTRING("destroy"),
	HX_CSTRING("_update"),
	HX_CSTRING("_fixed_update"),
	HX_CSTRING("_listen"),
	HX_CSTRING("_unlisten"),
	HX_CSTRING("_detach_scene"),
	HX_CSTRING("_attach_scene"),
	HX_CSTRING("_keyup"),
	HX_CSTRING("_keydown"),
	HX_CSTRING("_textinput"),
	HX_CSTRING("_mousedown"),
	HX_CSTRING("_mouseup"),
	HX_CSTRING("_mousewheel"),
	HX_CSTRING("_mousemove"),
	HX_CSTRING("_touchdown"),
	HX_CSTRING("_touchup"),
	HX_CSTRING("_touchmove"),
	HX_CSTRING("_gamepadaxis"),
	HX_CSTRING("_gamepaddown"),
	HX_CSTRING("_gamepadup"),
	HX_CSTRING("_gamepaddevice"),
	HX_CSTRING("_inputdown"),
	HX_CSTRING("_inputup"),
	HX_CSTRING("get_fixed_rate"),
	HX_CSTRING("set_fixed_rate"),
	HX_CSTRING("_stop_fixed_rate_timer"),
	HX_CSTRING("_start_fixed_rate_timer"),
	HX_CSTRING("get_components"),
	HX_CSTRING("_add_child"),
	HX_CSTRING("_remove_child"),
	HX_CSTRING("set_pos_from_transform"),
	HX_CSTRING("set_rotation_from_transform"),
	HX_CSTRING("set_scale_from_transform"),
	HX_CSTRING("set_origin_from_transform"),
	HX_CSTRING("set_parent_from_transform"),
	HX_CSTRING("set_pos"),
	HX_CSTRING("get_pos"),
	HX_CSTRING("set_rotation"),
	HX_CSTRING("get_rotation"),
	HX_CSTRING("set_scale"),
	HX_CSTRING("get_scale"),
	HX_CSTRING("set_origin"),
	HX_CSTRING("get_origin"),
	HX_CSTRING("set_parent"),
	HX_CSTRING("get_parent"),
	HX_CSTRING("set_scene"),
	HX_CSTRING("get_scene"),
	HX_CSTRING("set_active"),
	HX_CSTRING("get_active"),
	String(null()) };

static void sMarkStatics(HX_MARK_PARAMS) {
	HX_MARK_MEMBER_NAME(Entity_obj::__mClass,"__mClass");
};

#ifdef HXCPP_VISIT_ALLOCS
static void sVisitStatics(HX_VISIT_PARAMS) {
	HX_VISIT_MEMBER_NAME(Entity_obj::__mClass,"__mClass");
};

#endif

Class Entity_obj::__mClass;

void Entity_obj::__register()
{
	hx::Static(__mClass) = hx::RegisterClass(HX_CSTRING("luxe.Entity"), hx::TCanCast< Entity_obj> ,sStaticFields,sMemberFields,
	&__CreateEmpty, &__Create,
	&super::__SGetClass(), 0, sMarkStatics
#ifdef HXCPP_VISIT_ALLOCS
    , sVisitStatics
#endif
#ifdef HXCPP_SCRIPTABLE
    , sMemberStorageInfo
#endif
);
}

void Entity_obj::__boot()
{
}

} // end namespace luxe
