public void LoadRankData()
{
this.Data = AuraData.SkillDb.Find((int)this.Info.Id);
if (this.Data == null)
throw new Exception("Skill.LoadRankData: Skill data not found for '" + this.Info.Id.ToString() + "'.");
if ((this.RankData = this.Data.GetRankData(this.Info.Rank, _race)) == null)
throw new Exception("Skill.LoadRankData: No rank data found for '" + this.Info.Id.ToString() + "@" + this.Info.Rank.ToString() + "'.");
this.Info.MaxRank = this.Data.MaxRank;
this.Info.ConditionCount1 = (short)this.RankData.Conditions[0].Count;
this.Info.ConditionCount2 = (short)this.RankData.Conditions[1].Count;
this.Info.ConditionCount3 = (short)this.RankData.Conditions[2].Count;
this.Info.ConditionCount4 = (short)this.RankData.Conditions[3].Count;
this.Info.ConditionCount5 = (short)this.RankData.Conditions[4].Count;
this.Info.ConditionCount6 = (short)this.RankData.Conditions[5].Count;
this.Info.ConditionCount7 = (short)this.RankData.Conditions[6].Count;
this.Info.ConditionCount8 = (short)this.RankData.Conditions[7].Count;
this.Info.ConditionCount9 = (short)this.RankData.Conditions[8].Count;
if (this.RankData.Conditions[0].Visible) this.Info.Flag |= SkillFlags.ShowCondition1;
if (this.RankData.Conditions[1].Visible) this.Info.Flag |= SkillFlags.ShowCondition2;
if (this.RankData.Conditions[2].Visible) this.Info.Flag |= SkillFlags.ShowCondition3;
if (this.RankData.Conditions[3].Visible) this.Info.Flag |= SkillFlags.ShowCondition4;
if (this.RankData.Conditions[4].Visible) this.Info.Flag |= SkillFlags.ShowCondition5;
if (this.RankData.Conditions[5].Visible) this.Info.Flag |= SkillFlags.ShowCondition6;
if (this.RankData.Conditions[6].Visible) this.Info.Flag |= SkillFlags.ShowCondition7;
if (this.RankData.Conditions[7].Visible) this.Info.Flag |= SkillFlags.ShowCondition8;
if (this.RankData.Conditions[8].Visible) this.Info.Flag |= SkillFlags.ShowCondition9;
}