private static HashSet <ThingDef> GetShotgunList() { HashSet <ThingDef> shotguns = new HashSet <ThingDef>(); IEnumerable <ThingDef> enumerable = from def in DefDatabase <ThingDef> .AllDefs where true select def; List <string> shotgunList = WeaponCategoryList.Named("TM_Category_Shotguns").weaponDefNames; foreach (ThingDef current in enumerable) { for (int i = 0; i < shotgunList.Count; i++) { if (current.defName == shotgunList[i].ToString() || shotgunList[i].ToString() == "*") { //Log.Message("adding shotgun def " + current.defName); shotguns.Add(current); } } } return(shotguns); }
private static HashSet <ThingDef> GetMagicFociList() { HashSet <ThingDef> magicFocis = new HashSet <ThingDef>(); IEnumerable <ThingDef> enumerable = from def in DefDatabase <ThingDef> .AllDefs where true select def; List <string> magicFociList = WeaponCategoryList.Named("TM_Category_MagicalFoci").weaponDefNames; foreach (ThingDef current in enumerable) { for (int i = 0; i < magicFociList.Count; i++) { if (current.defName == magicFociList[i].ToString() || magicFociList[i].ToString() == "*") { //Log.Message("adding magicFoci def " + current.defName); magicFocis.Add(current); } } } return(magicFocis); }
public static List <ThingDef> RifleList() { List <ThingDef> rifles = new List <ThingDef>(); rifles.Clear(); IEnumerable <ThingDef> enumerable = from def in DefDatabase <ThingDef> .AllDefs where (true) select def; List <string> rifleList = WeaponCategoryList.Named("TM_Category_Rifles").weaponDefNames; foreach (ThingDef current in enumerable) { for (int i = 0; i < rifleList.Count; i++) { if (current.defName == rifleList[i].ToString() || rifleList[i].ToString() == "*") { //Log.Message("adding rifle def " + current.defName); rifles.AddDistinct(current); } } } return(rifles); }