mirror of
https://github.com/britzl/monarch.git
synced 2025-06-27 02:17:53 +02:00
45 lines
1.5 KiB
Plaintext
45 lines
1.5 KiB
Plaintext
local monarch = require "monarch.monarch"
|
|
local transitions = require "monarch.transitions.gui"
|
|
|
|
function init(self)
|
|
msg.post(".", "acquire_input_focus")
|
|
self.ok = gui.get_node("ok_button")
|
|
self.cancel = gui.get_node("cancel_button")
|
|
self.about = gui.get_node("about_button")
|
|
gui.set_render_order(14)
|
|
|
|
gui.animate(gui.get_node("spinner"), gui.PROP_ROTATION, vmath.vector3(0, 0, -360), gui.EASING_INOUTQUAD, 2, 0, nil, gui.PLAYBACK_LOOP_FORWARD)
|
|
|
|
local transition = transitions.create(gui.get_node("root"))
|
|
.show_in(transitions.scale_in, gui.EASING_OUTBACK, 0.3, 0)
|
|
.show_out(transitions.scale_out, gui.EASING_INBACK, 0.3, 0)
|
|
.back_in(transitions.scale_in, gui.EASING_OUTBACK, 0.3, 0)
|
|
.back_out(transitions.scale_out, gui.EASING_INBACK, 0.3, 0)
|
|
monarch.on_transition("popup", transition)
|
|
end
|
|
|
|
function on_input(self, action_id, action)
|
|
if action_id == hash("touch") and action.released then
|
|
if gui.pick_node(self.ok, action.x, action.y) then
|
|
print("ok")
|
|
monarch.show(hash("confirm"), nil, { next = hash("pregame") }, function()
|
|
print("confirm show done")
|
|
end)
|
|
elseif gui.pick_node(self.cancel, action.x, action.y) then
|
|
print("cancel")
|
|
monarch.back(nil, nil, function()
|
|
print("back from popup done")
|
|
end)
|
|
elseif gui.pick_node(self.about, action.x, action.y) then
|
|
print("about")
|
|
monarch.show(hash("about"), { clear = true, reload = true }, nil, function()
|
|
print("about show done")
|
|
end)
|
|
end
|
|
end
|
|
end
|
|
|
|
function on_message(self, message_id, message, sender)
|
|
monarch.on_message(message_id, message, sender)
|
|
end
|