Files
i-mic-rts/lib/states/menus/pause_menu.rb

44 lines
948 B
Ruby

class IMICRTS
class PauseMenu < CyberarmEngine::GuiState
def setup
stack(width: IMICRTS::MENU_WIDTH, height: 1.0, padding: IMICRTS::MENU_PADDING) do
background [0xff555555, Gosu::Color::GRAY]
label "Paused", text_size: 78, margin: 20
button "Resume", width: 1.0 do
pop_state
end
button "Settings", width: 1.0 do
push_state(SettingsMenu)
end
button "Quit", width: 1.0, margin_top: 20 do
# TODO: Confirm
previous_state.director.finalize
if previous_state&.director.local_game?
push_state(SoloLobbyMenu)
else
push_state(MultiplayerLobbyMenu)
end
end
end
end
def draw
previous_state&.draw
Gosu.flush
super
end
def update
super
previous_state&.director.update unless previous_state&.director.local_game?
end
end
end