$#include "Graphics/Skeleton.h" struct Bone { Bone(); ~Bone(); String name_ @ name; StringHash nameHash_ @ nameHash; unsigned parentIndex_ @ parentIndex; Vector3 initialPosition_ @ initialPosition; Quaternion initialRotation_ @ initialRotation; Vector3 initialScale_ @ initialScale; Matrix3x4 offsetMatrix_ @ offsetMatrix; bool animated_ @ animated; unsigned char collisionMask_ @ collisionMask; float radius_ @ radius; BoundingBox boundingBox_ @ boundingBox; Node* node_ @ node; }; class Skeleton { unsigned GetNumBones() const; Bone* GetRootBone(); Bone* GetBone(const String name); Bone* GetBone(unsigned index); unsigned GetBoneIndex(const String boneName) const; unsigned GetBoneIndex(const Bone* bone) const; Bone* GetBoneParent(const Bone* bone); tolua_readonly tolua_property__get_set unsigned numBones; tolua_readonly tolua_property__get_set Bone* rootBone; }; ${ #define TOLUA_DISABLE_tolua_set_Bone_unsigned_collisionMask static int tolua_set_Bone_unsigned_collisionMask(lua_State* tolua_S) { Bone* self = (Bone*) tolua_tousertype(tolua_S,1,0); #ifndef TOLUA_RELEASE tolua_Error tolua_err; if (!self) tolua_error(tolua_S,"invalid 'self' in accessing variable 'collisionMask_'",NULL); if (!tolua_isnumber(tolua_S,2,0,&tolua_err)) tolua_error(tolua_S,"#vinvalid type in variable assignment.",&tolua_err); #endif self->collisionMask_ = BoneCollisionShape((unsigned char) tolua_tonumber(tolua_S,2,0)) ; return 0; } $}