Uh oh!
There was an error while loading. Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathToggleParameter.lua
More file actions
Latest commit
38 lines (32 loc) · 1.15 KB
/
Copy pathToggleParameter.lua
File metadata and controls
38 lines (32 loc) · 1.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
---
--- A parameter that the user can adjust by pressing keys in LOVE
---
---@classToggleParameter
ToggleParameter=CpObject()
---@paramnoCallbackboolean|nil if true, just change the value, do not call the callback, for instance, a parameter
--- which does not require the course to be regenerated because only affects the display
functionToggleParameter:init(name, value, toggle, noCallback)
self.name=name
self.value=value
self.toggle=toggle
self.noCallback=noCallback
end
functionToggleParameter:onKey(key, callback)
ifkey==self.togglethen
self.value=notself.value
ifnotself.noCallbackthen
callback()
end
end
end
functionToggleParameter:get()
returnself.value
end
---@returntable to use with love.graphics.print()
functionToggleParameter:toColoredText(nameColor, keyColor, valueColor)
return {nameColor, self.name, keyColor, string.format(' (%s): ', self.toggle),
valueColor, tostring(self.value)}
end
functionToggleParameter:__tostring()
returnstring.format('%s (%s): %s', self.name, self.toggle, self.value)
end