44 lines
1.1 KiB
Lua
44 lines
1.1 KiB
Lua
require("common.class")
|
|
local ServiceField = require("titlescreen.components.servicefield")
|
|
|
|
---@class InputButtonField: ServiceField
|
|
---@field button integer
|
|
local InputButtonField = {
|
|
__name = "InputButtonField"
|
|
}
|
|
|
|
---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
|
|
|
|
return InputButtonField
|