FashionShowEditPage.cs 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using UnityEngine.UI;
  5. public class FashionShowData
  6. {
  7. public int PraisedAmount;
  8. public bool Praised;
  9. public string RefererNickname;
  10. public string FashionShowName;
  11. public string FashionShowContent;
  12. public string CuteRate;
  13. public string GloryRate;
  14. public string GraceRate;
  15. public string SimpleRate;
  16. public string VividRate;
  17. public List<int> CloseIDs = new List<int>();
  18. }
  19. public class FashionShowEditPage : Regist
  20. {
  21. #region Config
  22. //StartMark-Used by LabelUtility-Do not remove
  23. private static Text CoinText;
  24. private static Text DiamondText;
  25. private static Text RecommendTitle;
  26. private static Text PraiseText;
  27. //private static Text FashionTitle;
  28. //private static Text FashionContent;
  29. private static Text CuteTitle;
  30. private static Text CuteValue;
  31. private static Text CuteRateText;
  32. private static Text GraceTitle;
  33. private static Text GraceValue;
  34. private static Text GraceRateText;
  35. private static Text VividTitle;
  36. private static Text VividValue;
  37. private static Text VividRateText;
  38. private static Text SimpleTitle;
  39. private static Text SimpleValue;
  40. private static Text SimpleRateText;
  41. private static Text GloryTitle;
  42. private static Text GloryValue;
  43. private static Text GloryRateText;
  44. private static Text FashionShowClosesTitle;
  45. private static Text CloseTotalCoinText;
  46. private static Text CloseTotalDiamondText;
  47. private static Button Return;
  48. private static Button DisplayEditButton;
  49. private static Button DeleteButton;
  50. private static Button ResetButton;
  51. private static Button SaveButton;
  52. private static Button PraiseButton;
  53. private static Button CommentButton;
  54. private static Button ShareButton;
  55. private static Button FashionTitleEditButton;
  56. private static Button FashionContentEditButton;
  57. private static Button RateButton;
  58. //EndMark-Used by LabelUtility-Do not remove
  59. private static Button DressroomFashionShowButton;
  60. private static Transform GardenFashionShowButtonParent;
  61. private static Text BuyAllButtonText;
  62. private static Button BuyAllButton;
  63. private static Transform Panel;
  64. private static Transform ChangeDressPanel;
  65. private static Transform DisplayBackground;
  66. private static Transform CuteRateBackground;
  67. private static Transform GraceRateBackground;
  68. private static Transform VividRateBackground;
  69. private static Transform SimpleRateBackground;
  70. private static Transform GloryRateBackground;
  71. private static Transform FashionShowCloseGrid;
  72. private static InputField FashionTitleInputField;
  73. private static InputField FashionContentInputField;
  74. private static CustomSlider CuteSlider;
  75. private static CustomSlider GraceSlider;
  76. private static CustomSlider VividSlider;
  77. private static CustomSlider SimpleSlider;
  78. private static CustomSlider GlorySlider;
  79. private static Transform CuteSliderBg;
  80. private static Transform GraceSliderBg;
  81. private static Transform VividSliderBg;
  82. private static Transform SimpleSliderBg;
  83. private static Transform GlorySliderBg;
  84. private static bool Praised;
  85. private static bool BelongSelf;
  86. private static bool LeaveToRateMode;
  87. public static bool LeaveToHomePage;
  88. public static Player DisplayPlayer;
  89. private static KV<int, double> TotalCoin;
  90. private static KV<int, double> TotalDiamond;
  91. private static TweenRenderer PlayerTween;
  92. private static FashionShowData FashionShowData;
  93. private static List<int> CloseIDs = new List<int>();
  94. //private static List<string> CloseNames = new List<string>();
  95. private static List<FashionShowCloseItem> CloseItems = new List<FashionShowCloseItem>();
  96. private static int UnlockLevel = 21;
  97. #endregion
  98. public override void RegistReference()
  99. {
  100. CoinText = ResourceManager.Get<Text>(CanvasLabel.Pg_CoinText);
  101. DiamondText = ResourceManager.Get<Text>(CanvasLabel.Pg_DiamondText);
  102. RecommendTitle = ResourceManager.Get<Text>(CanvasLabel.Pg_RecommendTitle);
  103. PraiseText = ResourceManager.Get<Text>(CanvasLabel.Pg_PraiseText);
  104. //FashionTitle = ResourceManager.Get<Text>(CanvasLabel.Pg_FashionTitle);
  105. //FashionContent = ResourceManager.Get<Text>(CanvasLabel.Pg_FashionContent);
  106. CuteTitle = ResourceManager.Get<Text>(CanvasLabel.Pg_CuteTitle);
  107. CuteValue = ResourceManager.Get<Text>(CanvasLabel.Pg_CuteValue);
  108. CuteRateText = ResourceManager.Get<Text>(CanvasLabel.Pg_CuteRateText);
  109. GraceTitle = ResourceManager.Get<Text>(CanvasLabel.Pg_GraceTitle);
  110. GraceValue = ResourceManager.Get<Text>(CanvasLabel.Pg_GraceValue);
  111. GraceRateText = ResourceManager.Get<Text>(CanvasLabel.Pg_GraceRateText);
  112. VividTitle = ResourceManager.Get<Text>(CanvasLabel.Pg_VividTitle);
  113. VividValue = ResourceManager.Get<Text>(CanvasLabel.Pg_VividValue);
  114. VividRateText = ResourceManager.Get<Text>(CanvasLabel.Pg_VividRateText);
  115. SimpleTitle = ResourceManager.Get<Text>(CanvasLabel.Pg_SimpleTitle);
  116. SimpleValue = ResourceManager.Get<Text>(CanvasLabel.Pg_SimpleValue);
  117. SimpleRateText = ResourceManager.Get<Text>(CanvasLabel.Pg_SimpleRateText);
  118. GloryTitle = ResourceManager.Get<Text>(CanvasLabel.Pg_GloryTitle);
  119. GloryValue = ResourceManager.Get<Text>(CanvasLabel.Pg_GloryValue);
  120. GloryRateText = ResourceManager.Get<Text>(CanvasLabel.Pg_GloryRateText);
  121. FashionShowClosesTitle = ResourceManager.Get<Text>(CanvasLabel.Pg_FashionShowClosesTitle);
  122. CloseTotalCoinText = ResourceManager.Get<Text>(CanvasLabel.Pg_CloseTotalCoinText);
  123. CloseTotalDiamondText = ResourceManager.Get<Text>(CanvasLabel.Pg_CloseTotalDiamondText);
  124. CuteSlider = ResourceManager.Get<CustomSlider>(CanvasLabel.Pg_CuteSlider);
  125. GraceSlider = ResourceManager.Get<CustomSlider>(CanvasLabel.Pg_GraceSlider);
  126. VividSlider = ResourceManager.Get<CustomSlider>(CanvasLabel.Pg_VividSlider);
  127. SimpleSlider = ResourceManager.Get<CustomSlider>(CanvasLabel.Pg_SimpleSlider);
  128. GlorySlider = ResourceManager.Get<CustomSlider>(CanvasLabel.Pg_GlorySlider);
  129. CuteSliderBg = ResourceManager.Get(CanvasLabel.Pg_CuteBackground);
  130. GraceSliderBg = ResourceManager.Get(CanvasLabel.Pg_GraceBackground);
  131. VividSliderBg = ResourceManager.Get(CanvasLabel.Pg_VividBackground);
  132. SimpleSliderBg = ResourceManager.Get(CanvasLabel.Pg_SimpleBackground);
  133. GlorySliderBg = ResourceManager.Get(CanvasLabel.Pg_GloryBackground);
  134. Return = ResourceManager.Get<Button>(CanvasLabel.Pg_Return);
  135. DisplayEditButton = ResourceManager.Get<Button>(CanvasLabel.Pg_DisplayEditButton);
  136. DeleteButton = ResourceManager.Get<Button>(CanvasLabel.Pg_DeleteButton);
  137. ResetButton = ResourceManager.Get<Button>(CanvasLabel.Pg_ResetButton);
  138. SaveButton = ResourceManager.Get<Button>(CanvasLabel.Pg_SaveButton);
  139. PraiseButton = ResourceManager.Get<Button>(CanvasLabel.Pg_PraiseButton);
  140. CommentButton = ResourceManager.Get<Button>(CanvasLabel.Pg_CommentButton);
  141. ShareButton = ResourceManager.Get<Button>(CanvasLabel.Pg_ShareButton);
  142. FashionTitleEditButton = ResourceManager.Get<Button>(CanvasLabel.Pg_FashionTitleEditButton);
  143. FashionContentEditButton = ResourceManager.Get<Button>(CanvasLabel.Pg_FashionContentEditButton);
  144. RateButton = ResourceManager.Get<Button>(CanvasLabel.Pg_RateButton);
  145. DressroomFashionShowButton = ResourceManager.Get<Button>(CanvasLabel.P_FashionShowButton);
  146. GardenFashionShowButtonParent = ResourceManager.Get(CanvasLabel.C_FashionShowButtonParent);
  147. BuyAllButtonText = ResourceManager.Get<Text>(CanvasLabel.Pg_BuyAllButtonText);
  148. BuyAllButton= ResourceManager.Get<Button>(CanvasLabel.Pg_BuyAllButton);
  149. Panel = ResourceManager.Get(CanvasLabel.Pg_FashionShowEditPanel);
  150. ChangeDressPanel = ResourceManager.Get(CanvasLabel.P_ChangeDressPanel);
  151. DisplayBackground = ResourceManager.Get(CanvasLabel.Pg_DisplayBackground);
  152. CuteRateBackground = ResourceManager.Get(CanvasLabel.Pg_CuteRateBackground);
  153. GraceRateBackground = ResourceManager.Get(CanvasLabel.Pg_GraceRateBackground);
  154. VividRateBackground = ResourceManager.Get(CanvasLabel.Pg_VividRateBackground);
  155. SimpleRateBackground = ResourceManager.Get(CanvasLabel.Pg_SimpleRateBackground);
  156. GloryRateBackground = ResourceManager.Get(CanvasLabel.Pg_GloryRateBackground);
  157. FashionShowCloseGrid = ResourceManager.Get(CanvasLabel.Pg_FashionShowCloseGrid);
  158. FashionTitleInputField = ResourceManager.Get<InputField>(CanvasLabel.Pg_FashionTitleBackground);
  159. FashionContentInputField = ResourceManager.Get<InputField>(CanvasLabel.Pg_FashionContentBackground);
  160. LanguageManager.Add(BuyAllButtonText, new MulLanStr(LanguageLabel.UI__Pg_BuyAll));
  161. LanguageManager.Add(CuteTitle, new MulLanStr(LanguageLabel.UI__Pg_Cute));
  162. LanguageManager.Add(GraceTitle, new MulLanStr(LanguageLabel.UI__Pg_Grace));
  163. LanguageManager.Add(SimpleTitle, new MulLanStr(LanguageLabel.UI__Pg_Simple));
  164. LanguageManager.Add(VividTitle, new MulLanStr(LanguageLabel.UI__Pg_Vivid));
  165. LanguageManager.Add(GloryTitle, new MulLanStr(LanguageLabel.UI__Pg_Glory));
  166. LanguageManager.Add(FashionShowClosesTitle, new MulLanStr(LanguageLabel.UI__Pg_CloseGridTitle));
  167. Panel.CreateTweenVec2D(ResourceManager.Get(CanvasLabel.Pg_FashionShowEditPanelPosition).position, 0.5f, false, false, true, Curve.EaseOutQuad);
  168. ChangeDressPanel.CreateTweenCG(0, 1, 0.25f, false, true, Curve.EaseOutQuad);
  169. CuteSlider.onValueChanged.AddListener(OnCuteSliderValueChange);
  170. CuteSlider.onPointerDown += OnCuteSliderSelect;
  171. CuteSlider.onPointerUp += OnCuteSliderDeselect;
  172. GraceSlider.onValueChanged.AddListener(OnGraceSliderValueChange);
  173. GraceSlider.onPointerDown += OnGraceSliderSelect;
  174. GraceSlider.onPointerUp += OnGraceSliderDeselect;
  175. SimpleSlider.onValueChanged.AddListener(OnSimpleSliderValueChange);
  176. SimpleSlider.onPointerDown += OnSimpleSliderSelect;
  177. SimpleSlider.onPointerUp += OnSimpleSliderDeselect;
  178. GlorySlider.onValueChanged.AddListener(OnGlorySliderValueChange);
  179. GlorySlider.onPointerDown += OnGlorySliderSelect;
  180. GlorySlider.onPointerUp += OnGlorySliderDeselect;
  181. VividSlider.onValueChanged.AddListener(OnVividSliderValueChange);
  182. VividSlider.onPointerDown += OnVividSliderSelect;
  183. VividSlider.onPointerUp += OnVividSliderDeselect;
  184. Return.onClick.AddListener(OnReturnButtonClick);
  185. CommentButton.onClick.AddListener(OnCommentButtonClick);
  186. PraiseButton.onClick.AddListener(OnPraiseButtonClick);
  187. ShareButton.onClick.AddListener(OnShareButtonClick);
  188. DisplayEditButton.onClick.AddListener(OnDisplayEditButtonClick);
  189. RateButton.onClick.AddListener(OnRateButtonClick);
  190. SaveButton.onClick.AddListener(OnSaveButtonClick);
  191. ResetButton.onClick.AddListener(OnResetButtonClick);
  192. DeleteButton.onClick.AddListener(OnDeleteButtonClick);
  193. BuyAllButton.onClick.AddListener(OnBuyAllButtonClick);
  194. DressroomFashionShowButton.onClick.AddListener(OnDressroomFashionShowButtonClick);
  195. Manager.OnLevelChange += OnLevelChange;
  196. Manager.OnCoinChange += amt => { CoinText.text = ResourceManager.Get<Text>(CanvasLabel.F_CoinLab).text; };
  197. Manager.OnDiamondChange += amt => { DiamondText.text = ResourceManager.Get<Text>(CanvasLabel.F_DiamondLab).text; };
  198. }
  199. public static void ShowEditPanel(FashionShowData data)
  200. {
  201. BelongSelf = true;
  202. FashionShowData = data;
  203. CloseIDs = data.CloseIDs;
  204. //CloseNames = Player.DressIDToDressName(data.CloseIDs); ;
  205. TransitPanel();
  206. ShowPanel();
  207. EnterEditMode();
  208. }
  209. public static void ShowRatePanel(bool belongSelf, FashionShowData data)
  210. {
  211. BelongSelf = belongSelf;
  212. FashionShowData = data;
  213. CloseIDs = data.CloseIDs;
  214. //CloseNames = Player.DressIDToDressName(data.CloseIDs); ;
  215. Panel.TweenForVec();
  216. ShowPanel();
  217. EnterRateMode();
  218. }
  219. private static void ShowPanel()
  220. {
  221. DisplayPlayer = PlayerManager.Instance.GetRawPlayer();
  222. DisplayPlayer.transform.SetParent(DisplayBackground);
  223. DisplayPlayer.transform.SetAsFirstSibling();
  224. DisplayPlayer.transform.localPosition = Vector3.zero;
  225. foreach (var closeID in CloseIDs)
  226. {
  227. CloseItem closeItem = PlayerManager.CloseItemDictionary[closeID];
  228. closeItem.ChangeDress(DisplayPlayer, false);
  229. }
  230. DelayCall.Call(1, () => { DisplayPlayer.ResetDepth(); DisplayPlayer.DisplayInUI(37.5f); });
  231. float cuteRate = float.Parse(FashionShowData.CuteRate);
  232. float gloryRate = float.Parse(FashionShowData.GloryRate);
  233. float graceRate = float.Parse(FashionShowData.GraceRate);
  234. float simpleRate = float.Parse(FashionShowData.SimpleRate);
  235. float vividRate = float.Parse(FashionShowData.VividRate);
  236. CuteSlider.value = cuteRate == 0 ? 1 : cuteRate;
  237. GlorySlider.value = cuteRate == 0 ? 1 : gloryRate;
  238. GraceSlider.value = cuteRate == 0 ? 1 : graceRate;
  239. SimpleSlider.value = cuteRate == 0 ? 1 : simpleRate;
  240. VividSlider.value = cuteRate == 0 ? 1 : vividRate;
  241. CuteSliderBg.SetActive(false);
  242. GlorySliderBg.SetActive(false);
  243. GraceSliderBg.SetActive(false);
  244. SimpleSliderBg.SetActive(false);
  245. VividSliderBg.SetActive(false);
  246. CuteSlider.interactable = false;
  247. GlorySlider.interactable = false;
  248. GraceSlider.interactable = false;
  249. SimpleSlider.interactable = false;
  250. VividSlider.interactable = false;
  251. CuteValue.text = FashionShowData.CuteRate == "0" ? "--" : FashionShowData.CuteRate;
  252. GloryValue.text = FashionShowData.GloryRate == "0" ? "--" : FashionShowData.GloryRate;
  253. GraceValue.text = FashionShowData.GraceRate == "0" ? "--" : FashionShowData.GraceRate;
  254. SimpleValue.text = FashionShowData.SimpleRate == "0" ? "--" : FashionShowData.SimpleRate;
  255. VividValue.text = FashionShowData.VividRate == "0" ? "--" : FashionShowData.VividRate;
  256. FashionTitleInputField.text = FashionShowData.FashionShowName;
  257. FashionContentInputField.text = FashionShowData.FashionShowContent;
  258. RecommendTitle.text = Language.GetStr(LanguageLabel.UI__Pg_RecommendTitle).Replace(TransferLabel.Value, FashionShowData.RefererNickname);
  259. for (int i = 0; i < CloseItems.Count; i++)
  260. {
  261. ResourceManager.Save(CloseItems[i].Transform);
  262. }
  263. CloseItems = new List<FashionShowCloseItem>();
  264. foreach (var closeID in CloseIDs)
  265. {
  266. if (PlayerManager.CloseItemDictionary[closeID].Sprites == null) continue;
  267. if (PlayerManager.CloseItemDictionary[closeID].ArmatureName == "Empty") continue;
  268. Transform itemTrans = ResourceManager.Get(ResourceLabel.FashionShowCloseItem, Folder.UI, false, FashionShowCloseGrid, false, ObjType.FashionShowCloseItem);
  269. FashionShowCloseItem item = new FashionShowCloseItem();
  270. item.Init(closeID, itemTrans);
  271. CloseItems.Add(item);
  272. }
  273. }
  274. private static void TransitPanel()
  275. {
  276. Renderer renderer = PlayerManager.Player.HeadSlot.UnityTransform.GetComponentInChildren<Renderer>(true);
  277. PlayerTween = AnimManager.CreateTweenRenderer(renderer, 0, 1, 0.25f, false, true, Curve.EaseOutQuad);
  278. PlayerTween.UseSharedMaterial = true;
  279. PlayerTween.StartBackward();
  280. ChangeDressPanel.GetTweenCG().AddEventOnetime(EventType.BackwardFinish, () => { Panel.TweenForVec(); });
  281. ChangeDressPanel.TweenBacCG();
  282. }
  283. private static void EnterEditMode()
  284. {
  285. FashionTitleInputField.interactable = true;
  286. FashionContentInputField.interactable = true;
  287. DeleteButton.SetActive(true);
  288. SaveButton.SetActive(true);
  289. ResetButton.SetActive(true);
  290. PraiseButton.SetActive(false);
  291. ShareButton.SetActive(false);
  292. CommentButton.SetActive(false);
  293. DisplayEditButton.SetActive(false);
  294. RateButton.SetActive(false);
  295. FashionTitleEditButton.SetActive(true);
  296. FashionContentEditButton.SetActive(true);
  297. FashionTitleInputField.SetActive(true);
  298. FashionContentInputField.SetActive(true);
  299. BuyAllButton.SetActive(false);
  300. foreach (var closeItem in CloseItems)
  301. {
  302. closeItem.BoxButton.interactable = false;
  303. closeItem.Text.SetActive(false);
  304. }
  305. UpdateTotalCost(false);
  306. }
  307. private static void EnterRateMode()
  308. {
  309. FashionTitleInputField.interactable = false;
  310. FashionContentInputField.interactable = false;
  311. DeleteButton.SetActive(false);
  312. SaveButton.SetActive(false);
  313. ResetButton.SetActive(false);
  314. PraiseButton.SetActive(true);
  315. ShareButton.SetActive(true);
  316. CommentButton.SetActive(true);
  317. DisplayEditButton.SetActive(BelongSelf);
  318. RateButton.SetActive(false);
  319. FashionTitleEditButton.SetActive(false);
  320. FashionContentEditButton.SetActive(false);
  321. FashionTitleInputField.SetActive(false);
  322. FashionContentInputField.SetActive(false);
  323. bool haveUnboughtClose = false;
  324. foreach (var closeItem in CloseItems)
  325. {
  326. if (closeItem.CloseItem.IsBought)
  327. {
  328. closeItem.Text.SetActive(true);
  329. }
  330. else
  331. {
  332. closeItem.Text.SetActive(false);
  333. closeItem.BoxButton.interactable = true;
  334. haveUnboughtClose = true;
  335. }
  336. }
  337. BuyAllButton.SetActive(haveUnboughtClose);
  338. UpdateTotalCost(true);
  339. }
  340. public static void HidePanel()
  341. {
  342. if (LeaveToRateMode)
  343. {
  344. EnterRateMode();
  345. LeaveToRateMode = false;
  346. }
  347. else if (LeaveToHomePage)
  348. {
  349. DisplayPlayer.DisplayInScene();
  350. ResourceManager.Save(DisplayPlayer);
  351. Panel.GetTweenVec().AddEventOnetime(EventType.BackwardFinish, () => { FashionShowHomePage.ShowSidePanel(); });
  352. Panel.TweenBacVec();
  353. LeaveToHomePage = false;
  354. }
  355. else
  356. {
  357. DisplayPlayer.DisplayInScene();
  358. ResourceManager.Save(DisplayPlayer);
  359. PlayerTween.StartForward();
  360. Panel.GetTweenVec().AddEventOnetime(EventType.BackwardFinish, () => { ChangeDressPanel.TweenForCG(); });
  361. Panel.TweenBacVec();
  362. }
  363. }
  364. public static void UpdateTotalCost(bool excludeBought)
  365. {
  366. List<KV<Current, KV<int, double>>> costKvs = CloseItem.GetTotalBuyCost(excludeBought, CloseIDs);
  367. foreach (var costKv in costKvs)
  368. {
  369. if (costKv.Key == Current.Coin) TotalCoin = costKv.Value;
  370. if (costKv.Key == Current.Diamond) TotalDiamond = costKv.Value;
  371. }
  372. CloseTotalCoinText.text = Auxiliary.ShrinkBigNumberStr(TotalCoin.Value);
  373. CloseTotalDiamondText.text = Auxiliary.ShrinkBigNumberStr(TotalDiamond.Value);
  374. }
  375. private static void OnReturnButtonClick()
  376. {
  377. AudioManager.PlayClip(ResourceLabel.BtnClip);
  378. HidePanel();
  379. }
  380. private static void OnPraiseButtonClick()
  381. {
  382. AudioManager.PlayClip(ResourceLabel.BtnClip);
  383. if (Praised)
  384. {
  385. Praised = false;
  386. PraiseButton.image.color = Color.white;
  387. PraiseText.text = (int.Parse(PraiseText.text) - 1).ToString();
  388. HttpManager.UnpraiseFashionShow(null, null);
  389. }
  390. else
  391. {
  392. Praised = true;
  393. PraiseButton.image.color = Lib.Pink;
  394. PraiseText.text = (int.Parse(PraiseText.text) + 1).ToString();
  395. HttpManager.PraiseFashionShow(null, null);
  396. }
  397. }
  398. private static void OnCommentButtonClick()
  399. {
  400. AudioManager.PlayClip(ResourceLabel.BtnClip);
  401. FashionShowCommentPanel.ShowPanel();
  402. }
  403. private static void OnShareButtonClick()
  404. {
  405. AudioManager.PlayClip(ResourceLabel.BtnClip);
  406. }
  407. private static void OnDisplayEditButtonClick()
  408. {
  409. AudioManager.PlayClip(ResourceLabel.BtnClip);
  410. LeaveToRateMode = true;
  411. EnterEditMode();
  412. }
  413. private static void OnRateButtonClick()
  414. {
  415. AudioManager.PlayClip(ResourceLabel.BtnClip);
  416. RateButton.SetActive(false);
  417. //CuteSliderBg.SetActive(true);
  418. //GlorySliderBg.SetActive(true);
  419. //GraceSliderBg.SetActive(true);
  420. //SimpleSliderBg.SetActive(true);
  421. //VividSliderBg.SetActive(true);
  422. }
  423. private static void OnSaveButtonClick()
  424. {
  425. AudioManager.PlayClip(ResourceLabel.BtnClip);
  426. if (string.IsNullOrEmpty(FashionTitleInputField.text))
  427. {
  428. Bubble.Show(null, Language.GetStr(LanguageLabel.UI__Pg_EmptyTitle));
  429. return;
  430. }
  431. if (string.IsNullOrEmpty(FashionContentInputField.text))
  432. {
  433. Bubble.Show(null, Language.GetStr(LanguageLabel.UI__Pg_EmptyContent));
  434. return;
  435. }
  436. if (StringFilter.ContainSensitiveWord(FashionTitleInputField.text))
  437. {
  438. Bubble.Show(null, Language.GetStr(LanguageLabel.UI__Pg_BadTitle));
  439. return;
  440. }
  441. if (StringFilter.ContainSensitiveWord(FashionContentInputField.text))
  442. {
  443. Bubble.Show(null, Language.GetStr(LanguageLabel.UI__Pg_BadContent));
  444. return;
  445. }
  446. if (FashionShowData.FashionShowName == FashionTitleInputField.text && FashionShowData.FashionShowContent == FashionContentInputField.text)
  447. {
  448. Bubble.Show(null, Language.GetStr(LanguageLabel.UI__Pg_RepeatData));
  449. return;
  450. }
  451. SaveButton.interactable = false;
  452. FashionShowData data = new FashionShowData();
  453. data.FashionShowName = FashionTitleInputField.text;
  454. data.FashionShowContent = FashionContentInputField.text;
  455. data.RefererNickname = NickNameManager.NickName;
  456. HttpManager.SaveFashionShowData(data, OnSaveSucceedCallback, OnSaveFailedCallback);
  457. }
  458. private static void OnSaveFailedCallback()
  459. {
  460. SaveButton.interactable = true;
  461. Bubble.Show(null, Language.GetStr(LanguageLabel.UI__Pg_SaveFailed));
  462. }
  463. private static void OnSaveSucceedCallback(FashionShowData fashionShowData)
  464. {
  465. FashionShowData.FashionShowName = fashionShowData.FashionShowName;
  466. FashionShowData.FashionShowContent = fashionShowData.FashionShowName;
  467. SaveButton.interactable = true;
  468. Bubble.Show(null, Language.GetStr(LanguageLabel.UI__Pg_SaveSucceed));
  469. }
  470. private static void OnResetButtonClick()
  471. {
  472. AudioManager.PlayClip(ResourceLabel.BtnClip);
  473. FashionTitleInputField.text = FashionShowData.FashionShowName;
  474. FashionContentInputField.text = FashionShowData.FashionShowContent;
  475. }
  476. private static void OnDeleteButtonClick()
  477. {
  478. Bubble.Show
  479. (
  480. null,
  481. Language.GetStr(LanguageLabel.UI__Pg_DeleteWarning),
  482. null,
  483. null,
  484. () =>
  485. {
  486. HidePanel();
  487. HttpManager.DeleteFashionShowData();
  488. }
  489. );
  490. }
  491. private static void OnBuyAllButtonClick()
  492. {
  493. //Debug.Log(TotalCoin.Value);
  494. UpdateTotalCost(true);
  495. if (TotalCoin.Value > Manager.Coin)
  496. {
  497. Bubble.Show(Language.GetStr(LanguageLabel.Common__ShortCoin));
  498. return;
  499. }
  500. if (TotalDiamond.Value > Manager.Diamond)
  501. {
  502. Bubble.Show(Language.GetStr(LanguageLabel.Common__ShortDiamond));
  503. return;
  504. }
  505. Manager.Pay("", TotalCoin.Value, Current.Coin, OnBuyAllSucceedCallback, StaticsManager.ItemID.解锁服装, StaticsManager.ConsumeModule.Charge, false, false, null, TotalCoin.Key);
  506. Manager.Pay("", TotalDiamond.Value, Current.Diamond, OnBuyAllSucceedCallback, StaticsManager.ItemID.解锁服装, StaticsManager.ConsumeModule.Charge, false, false, null, TotalDiamond.Key);
  507. }
  508. private static void OnBuyAllSucceedCallback()
  509. {
  510. foreach (var closeItem in CloseItems)
  511. {
  512. if (!closeItem.CloseItem.IsBought)
  513. {
  514. closeItem.CloseItem.OnBuySucceed();
  515. closeItem.Text.SetActive(true);
  516. }
  517. }
  518. }
  519. private static void OnCuteSliderValueChange(float value)
  520. {
  521. AudioManager.PlayClip(ResourceLabel.BtnClip);
  522. CuteRateText.text = value.ToString("0");
  523. RateButton.SetActive(true);
  524. }
  525. private static void OnCuteSliderSelect()
  526. {
  527. CuteRateBackground.SetActive(true);
  528. }
  529. private static void OnCuteSliderDeselect()
  530. {
  531. CuteRateBackground.SetActive(false);
  532. }
  533. private static void OnGraceSliderValueChange(float value)
  534. {
  535. AudioManager.PlayClip(ResourceLabel.BtnClip);
  536. GraceRateText.text = value.ToString("0");
  537. RateButton.SetActive(true);
  538. }
  539. private static void OnGraceSliderSelect()
  540. {
  541. GraceRateBackground.SetActive(true);
  542. }
  543. private static void OnGraceSliderDeselect()
  544. {
  545. GraceRateBackground.SetActive(false);
  546. }
  547. private static void OnVividSliderValueChange(float value)
  548. {
  549. AudioManager.PlayClip(ResourceLabel.BtnClip);
  550. VividRateText.text = value.ToString("0");
  551. RateButton.SetActive(true);
  552. }
  553. private static void OnVividSliderSelect()
  554. {
  555. VividRateBackground.SetActive(true);
  556. }
  557. private static void OnVividSliderDeselect()
  558. {
  559. VividRateBackground.SetActive(false);
  560. }
  561. private static void OnSimpleSliderValueChange(float value)
  562. {
  563. AudioManager.PlayClip(ResourceLabel.BtnClip);
  564. SimpleRateText.text = value.ToString("0");
  565. RateButton.SetActive(true);
  566. }
  567. private static void OnSimpleSliderSelect()
  568. {
  569. SimpleRateBackground.SetActive(true);
  570. }
  571. private static void OnSimpleSliderDeselect()
  572. {
  573. SimpleRateBackground.SetActive(false);
  574. }
  575. private static void OnGlorySliderValueChange(float value)
  576. {
  577. AudioManager.PlayClip(ResourceLabel.BtnClip);
  578. GloryRateText.text = value.ToString("0");
  579. RateButton.SetActive(true);
  580. }
  581. private static void OnGlorySliderSelect()
  582. {
  583. GloryRateBackground.SetActive(true);
  584. }
  585. private static void OnGlorySliderDeselect()
  586. {
  587. GloryRateBackground.SetActive(false);
  588. }
  589. private static void OnLevelChange(int level)
  590. {
  591. //GardenFashionShowButtonParent.SetActive(false);
  592. //DressroomFashionShowButton.SetActive(false);
  593. if (level >= UnlockLevel)
  594. {
  595. GardenFashionShowButtonParent.SetActive(true);
  596. DressroomFashionShowButton.SetActive(true);
  597. }
  598. else
  599. {
  600. GardenFashionShowButtonParent.SetActive(false);
  601. DressroomFashionShowButton.SetActive(false);
  602. }
  603. }
  604. private static void OnDressroomFashionShowButtonClick()
  605. {
  606. AudioManager.PlayClip(ResourceLabel.BtnClip);
  607. FashionShowData data = new FashionShowData();
  608. data.CuteRate = "0";
  609. data.GloryRate = "0";
  610. data.GraceRate = "0";
  611. data.SimpleRate = "0";
  612. data.VividRate = "0";
  613. data.FashionShowName = "";
  614. data.FashionShowContent = "";
  615. data.RefererNickname = NickNameManager.NickName;
  616. data.CloseIDs = PlayerManager.Player.GetCurrentChangableDressIDs();
  617. ShowEditPanel(data);
  618. }
  619. }