tilerotate-demo/mouse.lua
2025-10-30 00:13:37 +03:00

26 lines
631 B
Lua

-- TODO: rewrite
---@class Mouse
---@field x integer
---@field y integer
---@field point GridPoint
---@field pressed boolean
---@field lastPressed boolean
Mouse = {
x = 0,
y = 0,
point = GridPoint:new( 0, 0 ),
pressed = false,
lastPressed = false
}
-- TODO: fix collision with other line's endpoint
function Mouse:update()
Mouse.lastPressed = Mouse.pressed
Mouse.x, Mouse.y = love.mouse.getPosition()
Mouse.x = Mouse.x - Config.cellSize
Mouse.y = Mouse.y - Config.cellSize
Mouse.point = GridPoint.snapCoords( Point:new( Mouse.x, Mouse.y ) )
Mouse.pressed = love.mouse.isDown( 1 )
end