public void Append(WikiDirectory wikiDirectory) { if (Predef == null) { Predef = new List <string>(); } if (Chaps == null) { Chaps = new List <string>(); } if (Appendix == null) { Appendix = new List <string>(); } if (Postdef == null) { Postdef = new List <string>(); } var items = wikiDirectory .WikiEntries .Select(x => x.MarkdownName) .Where( x => !Predef.Contains(x) && !Chaps.Contains(x) && !Appendix.Contains(x) && !Postdef.Contains(x)); foreach (var item in items) { Chaps.Add(item); } }
public Item GenerateItem(CraftableItem mould) { if (CanCraftItem(mould)) { if (mould.MyCraftedItemType == CraftedItemType.WEAPON) { Weapon ret = null; switch ((mould as CraftedWeapon).tarType) { case (WeaponType.RECURVEBOW): ret = new RecurveBow(ALib); break; case (WeaponType.SWORD): ret = new Sword(ALib); break; case (WeaponType.CENSER): ret = new Censer(ALib); break; case (WeaponType.STAFF): ret = new Staff(ALib); break; case (WeaponType.SACRIFICIALKNIFE): ret = new SacrificialKnife(ALib); break; case (WeaponType.VESSEL): ret = new Vessel(ALib); break; } ret.CopyStats(mould as CraftedWeapon); Player_Accessor_Script.SkillsScript.AddExperience(mould.RequiredProfession, mould.RewardedExp); return(ret); } else if (mould.MyCraftedItemType == CraftedItemType.ARMOR) { Armor ret = null; switch ((mould as CraftedArmor).tarType) { case (ArmorType.CHESTPLATE): ret = new Chestplate(); ret.MyItemType = ItemType.CHESTPLATE; break; case (ArmorType.PLATELEGS): ret = new Platelegs(); ret.MyItemType = ItemType.PLATELEGS; break; case (ArmorType.HELMET): ret = new Helmet(); ret.MyItemType = ItemType.HELMET; break; case (ArmorType.CHESTGUARD): ret = new Chestguard(); ret.MyItemType = ItemType.CHESTGUARD; break; case (ArmorType.CHAPS): ret = new Chaps(); ret.MyItemType = ItemType.CHAPS; break; case (ArmorType.COIF): ret = new Coif(); ret.MyItemType = ItemType.COIF; break; case (ArmorType.ROBE): ret = new Robe(); ret.MyItemType = ItemType.ROBE; break; case (ArmorType.TROUSERS): ret = new Trousers(); ret.MyItemType = ItemType.TROUSERS; break; case (ArmorType.HAT): ret = new Hat(); ret.MyItemType = ItemType.HAT; break; } ret.CopyStats(mould as CraftedArmor); Player_Accessor_Script.SkillsScript.AddExperience(mould.RequiredProfession, mould.RewardedExp); return(ret); } else if (mould.MyCraftedItemType == CraftedItemType.REAGENT) { print("Reagent Type: " + mould.ItemName); Reagent newReagent = new Reagent(); newReagent.ReagentName = mould.ItemName; newReagent.ReagentQuantity = 1; newReagent.ReagentSprite = mould.SpritePath; Player_Accessor_Script.InventoryScript.AddResourceType(newReagent, newReagent.ReagentQuantity); Player_Accessor_Script.SkillsScript.AddExperience(mould.RequiredProfession, mould.RewardedExp); } else { print("Unknown crafting type"); } } return(null); }