GongFaControl.cs 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. using System.Collections.Generic;
  2. using System.Linq;
  3. using GameLogic.Combat.CombatTool;
  4. using GameLogic.Combat.Hero;
  5. using GameLogic.Hero;
  6. using OfficeOpenXml.FormulaParsing.Excel.Functions.Logical;
  7. namespace GameLogic.Player
  8. {
  9. public class GongFaControl
  10. {
  11. /// <summary>
  12. /// 出战的功法 一共10个位置
  13. /// </summary>
  14. public SkillInfo[] allUseSkill = new SkillInfo[10];
  15. public List<SkillInfo> allSkill = new List<SkillInfo>();
  16. public int taoismSkillIndex = -1;
  17. public void AddSkillInfo(SkillInfo skillInfo)
  18. {
  19. allSkill.Add(skillInfo);
  20. if (skillInfo.index != -1)
  21. {
  22. allUseSkill[skillInfo.index] = skillInfo;
  23. }
  24. }
  25. public SkillInfo GetSkillInfo(int index)
  26. {
  27. return allUseSkill[index];
  28. }
  29. public void RemoveSkillInfo(int index)
  30. {
  31. allUseSkill[index] = null;
  32. }
  33. public void RemoveSkillInfo(SkillInfo skillInfo)
  34. {
  35. allUseSkill[skillInfo.index] = null;
  36. AccountFileInfo.SkillData skillData = AccountFileInfo.Instance.playerData.AllSkillDatas.First(s => s.id == skillInfo.skillConfig.IDGroup);
  37. skillData.useIndex = -1;
  38. }
  39. public void AddUseSkill(SkillInfo skillInfo)
  40. {
  41. allUseSkill[skillInfo.index] = skillInfo;
  42. AccountFileInfo.SkillData skillData = AccountFileInfo.Instance.playerData.AllSkillDatas.First(s => s.id == skillInfo.skillConfig.IDGroup);
  43. skillData.useIndex = skillInfo.index;
  44. }
  45. public void SetTaoismSkillIndex(int id)
  46. {
  47. taoismSkillIndex = id;
  48. PlayerManager.Instance.myHero.TaoismSkillId = id;
  49. CombatHeroEntity combatHeroEntity = CombatController.currActiveCombat.playerHeroEntity;
  50. combatHeroEntity.CombatHeroSkillControl.This<CombatHeroSkillControl>().InitTaoismSkill(id);
  51. }
  52. /// <summary>
  53. /// 测试用
  54. /// </summary>
  55. public void SaveUseSkill()
  56. {
  57. CombatHeroEntity combatHeroEntity = CombatController.currActiveCombat.playerHeroEntity;
  58. combatHeroEntity.CombatHeroSkillControl.SetNewSkill(allUseSkill);
  59. AccountFileInfo.Instance.SavePlayerData();
  60. }
  61. public void SaveUseSkill(SkillInfo[] allUseSkill)
  62. {
  63. for (var i = 0; i < allSkill.Count; i++)
  64. {
  65. allSkill[i].index = -1;
  66. allSkill[i].SkillData.useIndex = -1;
  67. }
  68. for (var i = 0; i < allUseSkill.Length; i++)
  69. {
  70. this.allUseSkill[i] = allUseSkill[i];
  71. if (allUseSkill[i] != null)
  72. {
  73. allUseSkill[i].index = i;
  74. allUseSkill[i].SkillData.useIndex = i;
  75. }
  76. }
  77. CombatHeroEntity combatHeroEntity = CombatController.currActiveCombat.playerHeroEntity;
  78. combatHeroEntity.CombatHeroSkillControl.SetNewSkill(allUseSkill);
  79. AccountFileInfo.Instance.SavePlayerData();
  80. }
  81. }
  82. }