Files
enduro2d/samples/bin/library/scripts/emmy/components/colliders.lua

78 lines
1.6 KiB
Lua

---@class rect_collider
local rect_collider = {
---@type boolean
enabled = true,
---@type boolean
disabled = false,
---@type v2f
size = v2f.zero(),
---@type v2f
pivot = v2f.new(0.5)
}
---@overload fun(self: rect_collider)
---@param self rect_collider
function rect_collider.enable(self) end
---@overload fun(self: rect_collider)
---@param self rect_collider
function rect_collider.disable(self) end
---@type rect_collider
_G.rect_collider = _G.rect_collider or rect_collider
---@class circle_collider
local circle_collider = {
---@type boolean
enabled = true,
---@type boolean
disabled = false,
---@type number
radius = 0,
---@type v2f
pivot = v2f.new(0.5)
}
---@overload fun(self: circle_collider)
---@param self circle_collider
function circle_collider.enable(self) end
---@overload fun(self: circle_collider)
---@param self circle_collider
function circle_collider.disable(self) end
---@type circle_collider
_G.circle_collider = _G.circle_collider or circle_collider
---@class polygon_collider
local polygon_collider = {
---@type boolean
enabled = true,
---@type boolean
disabled = false,
---@type v2f[]
points = {},
---@type v2f
pivot = v2f.new(0.5)
}
---@overload fun(self: polygon_collider)
---@param self polygon_collider
function polygon_collider.enable(self) end
---@overload fun(self: polygon_collider)
---@param self polygon_collider
function polygon_collider.disable(self) end
---@type polygon_collider
_G.polygon_collider = _G.polygon_collider or polygon_collider