public override void SetValue(Item item, int value) { ISkillBonuses sb = item as ISkillBonuses; int firstValid = -1; for (int i = 0; i < 5; ++i) { SkillName skill; double bonus; if (!sb.SkillBonuses.GetValues(i, out skill, out bonus)) { if (firstValid == -1) { firstValid = i; } continue; } if (Skill == skill) { sb.SkillBonuses.SetValues(i, Skill, value); return; } } if (firstValid != -1) { sb.SkillBonuses.SetValues(firstValid, Skill, value); return; } }
public override int GetValue(Item item) { ISkillBonuses sb = item as ISkillBonuses; for (int i = 0; i < 5; ++i) { SkillName skill; double bonus; if (!sb.SkillBonuses.GetValues(i, out skill, out bonus)) { continue; } if (Skill == skill) { return((int)bonus); } } return(0); }