/// <summary> /// Initializes from save object. /// </summary> /// <param name="saveObject">The save object.</param> public void InitFromSaveObject(EquipmentSave saveObject) { foreach (EquipItemSave save in saveObject.Equipped) { EquippableItem eq = save.CreateObjectFromID(); eq.InitFromSaveObject(save); equipped.Add(save.EquipTypeSave.Restore(), eq); } statBonuses.Clear(); foreach (EquipmentSave.EquipBonus bonus in saveObject.Bonuses) { StatType type = bonus.Stat.Restore(); int count = bonus.Bonus; this.statBonuses.Add(type, count); } foreach (EquipmentSave.EquipBuff eb in saveObject.Buffs) { BuffSave bs = eb.Buff; EquipType et = eb.EquipType.Restore(); Buff buff = CharacterBuffsSave.SetupBuffCasterFromSave(bs, partyMembers); itemBuffs.Add(et, buff); } partyMembers = null; }