Merge remote-tracking branch 'refs/remotes/origin/master' into enet_wip_nothing_to_see_here

This commit is contained in:
Jérôme Leclercq
2017-02-22 15:32:28 +01:00
2 changed files with 21 additions and 0 deletions

View File

@@ -20,6 +20,7 @@ namespace Nz
RigidBody2D::RigidBody2D(PhysWorld2D* world, float mass, Collider2DRef geom) :
m_geom(),
m_userData(nullptr),
m_world(world),
m_gravityFactor(1.f),
m_mass(1.f)
@@ -34,6 +35,7 @@ namespace Nz
RigidBody2D::RigidBody2D(const RigidBody2D& object) :
m_geom(object.m_geom),
m_userData(object.m_userData),
m_world(object.m_world),
m_gravityFactor(object.m_gravityFactor),
m_mass(0.f)
@@ -50,11 +52,14 @@ namespace Nz
RigidBody2D::RigidBody2D(RigidBody2D&& object) :
m_shapes(std::move(object.m_shapes)),
m_geom(std::move(object.m_geom)),
m_userData(object.m_userData),
m_handle(object.m_handle),
m_world(object.m_world),
m_gravityFactor(object.m_gravityFactor),
m_mass(object.m_mass)
{
cpBodySetUserData(m_handle, this);
object.m_handle = nullptr;
}
@@ -144,6 +149,11 @@ namespace Nz
return static_cast<float>(cpBodyGetAngle(m_handle));
}
void* RigidBody2D::GetUserdata() const
{
return m_userData;
}
Vector2f RigidBody2D::GetVelocity() const
{
cpVect vel = cpBodyGetVelocity(m_handle);
@@ -242,6 +252,11 @@ namespace Nz
cpBodySetAngle(m_handle, rotation);
}
void RigidBody2D::SetUserdata(void* ud)
{
m_userData = ud;
}
void RigidBody2D::SetVelocity(const Vector2f& velocity)
{
cpBodySetVelocity(m_handle, cpv(velocity.x, velocity.y));
@@ -262,8 +277,11 @@ namespace Nz
m_gravityFactor = object.m_gravityFactor;
m_mass = object.m_mass;
m_shapes = std::move(object.m_shapes);
m_userData = object.m_userData;
m_world = object.m_world;
cpBodySetUserData(m_handle, this);
object.m_handle = nullptr;
return *this;