Create a joint between a body and the mouse.
This joint actually connects the body to a fixed point in the world. To make it follow the mouse, the fixed point must be updated every timestep (example below).
The advantage of using a MouseJoint instead of just changing a body position directly is that collisions and reactions to other joints are handled by the physics engine.
joint = love.physics.newMouseJoint( body, x, y )
Body body
number x
number y
Joint joint
function love.load() world = love.physics.newWorld(0, 0) body = love.physics.newBody(world, love.mouse.getX(), love.mouse.getY(), "dynamic") shape = love.physics.newCircleShape(20) fixture = love.physics.newFixture(body, shape) joint = love.physics.newMouseJoint(body, love.mouse.getPosition()) end function love.draw() love.graphics.circle("fill", body:getX(), body:getY(), shape:getRadius()) end function love.update(dt) joint:setTarget(love.mouse.getPosition()) world:update(dt) end
© 2006–2016 LÖVE Development Team
Licensed under the GNU Free Documentation License, Version 1.3.
https://love2d.org/wiki/love.physics.newMouseJoint