From b8614162cdbb3817a7a58ceadf8b6b0d05fae952 Mon Sep 17 00:00:00 2001 From: Frederico Linhares Date: Wed, 24 May 2023 14:50:01 -0300 Subject: feat Recreate the Menu --- test/src/mode/title.rb | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 test/src/mode/title.rb (limited to 'test/src/mode/title.rb') diff --git a/test/src/mode/title.rb b/test/src/mode/title.rb new file mode 100644 index 0000000..6347b70 --- /dev/null +++ b/test/src/mode/title.rb @@ -0,0 +1,49 @@ +# Copyright 2022-2023 Frederico de Oliveira Linhares +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +module Mode + class Title + def initialize() + @view = CandyGear::View2D.new( + CandyGear::Vector4D.new(0, 0, 1280, 720), 640, 360); + CandyGear.views = [@view]; + + @menu = CandyGear::Menu.new( + @view, + $global_data[:menu_view], 10, 10, + [ + {text: "Demo", action: -> {change_mode(:demo);}}, + {text: "Quit", action: -> {CandyGear.quit();}} + ]); + end + + def key_down(key) + case key + when CandyGear::Key::I + @menu.pred_opt(); + when CandyGear::Key::K + @menu.next_opt(); + when CandyGear::Key::F + @menu.activate(); + end + end + + def key_up(key) + end + + def tick() + @menu.draw(); + end + end +end -- cgit v1.2.3