DaoYouInfoPanel.cs 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664
  1. using System.Collections.Generic;
  2. using System.Linq;
  3. using Core.Audio;
  4. using Core.Language;
  5. using Excel2Json;
  6. using Fort23.Core;
  7. using Fort23.UTool;
  8. using GameLogic.Bag;
  9. using UnityEngine;
  10. namespace Fort23.Mono
  11. {
  12. [UIBinding(prefab = "DaoYouInfoPanel")]
  13. public partial class DaoYouInfoPanel : UIPanel
  14. {
  15. private AccountFileInfo.DaoYouData daoYouData;
  16. private DaoyouModelConfig _daoyouModelConfig;
  17. private ItemInfo currentSelectWidgetItem;
  18. List<WidgetItem> widgetItems = new List<WidgetItem>();
  19. List<WidgetItem> giveWidgetItems = new List<WidgetItem>();
  20. List<DaoYouLevelWidget> _daoYouLevelWidgets = new List<DaoYouLevelWidget>();
  21. List<DaoYouIdleEarningsWidget> _daoYouIdleEarningsWidgets = new List<DaoYouIdleEarningsWidget>();
  22. List<DaoYouaaFfixWidget> daoYouaaFfixWidgets = new List<DaoYouaaFfixWidget>();
  23. private TimerEntity _timerEntity = null;
  24. private DaoyouGiftConfig[] daoyouGiftConfigs;
  25. private void Init()
  26. {
  27. IsShowAppBar = true;
  28. isAddStack = true;
  29. }
  30. protected override void AddEvent()
  31. {
  32. }
  33. protected override void DelEvent()
  34. {
  35. }
  36. public override void AddButtonEvent()
  37. {
  38. Btn_CiZuiHelp.onClick.AddListener(() => { HelpTipPanel.OpenTipMessagePanel(10791); });
  39. Btn_SongLiHelp.onClick.AddListener(() => { HelpTipPanel.OpenTipMessagePanel(10790); });
  40. Btn_Emotion.onClick.AddListener((() => { ShowMessage(); }));
  41. Btn_Facorability.onClick.AddListener(() =>
  42. {
  43. Info.SetActive(false);
  44. Facorability.SetActive(true);
  45. });
  46. Btn_InfoMation.onClick.AddListener(() =>
  47. {
  48. Info.SetActive(true);
  49. Facorability.SetActive(false);
  50. });
  51. Btn_SendGift.onClick.AddListener(async () =>
  52. {
  53. if (daoYouData.favorabilityLv >= _daoYouLevelWidgets.Count)
  54. {
  55. TipMessagePanel.OpenTipMessagePanel("道友等级已到最高");
  56. return;
  57. }
  58. AppBarPanel.ClosePanel();
  59. await UpdateGiveGiftRoot();
  60. GiveGite.gameObject.SetActive(true);
  61. });
  62. Btn_Love.onClick.AddListener(() =>
  63. {
  64. ClosePoolGive();
  65. saiXuanType = 2;
  66. List<ItemInfo> showItems = SaiXuan(saiXuanType);
  67. CreatItem(showItems);
  68. });
  69. Btn_Tongyong.onClick.AddListener(() =>
  70. {
  71. ClosePoolGive();
  72. saiXuanType = 1;
  73. List<ItemInfo> showItems = SaiXuan(saiXuanType);
  74. CreatItem(showItems);
  75. });
  76. Btn_Eveent.onClick.AddListener(() =>
  77. {
  78. TipMessagePanel.OpenTipMessagePanel(LanguageManager.Instance.Text(10697, daoYouData.favorabilityLv));
  79. // if (daoYouData.favorabilityLv >= _daoyouModelConfig.EmotionLvforQuest
  80. // && !EventSystemManager.Instance.BagIsEvent(_daoyouModelConfig.QuestID)
  81. // && EventSystemManager.Instance.BagIsEvent(_daoyouModelConfig.EventCompleteforQuest)
  82. // && !EventSystemManager.Instance.IsEventCompleted(_daoyouModelConfig.QuestID))
  83. // {
  84. // AccountFileInfo.EventList eventList =
  85. // EventSystemManager.Instance.AddEvent(_daoyouModelConfig.QuestID);
  86. // AccountFileInfo.Instance.playerData.eventList.Add(eventList);
  87. // AccountFileInfo.Instance.SavePlayerData();
  88. // EventSystemManager.Instance.TriggerEvent(eventList);
  89. // Btn_Eveent.gameObject.SetActive(false);
  90. // }
  91. });
  92. Btn_Back.onClick.AddListener(() =>
  93. {
  94. ClosePoolGive();
  95. currentSelectWidgetItem = null;
  96. GiveGite.gameObject.SetActive(false);
  97. AppBarPanel.OpenPanel(this);
  98. });
  99. Btn_Add.onClick.AddListener(Add);
  100. Btn_Reduce.onClick.AddListener(Reduce);
  101. Btn_Max.onClick.AddListener(() =>
  102. {
  103. if (widgetItem1 == null)
  104. return;
  105. Slider_Give.value = (int)widgetItem1.itemInfo.count.Value;
  106. });
  107. Slider_Give.onValueChanged.AddListener((i) =>
  108. {
  109. count = (int)i;
  110. UpdateGiveItemCount();
  111. });
  112. Btn_Give.onClick.AddListener(() =>
  113. {
  114. if (widgetItem1 == null)
  115. {
  116. return;
  117. }
  118. //加好感
  119. if (widgetItem1 != null && daoyouGiftConfig.ID != 0)
  120. {
  121. PlayerManager.Instance.BagController.DeductItem(daoyouGiftConfig.ItemID, count);
  122. emotionConfig emotionConfig = ConfigComponent.Instance.Get<emotionConfig>(daoYouData.emotion);
  123. if (_daoyouModelConfig.PreferGiftID.Contains(daoyouGiftConfig.ItemID) &&
  124. !daoYouData.loveIds.Contains(daoyouGiftConfig.ItemID))
  125. {
  126. daoYouData.loveIds.Add(daoyouGiftConfig.ItemID);
  127. }
  128. //加经验
  129. for (int i = 0; i < count; i++)
  130. {
  131. int bl = Random.Range(emotionConfig.hanganUpRate[0], emotionConfig.hanganUpRate[1] + 1);
  132. //喜好礼物翻倍
  133. if (_daoyouModelConfig.PreferGiftID.Contains(daoyouGiftConfig.ItemID))
  134. {
  135. daoYouData.exp += (daoyouGiftConfig.emotionValue * bl * 0.001f *
  136. PlayerManager.Instance.gameConstantConfig.daolvfavoratePara *
  137. 0.01f);
  138. }
  139. else
  140. {
  141. daoYouData.exp += (daoyouGiftConfig.emotionValue * bl * 0.001f);
  142. }
  143. }
  144. DaoyouLevelupConfig[] configs = ConfigComponent.Instance.GetAll<DaoyouLevelupConfig>();
  145. for (var i = daoYouData.favorabilityLv; i < configs.Length; i++)
  146. {
  147. if (daoYouData.exp >= configs[i].exp)
  148. {
  149. daoYouData.exp -= configs[i].exp;
  150. daoYouData.favorabilityLv++;
  151. }
  152. else
  153. {
  154. break;
  155. }
  156. }
  157. AudioManager.Instance.PlayAudio("ui_shiyonghuode");
  158. AccountFileInfo.Instance.SavePlayerData();
  159. }
  160. //加心情
  161. else
  162. {
  163. if (daoYouData.emotionValue >= 100)
  164. {
  165. TipMessagePanel.OpenTipMessagePanel("心情已经到最高");
  166. return;
  167. }
  168. PlayerManager.Instance.BagController.DeductItem(widgetItem1.itemInfo.itemID, count);
  169. daoYouData.emotionValue += widgetItem1.itemInfo.config.associateVlaue[0];
  170. int emotionId = 4 - (int)(daoYouData.emotionValue / (100 / (float)3));
  171. if (emotionId > 3)
  172. emotionId = 3;
  173. daoYouData.emotion = emotionId;
  174. emotionConfig emotionConfig = ConfigComponent.Instance.Get<emotionConfig>(daoYouData.emotion);
  175. Text_message.text = LanguageManager.Instance.Text(emotionConfig.des);
  176. AccountFileInfo.Instance.SavePlayerData();
  177. }
  178. UpdateUI();
  179. UpdateGiveGiftRoot();
  180. });
  181. }
  182. public async override CTask<bool> AsyncInit(object[] uiData)
  183. {
  184. daoYouData = uiData[0] as AccountFileInfo.DaoYouData;
  185. _daoyouModelConfig = ConfigComponent.Instance.Get<DaoyouModelConfig>(daoYouData.id);
  186. daoyouGiftConfigs = ConfigComponent.Instance.GetAll<DaoyouGiftConfig>();
  187. emotionConfig emotionConfig = ConfigComponent.Instance.Get<emotionConfig>(daoYouData.emotion);
  188. Text_message.text = LanguageManager.Instance.Text(emotionConfig.des);
  189. ShowMessage();
  190. Icon_bodyIcon.icon_name = _daoyouModelConfig.bodyIcon;
  191. Icon_bodyIcon.GetComponent<RectTransform>().anchoredPosition =
  192. new Vector2(_daoyouModelConfig.bodyPos[0], _daoyouModelConfig.bodyPos[1]);
  193. await UpdateUI();
  194. return await base.AsyncInit(uiData);
  195. }
  196. private void ShowMessage()
  197. {
  198. dotPoint.SetActive(true);
  199. _timerEntity?.Dispose();
  200. _timerEntity = null;
  201. _timerEntity = TimerComponent.Instance.AddTimer(5000, () =>
  202. {
  203. dotPoint.SetActive(false);
  204. _timerEntity?.Dispose();
  205. _timerEntity = null;
  206. });
  207. }
  208. public async CTask UpdateUI()
  209. {
  210. foreach (var widgetItem in widgetItems)
  211. {
  212. UIManager.Instance.DormancyGComponent(widgetItem);
  213. }
  214. widgetItems.Clear();
  215. foreach (var daoYouLevelWidget in _daoYouLevelWidgets)
  216. {
  217. UIManager.Instance.DormancyGComponent(daoYouLevelWidget);
  218. }
  219. _daoYouLevelWidgets.Clear();
  220. foreach (var daoYouIdleEarningsWidget in _daoYouIdleEarningsWidgets)
  221. {
  222. UIManager.Instance.DormancyGComponent(daoYouIdleEarningsWidget);
  223. }
  224. _daoYouIdleEarningsWidgets.Clear();
  225. foreach (var daoYouaaFfixWidget in daoYouaaFfixWidgets)
  226. {
  227. UIManager.Instance.DormancyGComponent(daoYouaaFfixWidget);
  228. }
  229. daoYouaaFfixWidgets.Clear();
  230. if (daoYouData.favorabilityLv != -1
  231. && !EventSystemManager.Instance.IsEventCompleted(_daoyouModelConfig.QuestID))
  232. {
  233. Btn_Eveent.gameObject.SetActive(true);
  234. }
  235. else
  236. {
  237. Btn_Eveent.gameObject.SetActive(false);
  238. }
  239. Slider_Emotion.fillAmount = daoYouData.emotionValue / 100f;
  240. HeroPowerUpConfig heroPowerUpConfig =
  241. ConfigComponent.Instance.Get<HeroPowerUpConfig>(PlayerManager.Instance.GetDaoYouLevel(daoYouData));
  242. Text_JingJie.text = LanguageManager.Instance.Text(heroPowerUpConfig.jingjieLanIDs[0]) +
  243. LanguageManager.Instance.Text(heroPowerUpConfig.jingjieLanIDs[1]) +
  244. LanguageManager.Instance.Text(heroPowerUpConfig.jingjieLanIDs[2]);
  245. Text_Name.text = LanguageManager.Instance.Text(_daoyouModelConfig.name);
  246. int index = 0;
  247. for (var i = 0; i < _daoyouModelConfig.desUnlockLv.Length; i++)
  248. {
  249. if (daoYouData.favorabilityLv >= _daoyouModelConfig.desUnlockLv[i])
  250. {
  251. index = i;
  252. }
  253. }
  254. Text_Desc.text = LanguageManager.Instance.Text(_daoyouModelConfig.des[index]);
  255. // guajibuff guajibuff = ConfigComponent.Instance.Get<guajibuff>(_daoyouModelConfig.guajiBuffID[0]);
  256. // DaoyouLevelupConfig daoyouLevelupConfig1 = ConfigComponent.Instance.Get<DaoyouLevelupConfig>(daoYouData.favorabilityLv);
  257. Text_GiftGailv.text = LanguageManager.Instance.Text(10278,
  258. PlayerManager.Instance.GetBl(daoYouData, _daoyouModelConfig.guajiBuffID[0]));
  259. // "送礼概率:" + PlayerManager.Instance.GetBl(daoYouData, _daoyouModelConfig.guajiBuffID[0]) + "%";
  260. for (var i = 1; i < _daoyouModelConfig.guajiBuffID.Length; i++)
  261. {
  262. DaoYouIdleEarningsWidget daoYouIdleEarningsWidget =
  263. await UIManager.Instance.CreateGComponent<DaoYouIdleEarningsWidget>(null, GuajiContent);
  264. daoYouIdleEarningsWidget.CustomInit(daoYouData, _daoyouModelConfig.guajiBuffID[i]);
  265. _daoYouIdleEarningsWidgets.Add(daoYouIdleEarningsWidget);
  266. }
  267. DaoyouLevelupConfig currentDaoyouLevelupConfig =
  268. ConfigComponent.Instance.Get<DaoyouLevelupConfig>(daoYouData.favorabilityLv);
  269. Text_CurrentName.text = LanguageManager.Instance.Text(currentDaoyouLevelupConfig.name);
  270. Text_CurrentLevel.text = daoYouData.favorabilityLv.ToString();
  271. Slider_LeveUp.maxValue = currentDaoyouLevelupConfig.exp;
  272. DaoyouLevelupConfig[] configs = ConfigComponent.Instance.GetAll<DaoyouLevelupConfig>();
  273. if (daoYouData.favorabilityLv >= configs.Length)
  274. {
  275. Text_Exp.text = $"{daoYouData.exp.ToString("0.0")}/MAX";
  276. }
  277. else
  278. {
  279. Text_Exp.text = $"{daoYouData.exp.ToString("0.0")}/{currentDaoyouLevelupConfig.exp}";
  280. }
  281. Slider_LeveUp.value = daoYouData.exp;
  282. CTaskAwaitBuffer taskAwaitBuffer = new CTaskAwaitBuffer();
  283. CTaskAwaitBuffer<WidgetItem> cts = null;
  284. if (_daoyouModelConfig.PreferGiftID != null)
  285. {
  286. cts = new CTaskAwaitBuffer<WidgetItem>();
  287. foreach (var i in _daoyouModelConfig.PreferGiftID)
  288. {
  289. cts.AddTask(UIManager.Instance.CreateGComponent<WidgetItem>(null, LoveItemContent));
  290. }
  291. taskAwaitBuffer.AddTask(cts.WaitAll());
  292. }
  293. CTaskAwaitBuffer<DaoYouaaFfixWidget> cts2 = null;
  294. if (_daoyouModelConfig.daolvSkillID != null)
  295. {
  296. cts2 = new CTaskAwaitBuffer<DaoYouaaFfixWidget>();
  297. for (var i = 0; i < _daoyouModelConfig.daolvSkillID.Length; i++)
  298. {
  299. cts2.AddTask(UIManager.Instance.CreateGComponent<DaoYouaaFfixWidget>(null, DaoLvContent));
  300. }
  301. taskAwaitBuffer.AddTask(cts2.WaitAll());
  302. }
  303. CTaskAwaitBuffer<DaoYouLevelWidget> cts1 = new CTaskAwaitBuffer<DaoYouLevelWidget>();
  304. foreach (var daoyouLevelupConfig in configs)
  305. {
  306. cts1.AddTask(UIManager.Instance.CreateGComponent<DaoYouLevelWidget>(null, DaoYouLevelWidgetContent));
  307. }
  308. taskAwaitBuffer.AddTask(cts1.WaitAll());
  309. await taskAwaitBuffer.WaitAll();
  310. if (_daoyouModelConfig.PreferGiftID != null)
  311. {
  312. widgetItems = cts.GetResultsLists();
  313. for (var i = 0; i < _daoyouModelConfig.PreferGiftID.Length; i++)
  314. {
  315. if (_daoyouModelConfig.shownPreferGiftID.Contains(_daoyouModelConfig.PreferGiftID[i]) ||
  316. (daoYouData != null && daoYouData.loveIds.Contains(_daoyouModelConfig.PreferGiftID[i])))
  317. {
  318. widgetItems[i].InitWidget(new ItemInfo(_daoyouModelConfig.PreferGiftID[i], 0));
  319. }
  320. else
  321. {
  322. widgetItems[i].ShowWenhao();
  323. }
  324. }
  325. }
  326. if (_daoyouModelConfig.daolvSkillID != null)
  327. {
  328. daoYouaaFfixWidgets = cts2.GetResultsLists();
  329. for (var i = 0; i < _daoyouModelConfig.daolvSkillID.Length; i++)
  330. {
  331. daoYouaaFfixWidgets[i].CustomInit(_daoyouModelConfig.daolvSkillID[i]);
  332. }
  333. }
  334. _daoYouLevelWidgets = cts1.GetResultsLists();
  335. for (var i = 0; i < configs.Length; i++)
  336. {
  337. _daoYouLevelWidgets[i].CustomInit(daoYouData, configs[i].ID);
  338. }
  339. taskAwaitBuffer?.Dispose();
  340. cts?.Dispose();
  341. cts1?.Dispose();
  342. cts2?.Dispose();
  343. }
  344. List<ItemInfo> allItems = new List<ItemInfo>();
  345. private int saiXuanType = 1;
  346. public async CTask UpdateGiveGiftRoot()
  347. {
  348. ClosePoolGive();
  349. allItems.Clear();
  350. foreach (var daoyouGiftConfig in daoyouGiftConfigs)
  351. {
  352. if (PlayerManager.Instance.BagController.GetItemCount(daoyouGiftConfig.ItemID) > 0)
  353. {
  354. ItemInfo itemInfo = PlayerManager.Instance.BagController.GetItemInfo(daoyouGiftConfig.ItemID);
  355. allItems.Add(itemInfo);
  356. }
  357. }
  358. foreach (var keyValuePair in PlayerManager.Instance.BagController.allBagDic)
  359. {
  360. if (keyValuePair.Value.config.itemTag == 7 && !allItems.Contains(keyValuePair.Value))
  361. {
  362. allItems.Add(keyValuePair.Value);
  363. }
  364. }
  365. List<ItemInfo> showItems = SaiXuan(saiXuanType);
  366. CreatItem(showItems);
  367. }
  368. private List<ItemInfo> SaiXuan(int type)
  369. {
  370. List<ItemInfo> shownItems = new List<ItemInfo>();
  371. //全部
  372. if (type == 1)
  373. {
  374. shownItems = allItems.ToList();
  375. }
  376. //喜欢
  377. else if (type == 2)
  378. {
  379. foreach (var itemInfo in allItems)
  380. {
  381. if (_daoyouModelConfig.shownPreferGiftID.Contains(itemInfo.itemID) ||
  382. (daoYouData != null && daoYouData.loveIds.Contains(itemInfo.itemID)))
  383. {
  384. shownItems.Add(itemInfo);
  385. }
  386. }
  387. }
  388. return shownItems;
  389. }
  390. private async CTask CreatItem(List<ItemInfo> shownItems)
  391. {
  392. using (CTaskAwaitBuffer<WidgetItem> cts = new CTaskAwaitBuffer<WidgetItem>())
  393. {
  394. foreach (var itemInfo in shownItems)
  395. {
  396. cts.AddTask(UIManager.Instance.CreateGComponent<WidgetItem>(null, GiveGiftContent));
  397. }
  398. giveWidgetItems = await cts.WaitAll();
  399. }
  400. for (var i = 0; i < shownItems.Count; i++)
  401. {
  402. giveWidgetItems[i].InitWidget(shownItems[i], false);
  403. giveWidgetItems[i].OnClick = OnClick;
  404. }
  405. if (giveWidgetItems.Count > 0)
  406. {
  407. if (currentSelectWidgetItem != null)
  408. {
  409. bool isHave = false;
  410. foreach (var giveWidgetItem in giveWidgetItems)
  411. {
  412. if (giveWidgetItem.itemInfo == currentSelectWidgetItem)
  413. {
  414. giveWidgetItem.OnPointerClick();
  415. isHave = true;
  416. break;
  417. }
  418. }
  419. if(!isHave)
  420. giveWidgetItems[0].OnPointerClick();
  421. }
  422. else
  423. {
  424. giveWidgetItems[0].OnPointerClick();
  425. }
  426. }
  427. }
  428. DaoyouGiftConfig daoyouGiftConfig = default;
  429. private int count = 1;
  430. private WidgetItem widgetItem1;
  431. private async void OnClick(ItemWidgetBasic obj)
  432. {
  433. WidgetItem widgetItem = obj as WidgetItem;
  434. currentSelectWidgetItem = widgetItem.itemInfo;
  435. if (widgetItem1 == null)
  436. {
  437. widgetItem1 = await UIManager.Instance.CreateGComponent<WidgetItem>(null, WidgetItemRoot);
  438. widgetItem1.transform.GetComponent<RectTransform>().anchoredPosition = Vector2.zero;
  439. }
  440. widgetItem1.InitWidget(widgetItem.itemInfo);
  441. daoyouGiftConfig = default;
  442. foreach (var giftConfig in daoyouGiftConfigs)
  443. {
  444. if (giftConfig.ItemID == widgetItem.itemInfo.itemID)
  445. {
  446. daoyouGiftConfig = giftConfig;
  447. break;
  448. }
  449. }
  450. Slider_Give.maxValue = widgetItem.itemInfo.count.Value;
  451. Slider_Give.minValue = 1;
  452. UpdateGiveItemCount();
  453. }
  454. private void Reduce()
  455. {
  456. if (widgetItem1 == null)
  457. return;
  458. count--;
  459. if (count < 1)
  460. {
  461. count = 1;
  462. }
  463. Slider_Give.value = count;
  464. }
  465. private void Add()
  466. {
  467. if (widgetItem1 == null)
  468. return;
  469. count++;
  470. if (count > widgetItem1.itemInfo.count.Value)
  471. {
  472. count = (int)widgetItem1.itemInfo.count.Value;
  473. }
  474. Slider_Give.value = count;
  475. }
  476. private void UpdateGiveItemCount()
  477. {
  478. emotionConfig emotionConfig = ConfigComponent.Instance.Get<emotionConfig>(daoYouData.emotion);
  479. Text_Count.text = $"当前选择数量{count}";
  480. if (widgetItem1 != null && daoyouGiftConfig.ID != 0)
  481. {
  482. Text_GiveGiftDesc.text = LanguageManager.Instance.Text(10289, daoyouGiftConfig.emotionValue,
  483. daoyouGiftConfig.emotionValue * emotionConfig.hanganUpRate[0] * 0.001,
  484. daoyouGiftConfig.emotionValue * emotionConfig.hanganUpRate[1] * 0.001);
  485. }
  486. else if (widgetItem1 != null && daoyouGiftConfig.ID == 0)
  487. {
  488. Text_GiveGiftDesc.text =
  489. LanguageManager.Instance.Text(10290, widgetItem1.itemInfo.config.associateVlaue[0]);
  490. }
  491. }
  492. public override CTask GetFocus()
  493. {
  494. AppBarPanel.OpenPanel(this);
  495. return base.GetFocus();
  496. }
  497. public static async CTask OpenPanel(AccountFileInfo.DaoYouData daoYouData)
  498. {
  499. await UIManager.Instance.LoadAndOpenPanel<DaoYouInfoPanel>(null, uiData: new[] { daoYouData });
  500. }
  501. private void ClosePoolGive()
  502. {
  503. count = 0;
  504. daoyouGiftConfig = default;
  505. Slider_Give.value = 0;
  506. Slider_Give.minValue = 0;
  507. Slider_Give.maxValue = 0;
  508. foreach (var giveWidgetItem in giveWidgetItems)
  509. {
  510. UIManager.Instance.DormancyGComponent(giveWidgetItem);
  511. }
  512. giveWidgetItems.Clear();
  513. UIManager.Instance.DormancyGComponent(widgetItem1);
  514. widgetItem1 = null;
  515. }
  516. public async override CTask Close()
  517. {
  518. daoyouGiftConfigs = null;
  519. foreach (var widgetItem in widgetItems)
  520. {
  521. UIManager.Instance.DormancyGComponent(widgetItem);
  522. }
  523. widgetItems.Clear();
  524. foreach (var daoYouLevelWidget in _daoYouLevelWidgets)
  525. {
  526. UIManager.Instance.DormancyGComponent(daoYouLevelWidget);
  527. }
  528. _daoYouLevelWidgets.Clear();
  529. foreach (var daoYouaaFfixWidget in daoYouaaFfixWidgets)
  530. {
  531. UIManager.Instance.DormancyGComponent(daoYouaaFfixWidget);
  532. }
  533. daoYouaaFfixWidgets.Clear();
  534. foreach (var daoYouIdleEarningsWidget in _daoYouIdleEarningsWidgets)
  535. {
  536. UIManager.Instance.DormancyGComponent(daoYouIdleEarningsWidget);
  537. }
  538. _daoYouIdleEarningsWidgets.Clear();
  539. allItems.Clear();
  540. saiXuanType = 1;
  541. ClosePoolGive();
  542. await base.Close();
  543. }
  544. }
  545. }