ExperimentalGear/scripts/titlescreen/components/inputbuttonfield.lua

44 lines
1.1 KiB
Lua
Raw Normal View History

require("common.class")
local ServiceField = require("api.page.servicefield")
---@class InputButtonField: ServiceField
---@field button integer
2022-04-05 23:53:19 +02:00
local InputButtonField = {
__name = "InputButtonField"
2022-04-05 23:53:19 +02:00
}
---Create a new InputButtonField instance
---@param params? InputButtonField # initial parameters
---@return InputButtonField
function InputButtonField.new(params)
params = params or {}
params.button = params.button or nil
return CreateInstance(InputButtonField, params, ServiceField)
end
---@param obj? any # message object for the field
function InputButtonField:activate(obj) end
---@param obj? any # message object for the field
function InputButtonField:focus(obj) end
---@param obj? any # message object for the field
function InputButtonField:deactivate(obj) end
---@param deltaTime number # frametime in seconds
function InputButtonField:drawValue(deltaTime)
gfx.Translate(self.VALUE_OFFSETX, 0)
if not self.button then
gfx.Text("<BUTTON NOT SET>", 0, 0)
return
end
self.value = game.GetButton(self.button) and "ON" or "OFF"
gfx.Text(self.value, 0, 0)
end
2022-04-05 23:53:19 +02:00
return InputButtonField