Newer
Older
DungeonShooting / DungeonShooting_Godot / src / game / ui / mapEditorCreatePreinstall / MapEditorCreatePreinstallPanel.cs
@小李xl 小李xl on 7 Aug 2023 1 KB 更新Ui生成器
  1. using System.Collections.Generic;
  2. using System.Text.RegularExpressions;
  3. using Godot;
  4.  
  5. namespace UI.MapEditorCreatePreinstall;
  6.  
  7. public partial class MapEditorCreatePreinstallPanel : MapEditorCreatePreinstall
  8. {
  9. /// <summary>
  10. /// 填完数据后创建数据进行验证并创建数据对象, 如果验证失败, 则返回null
  11. /// </summary>
  12. /// <param name="roomPreinstalls"></param>
  13. /// <returns></returns>
  14. public RoomPreinstall GetRoomPreinstall(List<RoomPreinstall> roomPreinstalls)
  15. {
  16. var data = new RoomPreinstall();
  17. data.Name = S_PreinstallNameInput.Instance.Text;
  18. //检查名称是否合规
  19. if (string.IsNullOrEmpty(data.Name))
  20. {
  21. EditorWindowManager.ShowTips("错误", "预设名称不能为空!");
  22. return null;
  23. }
  24.  
  25. var index = roomPreinstalls.FindIndex(preinstall => preinstall.Name == data.Name);
  26. if (index >= 0)
  27. {
  28. EditorWindowManager.ShowTips("错误", "当前房间已经存在预设名称'" + data.Name + "', 请使用其他名称!");
  29. return null;
  30. }
  31.  
  32. data.Remark = S_RemarkInput.Instance.Text;
  33. data.WaveList = new List<List<MarkInfo>>();
  34. data.Weight = (int)S_WeightInput.Instance.Value;
  35. return data;
  36. }
  37. }