Перетаскивание мышью объекта
🛠️Настройка
- Заменить "sprite.png" своим файлом.
В данном примере лучше использовать не большие спрайты.
local sprite
--координаты спрайта
local spriteX, spriteY = 100, 100
local spriteW,spriteH
local isDragging = false
local offsetX, offsetY = 0, 0
function love.load()
sprite = love.graphics.newImage("sprite.png")
spriteW = sprite:getWidth()
spriteH = sprite:getHeight()
end
function love.mousepressed(x, y, button)
if button == 1 then
-- Проверка находится ли курсор над спрайтом в пределах границ спрайта
if x >= spriteX and x <= spriteX + spriteW and
y >= spriteY and y <= spriteY + spriteH then
isDragging = true
offsetX = x - spriteX
offsetY = y - spriteY
end
end
end
function love.mousemoved(x, y, dx, dy)
if isDragging then
spriteX = x - offsetX
spriteY = y - offsetY
end
end
function love.mousereleased(x, y, button)
if button == 1 then
isDragging = false
end
end
function love.draw()
love.graphics.setColor(1, 1, 1)
love.graphics.draw(sprite, spriteX, spriteY)
love.graphics.print("Drag the sprite with left mouse button", 10, 10)
end