FieldMenu.cs 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. using Microsoft.Xna.Framework;
  2. using System.Linq;
  3. namespace OpenVIII.Fields
  4. {
  5. /// <summary>
  6. /// Currently a menu for field screen to enable or disable elements or test scripts.
  7. /// </summary>
  8. public class FieldMenu : Menu
  9. {
  10. #region Enums
  11. private enum Mode
  12. {
  13. On
  14. }
  15. #endregion Enums
  16. #region Methods
  17. public static FieldMenu Create() => Create<FieldMenu>();
  18. public override bool Inputs()
  19. {
  20. var r = false;
  21. switch ((Mode)GetMode())
  22. {
  23. case Mode.On:
  24. r = Data[GetMode()].Inputs() || r;
  25. break;
  26. }
  27. r = base.Inputs() || r;
  28. return r;
  29. }
  30. protected override void Init()
  31. {
  32. //Size = new Vector2(960f, 720f);
  33. Size = new Vector2(1280f, 720f);
  34. base.Init();
  35. Data[Mode.On] = IGMData.FieldDebugControls.Create(new Rectangle(0, 0, 480, 360));
  36. Data.Where(x => x.Value != null).ForEach(x => ModeChangeHandler += x.Value.ModeChangeEvent);
  37. SetMode(Mode.On);
  38. }
  39. #endregion Methods
  40. }
  41. }