mirror of
https://github.com/Insality/druid.git
synced 2025-06-27 10:27:47 +02:00
60 lines
1.4 KiB
Lua
60 lines
1.4 KiB
Lua
local druid = require("druid.druid")
|
|
local const = require("druid.const")
|
|
|
|
|
|
function init(self)
|
|
self.druid = druid.new(self)
|
|
|
|
self.texts = {
|
|
self.druid:new_text("text_scale", nil, const.TEXT_ADJUST.DOWNSCALE),
|
|
self.druid:new_text("text_trim", nil, const.TEXT_ADJUST.TRIM),
|
|
self.druid:new_text("text_no_adjust", nil, const.TEXT_ADJUST.NO_ADJUST),
|
|
self.druid:new_text("text_scale_limited", nil, const.TEXT_ADJUST.DOWNSCALE_LIMITED)
|
|
:set_minimal_scale(0.5),
|
|
self.druid:new_text("text_scroll", nil, const.TEXT_ADJUST.SCROLL),
|
|
self.druid:new_text("text_scroll_scale", nil, const.TEXT_ADJUST.SCALE_THEN_SCROLL)
|
|
:set_minimal_scale(0.5)
|
|
}
|
|
|
|
local initial_texts = {}
|
|
local text_sizes = {}
|
|
for _, text in pairs(self.texts) do
|
|
initial_texts[text] = text.last_value
|
|
text_sizes[text] = 0
|
|
end
|
|
|
|
|
|
timer.delay(0.25, true, function()
|
|
for _, text in pairs(self.texts) do
|
|
local text_string = string.sub(initial_texts[text], 1, text_sizes[text])
|
|
text_sizes[text] = text_sizes[text] + 1
|
|
|
|
if text_sizes[text] > #initial_texts[text] then
|
|
text_sizes[text] = 0
|
|
end
|
|
|
|
text:set_to(text_string)
|
|
end
|
|
end)
|
|
end
|
|
|
|
|
|
function final(self)
|
|
self.druid:final()
|
|
end
|
|
|
|
|
|
function update(self, dt)
|
|
self.druid:update(dt)
|
|
end
|
|
|
|
|
|
function on_message(self, message_id, message, sender)
|
|
self.druid:on_message(message_id, message, sender)
|
|
end
|
|
|
|
|
|
function on_input(self, action_id, action)
|
|
return self.druid:on_input(action_id, action)
|
|
end
|