using System.Collections.Generic;
using System.Linq;
using GameLogic.Combat.CombatTool;
using GameLogic.Combat.Hero;
using GameLogic.Hero;
using OfficeOpenXml.FormulaParsing.Excel.Functions.Logical;
namespace GameLogic.Player
{
public class GongFaControl
{
///
/// 出战的功法 一共10个位置
///
public SkillInfo[] allUseSkill = new SkillInfo[10];
public List allSkill = new List();
public int taoismSkillIndex = -1;
public void AddSkillInfo(SkillInfo skillInfo)
{
allSkill.Add(skillInfo);
if (skillInfo.index != -1)
{
allUseSkill[skillInfo.index] = skillInfo;
}
}
public SkillInfo GetSkillInfo(int index)
{
return allUseSkill[index];
}
public void RemoveSkillInfo(int index)
{
allUseSkill[index] = null;
}
public void RemoveSkillInfo(SkillInfo skillInfo)
{
allUseSkill[skillInfo.index] = null;
AccountFileInfo.SkillData skillData = AccountFileInfo.Instance.playerData.AllSkillDatas.First(s => s.id == skillInfo.skillConfig.IDGroup);
skillData.useIndex = -1;
}
public void AddUseSkill(SkillInfo skillInfo)
{
allUseSkill[skillInfo.index] = skillInfo;
AccountFileInfo.SkillData skillData = AccountFileInfo.Instance.playerData.AllSkillDatas.First(s => s.id == skillInfo.skillConfig.IDGroup);
skillData.useIndex = skillInfo.index;
}
public void SetTaoismSkillIndex(int id)
{
taoismSkillIndex = id;
PlayerManager.Instance.myHero.TaoismSkillId = id;
CombatHeroEntity combatHeroEntity = CombatController.currActiveCombat.playerHeroEntity;
combatHeroEntity.CombatHeroSkillControl.This().InitTaoismSkill(id);
}
///
/// 测试用
///
public void SaveUseSkill()
{
CombatHeroEntity combatHeroEntity = CombatController.currActiveCombat.playerHeroEntity;
combatHeroEntity.CombatHeroSkillControl.SetNewSkill(allUseSkill);
AccountFileInfo.Instance.SavePlayerData();
}
public void SaveUseSkill(SkillInfo[] allUseSkill)
{
for (var i = 0; i < allSkill.Count; i++)
{
allSkill[i].index = -1;
allSkill[i].SkillData.useIndex = -1;
}
for (var i = 0; i < allUseSkill.Length; i++)
{
this.allUseSkill[i] = allUseSkill[i];
if (allUseSkill[i] != null)
{
allUseSkill[i].index = i;
allUseSkill[i].SkillData.useIndex = i;
}
}
CombatHeroEntity combatHeroEntity = CombatController.currActiveCombat.playerHeroEntity;
combatHeroEntity.CombatHeroSkillControl.SetNewSkill(allUseSkill);
AccountFileInfo.Instance.SavePlayerData();
}
}
}