Entrance_Battle.cs 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. using UnityEngine;
  2. using System.Collections;
  3. using System.Collections.Generic;
  4. using System;
  5. using YLBattle;
  6. /// <summary>
  7. ///
  8. /// </summary>
  9. public class Entrance_Battle : MonoBehaviour
  10. {
  11. /// <summary>
  12. ///
  13. /// </summary>
  14. void Start()
  15. {
  16. BUI_MainWindow.Instance.Load(() =>
  17. {
  18. FightingResManager.Instance.PreLoadDragonBones(BattleResources.Dragons,
  19. FightingResManager.EDragonResLevel.Monster
  20. , () =>
  21. {
  22. Invoke("EnterBattle", 1.0f);
  23. });
  24. });
  25. LogHelper.Log("开始");
  26. Transform damageManagerTran = GameObject.Find("BUI_DamageManager").transform;
  27. LogHelper.Log(damageManagerTran);
  28. BUI_DamageNum damanum = damageManagerTran.Find("DamageRed/Root").gameObject.AddComponent<BUI_DamageNum>();
  29. BindScript(damanum, EBattleTips.EDAMAGE_TIPS_DAMAGE);
  30. damanum = damageManagerTran.Find("DamageCritical/Root").gameObject.AddComponent<BUI_DamageNum>();
  31. BindScript(damanum, EBattleTips.EDAMAGE_TIPS_CRIT);
  32. damanum = damageManagerTran.Find("DamageGreen/Root").gameObject.AddComponent<BUI_DamageNum>();
  33. BindScript(damanum, EBattleTips.EDAMAGE_TIPS_CURE);
  34. damanum = damageManagerTran.Find("DamageSkill/Root").gameObject.AddComponent<BUI_DamageNum>();
  35. BindScript(damanum, EBattleTips.EDAMAGE_TIPS_SKILL);
  36. }
  37. private void EnterBattle()
  38. {
  39. GameBattleManager.Instance().Go();
  40. }
  41. /// <summary>
  42. /// 绑定脚本
  43. /// </summary>
  44. /// <param name="numScript"></param>
  45. /// <param name="type"></param>
  46. private void BindScript(BUI_DamageNum numScript, EBattleTips type)
  47. {
  48. switch (type)
  49. {
  50. case EBattleTips.EDAMAGE_TIPS_DAMAGE:
  51. {
  52. for (int i = 0; i < 10; i++)
  53. {
  54. Sprite tempsprite = null;
  55. setSprite("number", i + "r", Texture => { tempsprite = Texture; numScript.Num.Add(tempsprite); });
  56. }
  57. setSprite("number", "+r", Texture => { numScript.Add = Texture; });
  58. setSprite("number", "-r", Texture => { numScript.Del = Texture; });
  59. }
  60. break;
  61. case EBattleTips.EDAMAGE_TIPS_CURE:
  62. {
  63. for (int i = 0; i < 10; i++)
  64. {
  65. Sprite tempsprite = null;
  66. setSprite("number", i + "g", Texture => { tempsprite = Texture; numScript.Num.Add(tempsprite); });
  67. }
  68. setSprite("number", "+g", Texture => { numScript.Add = Texture; });
  69. setSprite("number", "-g", Texture => { numScript.Del = Texture; });
  70. }
  71. break;
  72. case EBattleTips.EDAMAGE_TIPS_CRIT:
  73. {
  74. for (int i = 0; i < 10; i++)
  75. {
  76. Sprite tempsprite = null;
  77. setSprite("number", i + "b", Texture => { tempsprite = Texture; numScript.Num.Add(tempsprite); });
  78. }
  79. setSprite("number", "-b", Texture => { numScript.Add = Texture; });
  80. setSprite("number", "-b", Texture => { numScript.Del = Texture; });
  81. }
  82. break;
  83. case EBattleTips.EDAMAGE_TIPS_SKILL:
  84. {
  85. for (int i = 0; i < 10; i++)
  86. {
  87. Sprite tempsprite = null;
  88. setSprite("number", i + "b", Texture => { tempsprite = Texture; numScript.Num.Add(tempsprite); });
  89. }
  90. setSprite("number", "-b", Texture => { numScript.Add = Texture; });
  91. setSprite("number", "-b", Texture => { numScript.Del = Texture; });
  92. }
  93. break;
  94. }
  95. }
  96. /// <summary>
  97. /// 从bundle里获取图片
  98. /// </summary>
  99. /// <param name="iconContainer"></param>
  100. /// <param name="icon"></param>
  101. /// <param name="callBack"></param>
  102. private void setSprite(string iconContainer, string icon, Action<Sprite> callBack)
  103. {
  104. IconManager.Instance.GetSprite(iconContainer, icon, texture =>
  105. {
  106. if (texture != null && callBack != null)
  107. {
  108. callBack(texture);
  109. }
  110. });
  111. }
  112. }