diff --git a/source/objects/joint/wrap_joint.cpp b/source/objects/joint/wrap_joint.cpp index d6beb50d..a694bd67 100644 --- a/source/objects/joint/wrap_joint.cpp +++ b/source/objects/joint/wrap_joint.cpp @@ -2,6 +2,18 @@ #include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + using namespace love; // TODO: Finish this @@ -12,6 +24,28 @@ void Wrap_Joint::PushJoint(lua_State* L, Joint* joint) switch (joint->GetType()) { + case Joint::Type::JOINT_DISTANCE: + return luax::PushType(L, DistanceJoint::type, joint); + case Joint::Type::JOINT_FRICTION: + return luax::PushType(L, FrictionJoint::type, joint); + case Joint::Type::JOINT_GEAR: + return luax::PushType(L, GearJoint::type, joint); + case Joint::Type::JOINT_MOTOR: + return luax::PushType(L, MotorJoint::type, joint); + case Joint::Type::JOINT_MOUSE: + return luax::PushType(L, MouseJoint::type, joint); + case Joint::Type::JOINT_PRISMATIC: + return luax::PushType(L, PrismaticJoint::type, joint); + case Joint::Type::JOINT_PULLEY: + return luax::PushType(L, PulleyJoint::type, joint); + case Joint::Type::JOINT_REVOLUTE: + return luax::PushType(L, RevoluteJoint::type, joint); + case Joint::Type::JOINT_ROPE: + return luax::PushType(L, RopeJoint::type, joint); + case Joint::Type::JOINT_WELD: + return luax::PushType(L, WeldJoint::type, joint); + case Joint::Type::JOINT_WHEEL: + return luax::PushType(L, WheelJoint::type, joint); default: return lua_pushnil(L); }