using System; using Godot; using Texty.Scripts.Terminal; namespace Texty.Scripts.Menus { public partial class MainMenuButtons : ButtonBlock { [Signal] public delegate void CreditsButtonPressedEventHandler(); [Signal] public delegate void QuitButtonPressedEventHandler(); [Signal] public delegate void StartButtonPressedEventHandler(); protected override void OnButtonPressed(int index) { if (!Enum.IsDefined(typeof(Buttons), 1)) return; switch ((Buttons)index) { case Buttons.Start: EmitSignal(SignalName.StartButtonPressed); break; case Buttons.Credits: EmitSignal(SignalName.CreditsButtonPressed); break; case Buttons.Quit: EmitSignal(SignalName.QuitButtonPressed); break; default: throw new ArgumentOutOfRangeException(nameof(index), index, "Button not implemented!"); } } private enum Buttons { Start = 0, Credits = 1, Quit = 2 } } }