BoxPanel.cs 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. using System.Collections.Generic;
  2. using Excel2Json;
  3. using Fort23.UTool;
  4. using GameLogic.Bag;
  5. using GameLogic.Player;
  6. namespace Fort23.Mono
  7. {
  8. [UIBinding(prefab = "BoxPanel")]
  9. public partial class BoxPanel : UIPanel
  10. {
  11. private OpenBoxConfig openBoxConfig;
  12. public static async void OpenBoxPanel()
  13. {
  14. BoxPanel boxPanel = await UIManager.Instance.LoadAndOpenPanel<BoxPanel>(null, layer: UILayer.Top);
  15. boxPanel.OpenPanel();
  16. }
  17. private void Init()
  18. {
  19. }
  20. protected override void AddEvent()
  21. {
  22. }
  23. protected override void DelEvent()
  24. {
  25. }
  26. public override void AddButtonEvent()
  27. {
  28. oneButton.onClick.AddListener(OnButtonCallBack);
  29. tenButton.onClick.AddListener(TenButtonCallBack);
  30. close.onClick.AddListener(CloseButtonCallBack);
  31. bg.onClick.AddListener(CloseButtonCallBack);
  32. }
  33. private void OnButtonCallBack()
  34. {
  35. List<ItemInfo> allIitem = DropManager.Instance.DropItem(openBoxConfig.reward);
  36. BagController.Instance.AddItem(allIitem);
  37. }
  38. private void TenButtonCallBack()
  39. {
  40. List<ItemInfo> allIitem = new List<ItemInfo>();
  41. for (int i = 0; i < 10; i++)
  42. {
  43. List<ItemInfo> currItem = DropManager.Instance.DropItem(openBoxConfig.reward);
  44. allIitem.AddRange(currItem);
  45. }
  46. BagController.Instance.AddItem(allIitem);
  47. }
  48. private void CloseButtonCallBack()
  49. {
  50. UIManager.Instance.HideUIUIPanel(this);
  51. }
  52. public void OpenPanel()
  53. {
  54. openBoxConfig = ConfigComponent.Instance.Get<OpenBoxConfig>(1);
  55. onCion.text = "x" + openBoxConfig.oneConsume;
  56. tenCion.text = "x" + openBoxConfig.tenConsume;
  57. }
  58. }
  59. }