PlayerManager.cs 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using Excel2Json;
  4. using Fort23.UTool;
  5. using GameLogic.Bag;
  6. using GameLogic.Combat.CombatTool;
  7. using GameLogic.Equipment;
  8. using GameLogic.Hero;
  9. using GameLogic.Player;
  10. using UnityEngine;
  11. using Utility;
  12. public class PlayerManager : Singleton<PlayerManager>
  13. {
  14. public GameConstantConfig gameConstantConfig;
  15. public GongFaControl GongFaControl;
  16. public FaBaoControl FaBaoControl;
  17. public BagController BagController;
  18. /// <summary>
  19. /// 玩家角色属性
  20. /// </summary>
  21. public HeroInfo myHero;
  22. public void Init()
  23. {
  24. SetConfigs();
  25. AccountFileInfo.Instance.LoadPlayerData();
  26. InitGameData();
  27. }
  28. private void SetConfigs()
  29. {
  30. gameConstantConfig = ConfigComponent.Instance.Get<GameConstantConfig>(1);
  31. }
  32. private void InitGameData()
  33. {
  34. GongFaControl = new GongFaControl();
  35. FaBaoControl = new FaBaoControl();
  36. BagController = new BagController();
  37. BagController.Init();
  38. }
  39. public void AddTestHeroInfo(int heroId, int level, List<int> skill, List<int> magicWeaponId)
  40. {
  41. for (int i = 0; i < skill.Count; i++)
  42. {
  43. SkillInfo skillInfo = new SkillInfo(skill[i], 1);
  44. GongFaControl.AddSkillInfo(skillInfo);
  45. }
  46. for (int i = 0; i < magicWeaponId.Count; i++)
  47. {
  48. FaBaoInfo faBaoInfo = new FaBaoInfo(magicWeaponId[i], 1);
  49. FaBaoControl.AddFaBao(faBaoInfo);
  50. FaBaoControl.FightFaBao.Add(faBaoInfo);
  51. }
  52. HeroInfo heroInfo = new HeroInfo();
  53. heroInfo.InitHero(heroId, level);
  54. myHero = heroInfo;
  55. myHero.MagicWeaponID.Clear();
  56. myHero.MagicWeaponID.AddRange(FaBaoControl.FightFaBao);
  57. }
  58. /// <summary>
  59. /// 保存英雄数据
  60. /// </summary>
  61. /// <param name="heroInfo"></param>
  62. public void SaveHeroData(HeroInfo heroInfo)
  63. {
  64. // if (!QuickSaveHeroData(heroInfo))
  65. // {
  66. // for (int i = 0; i < AccountFileInfo.Instance.playerData.HeroListInLeadDatas.Count; i++)
  67. // {
  68. // AccountFileInfo.HeroData heroData = AccountFileInfo.Instance.playerData.HeroListInLeadDatas[i];
  69. // if (heroData.heroModelId == heroInfo.modelID)
  70. // {
  71. // AccountFileInfo.Instance.playerData.HeroListInLeadDatas[i] = heroInfo.ToHeroData();
  72. // //存下来,用于快速查找
  73. // leadHeroIdx = i;
  74. // AccountFileInfo.Instance.SavePlayerData();
  75. // return;
  76. // }
  77. // }
  78. // }
  79. }
  80. }