ManaTutorial.cs 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779
  1. using UnityEngine;
  2. using UnityEngine.UI;
  3. using System.Collections;
  4. using System.Collections.Generic;
  5. public class ManaTutorial : Regist
  6. {
  7. #region 变量
  8. public static bool PayExempt
  9. {
  10. get
  11. {
  12. if (PayExempt_)
  13. {
  14. return true;
  15. }
  16. else
  17. {
  18. if (PayExemptAmt > 0)
  19. {
  20. PayExemptAmt--;
  21. return true;
  22. }
  23. else
  24. {
  25. return false;
  26. }
  27. }
  28. }
  29. set { PayExempt_ = value; }
  30. }
  31. public static bool ConnectExempt
  32. {
  33. get
  34. {
  35. if (ConnectExempt_)
  36. {
  37. return true;
  38. }
  39. else
  40. {
  41. if (ConnectExemptAmt > 0)
  42. {
  43. ConnectExemptAmt--;
  44. return true;
  45. }
  46. else
  47. {
  48. return false;
  49. }
  50. }
  51. }
  52. set { ConnectExempt_ = value; }
  53. }
  54. public static bool PayExempt_;
  55. public static bool ConnectExempt_;
  56. public static bool TutorialB;
  57. public static bool TutorialB_;
  58. public static int TutorialIndexA;
  59. public static int TutorialIndexB;
  60. public static int PayExemptAmt;
  61. public static int ConnectExemptAmt;
  62. public static bool TutorialA;
  63. #endregion
  64. public override void Instantiate()
  65. {
  66. if (TutorialA)
  67. {
  68. ManaReso.Get<ObjRoot>("Tutorial", Folder.Scene, true, transform, false, ObjType.Tutorial).AddScript<Tutorial>();
  69. }
  70. }
  71. public override void RegistValueC()
  72. {
  73. ManaReso.Get<Image>("N_Mask").material = ManaReso.Load<Material>("UIMaskMat", Folder.Effect);
  74. Tutorial.Arrow = ManaReso.Get("N_Arrow");
  75. Tutorial.Material = ManaReso.Get<Image>("N_Mask").material;
  76. if (TutorialA)
  77. {
  78. ManaReso.Get("TutorialMask").AddScript<SceneMask>();
  79. ManaReso.Get("PlayerBk1").CreateMove2D();
  80. ManaReso.Get("PlayerBk2").CreateMove2D();
  81. ManaReso.Get("PlayerBk3").CreateMove2D();
  82. ManaReso.Get("Tutorial").CreateTweenSr(0, 1, 1f, true, true, Curve.EaseOutQuad, false, true);
  83. ManaReso.Get("PlayerBk1").CreateTweenScale(new Vector3(0.75f, 0.75f, 0.75f), new Vector3(0.9f, 0.9f, 0.9f), 1f, true, true, Curve.EaseOutQuad);
  84. ManaReso.Get("PlayerBk2").CreateTweenScale(new Vector3(0.75f, 0.75f, 0.75f), new Vector3(0.9f, 0.9f, 0.9f), 1f, true, true, Curve.EaseOutQuad);
  85. ManaReso.Get("PlayerBk3").CreateTweenScale(new Vector3(0.75f, 0.75f, 0.75f), new Vector3(0.9f, 0.9f, 0.9f), 1f, true, true, Curve.EaseOutQuad);
  86. ManaReso.Get("TutorialMask").CreateTweenSr(0, 180 / 255f, 0.25f, false, true, Curve.EaseOutQuad);
  87. ManaPlayer.PlayerPink.CreateTweenScale(new Vector3(0.9f, 0.9f, 0.9f), 1f, true, true, Curve.EaseOutQuad);
  88. ManaPlayer.PlayerBlond.CreateTweenScale(new Vector3(0.9f, 0.9f, 0.9f), 1f, true, true, Curve.EaseOutQuad);
  89. ManaPlayer.PlayerBrown.CreateTweenScale(new Vector3(0.9f, 0.9f, 0.9f), 1f, true, true, Curve.EaseOutQuad);
  90. if (TutorialIndexA == 1)
  91. {
  92. PrepareStep1();
  93. }
  94. else if (TutorialIndexA == 2)
  95. {
  96. Garden.Instance.TutorialToRegular();
  97. PrepareStep2();
  98. }
  99. else if (TutorialIndexA == 4)
  100. {
  101. ManaReso.SetActive("N_Tutorial", true);
  102. ManaReso.SetActive("Tutorial", true);
  103. ManaReso.SetActive("TutorialMask", true);
  104. ManaReso.SetActive("TutorialCollider", true);
  105. Garden.Instance.TutorialToRegular();
  106. ManaUI.Instance.TutorialToRegular();
  107. Transform tra = ManaGarden.SlotList[0].transform;
  108. Tutorial.HightScene(0.1f, 0.075f, tra.FindChild("SlotArrow"), tra);
  109. }
  110. else if (TutorialIndexA == 6)
  111. {
  112. Garden.Instance.TutorialToRegular();
  113. ManaUI.Instance.TutorialToRegular();
  114. PrepareStep6();
  115. }
  116. }
  117. }
  118. public static void EndStep1()
  119. {
  120. Garden.Instance.TutorialToRegular();
  121. Destroy(ManaReso.Get("PlayerBk1").gameObject);
  122. Destroy(ManaReso.Get("PlayerBk2").gameObject);
  123. Destroy(ManaReso.Get("PlayerBk3").gameObject);
  124. PrepareStep2();
  125. }
  126. public static void EndStep2()
  127. {
  128. Tutorial.HightDisable();
  129. PrepareStep3();
  130. }
  131. public static void EndStep3()
  132. {
  133. Tutorial.HightDisable();
  134. ManaReso.SetActive("D_Quit", true);
  135. PrepareStep4();
  136. }
  137. public static void EndStep4()
  138. {
  139. Tutorial.HightDisable();
  140. PrepareStep5();
  141. }
  142. public static void EndStep5()
  143. {
  144. PrepareStep6();
  145. }
  146. public static void EndStep6()
  147. {
  148. Tutorial.HightDisable();
  149. PrepareStep7();
  150. }
  151. public static void EndStep7()
  152. {
  153. Tutorial.HightDisable(0, true);
  154. PrepareStep8();
  155. }
  156. public static void EndStep8()
  157. {
  158. Tutorial.HightDisable(0, true);
  159. PrepareStep9();
  160. }
  161. public static void EndStep9()
  162. {
  163. TutorialA = false;
  164. Tutorial.HightDisable();
  165. ManaReso.SetActive("Tutorial", false);
  166. ManaReso.SetActive("N_Tutorial", false);
  167. }
  168. public static void PrepareStep1()
  169. {
  170. TutorialIndexA = 1;
  171. ManaReso.Get("PlayerBk2").TweenForScale();
  172. ManaPlayer.PlayerBlond.TweenForScale();
  173. ManaReso.SetActive("PlayerBk1", true);
  174. ManaReso.SetActive("PlayerBk2", true);
  175. ManaReso.SetActive("PlayerBk3", true);
  176. ManaReso.SetActive("TutorialMask", true);
  177. ManaReso.SetActive("TutorialCollider", true);
  178. ManaReso.SetActive("N_Tutorial", true);
  179. ManaReso.SetActive("N_Confirm", true);
  180. ManaReso.AddButtonEventOnetime
  181. (
  182. "N_Confirm",
  183. () =>
  184. {
  185. Transform tra = ManaPlayer.SelePlayerTra;
  186. ManaPlayer.Player = tra.GetComponent<Player>();
  187. tra.parent = ManaReso.Get("Garden");
  188. ManaReso.TraDic.Add(tra.name, tra);
  189. ManaAudio.PlayClip(Clip.BtnClip);
  190. tra.CreateTweenScale(ManaReso.Get("PlayerPosTra").localScale, 1f, true, true, Curve.EaseOutQuad);
  191. tra.CreateTweenVec3D(ManaReso.Get("PlayerPosTra").position, 1f, false, true, true, Curve.EaseOutQuad);
  192. tra.TweenForVec();
  193. tra.TweenForScale();
  194. ManaReso.Get("N_Confirm").TweenBacCG();
  195. Tween tween = ManaReso.Get("Tutorial").TweenBacSr();
  196. tween.AddEventOnetime
  197. (
  198. EventType.BackwardFinish,
  199. () =>
  200. {
  201. EndStep1();
  202. }
  203. );
  204. }
  205. );
  206. }
  207. public static void PrepareStep2()
  208. {
  209. TutorialIndexA = 2;
  210. ManaUI.Instance.TutorialToRegular();
  211. ManaReso.Get("C_Main").TweenForCG();
  212. ManaReso.Get("C_MiniGame").TweenForCG();
  213. ManaReso.SetActive("C_Coin", false);
  214. ManaReso.SetActive("C_Setting", false);
  215. ManaReso.SetActive("C_Achieve", false);
  216. ManaReso.SetActive("C_Manage", false);
  217. ManaReso.SetActive("N_Tutorial", true);
  218. Tween tween = ManaReso.Get("N_Mask").TweenConForGra();
  219. tween.AddEventOnetime
  220. (
  221. EventType.ForwardFinish,
  222. () =>
  223. {
  224. Tutorial.HightScreen(ManaReso.Get("C_MiniArrow0"), ManaReso.Get("C_MiniArrow1"), ManaReso.Get("C_MiniGame"));
  225. }
  226. );
  227. ManaReso.AddButtonEventOnetime
  228. (
  229. "C_MiniGame",
  230. () =>
  231. {
  232. EndStep2();
  233. }
  234. );
  235. }
  236. public static void PrepareStep3()
  237. {
  238. ManaReso.Get("Tutorial").SetCollider(false);
  239. ManaReso.SetActive("D_Quit", false);
  240. Tween tween = ManaReso.Get("D_MiniGame").GetTweenCG();
  241. tween.AddEventOnetime
  242. (
  243. EventType.ForwardFinish,
  244. () =>
  245. {
  246. Tutorial.HightScreen(ManaReso.Get("D_BeginArrow0"), ManaReso.Get("D_BeginArrow1"), ManaReso.Get("D_Begin"));
  247. }
  248. );
  249. ManaReso.PushButtonEventOnetime
  250. (
  251. "D_Begin",
  252. () =>
  253. {
  254. Tutorial.HightDisable();
  255. }
  256. );
  257. ManaReso.AddButtonEventOnetime
  258. (
  259. "Da_GetAward",
  260. () =>
  261. {
  262. EndStep3();
  263. }
  264. );
  265. }
  266. public static void PrepareStep4()
  267. {
  268. TutorialIndexA = 4;
  269. Tween tween = ManaReso.Get("D_MiniGame").GetTweenCG();
  270. tween.AddEventOnetime
  271. (
  272. EventType.BackwardFinish,
  273. () =>
  274. {
  275. ManaReso.Get("Tutorial").SetCollider(true);
  276. ManaReso.Get<SpriteRenderer>("TutorialMask").material.SetColor("_Color", Color.white);
  277. ManaReso.SetActive("TutorialMask", true);
  278. ManaReso.SetActive("TutorialCollider", true);
  279. Transform tra = ManaGarden.SlotList[0].transform;
  280. Tutorial.HightScene(0.1f, 0.075f, tra.FindChild("SlotArrow"), tra);
  281. }
  282. );
  283. }
  284. public static void PrepareStep5()
  285. {
  286. Tween tween = ManaReso.Get("G_Flower").TweenForCG();
  287. tween.AddEventOnetime
  288. (
  289. EventType.ForwardFinish,
  290. () =>
  291. {
  292. Transform tra = ManaReso.Get("G_RegularGrid").GetChild(0);
  293. Tutorial.HightScreen(tra.FindChild("Arrow0"), tra);
  294. }
  295. );
  296. FlowerInfo flowerInfo = ManaGarden.FlowerInfoDic[1];
  297. flowerInfo.Button.AddButtonEventOnetime
  298. (
  299. () =>
  300. {
  301. Tutorial.HightDisable(0, false);
  302. Tutorial.HightScreen(ManaReso.Get("G_Arrow0"), ManaReso.Get("G_Close"));
  303. }
  304. );
  305. ManaReso.AddButtonEventOnetime
  306. (
  307. "G_Close",
  308. () =>
  309. {
  310. Tutorial.HightDisable();
  311. }
  312. );
  313. tween.AddEventOnetime
  314. (
  315. EventType.BackwardFinish,
  316. () =>
  317. {
  318. EndStep5();
  319. }
  320. );
  321. }
  322. public static void PrepareStep6()
  323. {
  324. TutorialIndexA = 6;
  325. ManaReso.SetActive("C_Coin", true);
  326. ManaReso.SetActive("C_Setting", true);
  327. ManaReso.SetActive("C_Achieve", true);
  328. ManaReso.SetActive("C_Manage", true);
  329. ManaReso.SetActive("N_Tutorial", true);
  330. Tween tween = ManaReso.Get("C_Main").TweenForCG();
  331. tween.AddEventOnetime
  332. (
  333. EventType.ForwardFinish, () =>
  334. {
  335. Tutorial.HightScreen(ManaReso.Get("C_ManageArrow0"), ManaReso.Get("C_Manage"));
  336. }
  337. );
  338. ManaReso.AddButtonEventOnetime
  339. (
  340. "C_Manage",
  341. () =>
  342. {
  343. EndStep6();
  344. }
  345. );
  346. }
  347. public static void PrepareStep7()
  348. {
  349. Tween tween = ManaReso.Get("F_Manage0").GetTweenVec();
  350. tween.AddEventOnetime
  351. (
  352. EventType.ForwardFinish,
  353. () =>
  354. {
  355. Transform tra = ManaData.SkillDic["Ability1"].SkillItem;
  356. Tutorial.HightScreen(tra.FindChild("Arrow0"), tra.FindChild("Arrow1"), tra.FindChild("Btn"));
  357. }
  358. );
  359. SkillRoot skill = ManaData.SkillDic["Ability1"];
  360. skill.ItemBtn.AddButtonEventOnetime
  361. (
  362. () =>
  363. {
  364. Tutorial.HightDisable(0, true);
  365. }
  366. );
  367. tween = ManaReso.Get("Fe_Info").GetTweenCG();
  368. tween.AddEventOnetime
  369. (
  370. EventType.ForwardFinish,
  371. () =>
  372. {
  373. Tutorial.HightScreen(ManaReso.Get("Fe_Arrow0"), ManaReso.Get("Fe_Arrow1"), ManaReso.Get("Fe_Btn"));
  374. ManaReso.AddButtonEventOnetime
  375. (
  376. "Fe_Btn",
  377. EndStep7
  378. );
  379. }
  380. );
  381. }
  382. public static void PrepareStep8()
  383. {
  384. Tween tween = ManaReso.Get("Fe_Info").GetTweenCG();
  385. tween.AddEventOnetime
  386. (
  387. EventType.BackwardFinish,
  388. () =>
  389. {
  390. Transform tra = ManaData.SkillDic["Skill1"].SkillItem;
  391. Tutorial.HightScreen(tra.FindChild("Arrow0"), tra.FindChild("Arrow1"), tra.FindChild("Btn"));
  392. }
  393. );
  394. SkillRoot skill = ManaData.SkillDic["Skill1"];
  395. skill.ItemBtn.AddButtonEventOnetime
  396. (
  397. () =>
  398. {
  399. Tutorial.HightDisable(0, true);
  400. }
  401. );
  402. tween = ManaReso.Get("Fe_Info").GetTweenCG();
  403. tween.AddEventOnetime
  404. (
  405. EventType.ForwardFinish,
  406. () =>
  407. {
  408. Tutorial.HightScreen(ManaReso.Get("Fe_Arrow0"), ManaReso.Get("Fe_Arrow1"), ManaReso.Get("Fe_Btn"));
  409. ManaReso.AddButtonEventOnetime
  410. (
  411. "Fe_Btn",
  412. EndStep8
  413. );
  414. }
  415. );
  416. }
  417. public static void PrepareStep9()
  418. {
  419. Tween tween = ManaReso.Get("Fe_Info").GetTweenCG();
  420. tween.AddEventOnetime
  421. (
  422. EventType.BackwardFinish,
  423. () =>
  424. {
  425. ConnectExemptAmt = 1;
  426. Tutorial.HightScreen(ManaReso.Get("F_Arrow0"), ManaReso.Get("F_Skill1"));
  427. }
  428. );
  429. ManaReso.AddButtonEventOnetime
  430. (
  431. "F_SkillBk11",
  432. () =>
  433. {
  434. EndStep9();
  435. ConnectExemptAmt = 0;
  436. }
  437. );
  438. }
  439. public static void EndStep10()
  440. {
  441. Tutorial.HightDisable();
  442. }
  443. public static void EndStep11()
  444. {
  445. Tutorial.HightDisable();
  446. TutorialB = false;
  447. }
  448. public static void PrepareStep10()
  449. {
  450. TutorialB = false;
  451. TutorialB_ = false;
  452. ManaReso.Get("N_Mask").TweenForGra();
  453. ManaReso.Get("Fe_Info").TweenBacCG();
  454. ManaReso.SetActive("N_Tutorial", true);
  455. Ability skill = (Ability) ManaData.SkillDic["Ability2"];
  456. if (skill.ItemStatus == SkillStatus.Upgrade)
  457. {
  458. PrepareStepB11();
  459. }
  460. else
  461. {
  462. Move move = ManaReso.Get<ScrollRect>("Fa_Scrr").Locate(skill.SkillItem, 1, Curve.EaseOutQuad, LocatePos.Middle);
  463. move.AddEventOnetime
  464. (
  465. EventType.ForwardFinish,
  466. () =>
  467. {
  468. Tutorial.HightScreen(skill.SkillItem.FindChild("Arrow0"), skill.SkillItem.FindChild("Arrow1"), skill.SkillItem.FindChild("Btn"));
  469. }
  470. );
  471. skill.ItemBtn.AddButtonEventOnetime
  472. (
  473. () =>
  474. {
  475. Tutorial.HightDisable(0, true);
  476. }
  477. );
  478. Tween tween = ManaReso.Get("Fe_Info").GetTweenCG();
  479. tween.AddEventOnetime
  480. (
  481. EventType.ForwardFinish,
  482. () =>
  483. {
  484. Tutorial.HightScreen(ManaReso.Get("Fe_Arrow0"), ManaReso.Get("Fe_Arrow1"), ManaReso.Get("Fe_Btn"));
  485. ManaReso.AddButtonEventOnetime
  486. (
  487. "Fe_Btn",
  488. () =>
  489. {
  490. EndStep10();
  491. move = ManaReso.Get("MainCamera").CreateZoom2D();
  492. move.AddEventOnetime
  493. (
  494. EventType.ForwardFinish,
  495. () =>
  496. {
  497. PrepareStepA11();
  498. }
  499. );
  500. }
  501. );
  502. }
  503. );
  504. }
  505. }
  506. public static void PrepareStepA11()
  507. {
  508. ManaReso.Get("N_Mask").TweenForGra();
  509. Tween tween = ManaReso.Get("F_Manage0").TweenForVec();
  510. tween.AddEventOnetime
  511. (
  512. EventType.ForwardFinish,
  513. () =>
  514. {
  515. Auxiliary.Instance.DelayCall
  516. (
  517. () =>
  518. {
  519. ManaReso.Get<Button>("F_Elf").onClick.Invoke();
  520. },
  521. 0.25f
  522. );
  523. Auxiliary.Instance.DelayCall
  524. (
  525. () =>
  526. {
  527. Transform item = ManaData.SkillDic["Ability5"].SkillItem;
  528. Tutorial.HightScreen(item.FindChild("Arrow0"), item.FindChild("Arrow1"), item.FindChild("Btn"));
  529. },
  530. 0.5f
  531. );
  532. }
  533. );
  534. Ability skill = (Ability) ManaData.SkillDic["Ability5"];
  535. skill.ItemBtn.AddButtonEventOnetime
  536. (
  537. () =>
  538. {
  539. Tutorial.HightDisable(0, false);
  540. }
  541. );
  542. tween = ManaReso.Get("Fe_Info").GetTweenCG();
  543. tween.AddEventOnetime
  544. (
  545. EventType.ForwardFinish,
  546. () =>
  547. {
  548. Tutorial.HightScreen(ManaReso.Get("Fe_Arrow0"), ManaReso.Get("Fe_Arrow1"), ManaReso.Get("Fe_Btn"));
  549. ManaReso.AddButtonEventOnetime
  550. (
  551. "Fe_Btn",
  552. () =>
  553. {
  554. EndStep11();
  555. }
  556. );
  557. }
  558. );
  559. }
  560. public static void PrepareStepB11()
  561. {
  562. Tween tween = ManaReso.Get("Fe_Info").TweenBacCG();
  563. tween.AddEventOnetime
  564. (
  565. EventType.BackwardFinish,
  566. () =>
  567. {
  568. Auxiliary.Instance.DelayCall
  569. (
  570. () =>
  571. {
  572. ManaReso.Get<Button>("F_Elf").onClick.Invoke();
  573. },
  574. 0.25f
  575. );
  576. Auxiliary.Instance.DelayCall
  577. (
  578. () =>
  579. {
  580. Transform item = ManaData.SkillDic["Ability5"].SkillItem;
  581. Tutorial.HightScreen(item.FindChild("Arrow0"), item.FindChild("Arrow1"), item.FindChild("Btn"));
  582. },
  583. 0.5f
  584. );
  585. }
  586. );
  587. Ability skill = (Ability)ManaData.SkillDic["Ability5"];
  588. skill.ItemBtn.AddButtonEventOnetime
  589. (
  590. () =>
  591. {
  592. Tutorial.HightDisable(0, false);
  593. }
  594. );
  595. tween = ManaReso.Get("Fe_Info").GetTweenCG();
  596. tween.AddEventOnetime
  597. (
  598. EventType.ForwardFinish,
  599. () =>
  600. {
  601. Tutorial.HightScreen(ManaReso.Get("Fe_Arrow0"), ManaReso.Get("Fe_Arrow1"), ManaReso.Get("Fe_Btn"));
  602. ManaReso.AddButtonEventOnetime
  603. (
  604. "Fe_Btn",
  605. () =>
  606. {
  607. EndStep11();
  608. }
  609. );
  610. }
  611. );
  612. }
  613. }