public static TriColorGraphic Get( System.Type graphicClass, string path, Shader shader, Vector2 drawSize, Color color, Color colorTwo, Color colorThree, GraphicData data, List <ShaderParameter> shaderParameters) { TriColorGraphicRequest req = new TriColorGraphicRequest(graphicClass, path, shader, drawSize, color, colorTwo, colorThree, data, 0, shaderParameters); if (req.graphicClass == typeof(Graphic_Multi)) { return((TriColorGraphic)TriColorGraphicDatabase.GetInner <TriColorGraphic_Multi>(req)); } try { return((TriColorGraphic)GenGeneric.InvokeStaticGenericMethod(typeof(TriColorGraphicDatabase), req.graphicClass, "GetInner", (object)req)); } catch (Exception ex) { Log.Error("Exception getting " + (object)graphicClass + " at " + path + ": " + ex.ToString(), false); } return((TriColorGraphic)BaseContent.BadGraphic); }
public static Graphic Get(Type graphicClass, string path, Shader shader, Vector2 drawSize, Color color, Color colorTwo, GraphicData data, List <ShaderParameter> shaderParameters) { GraphicRequest graphicRequest = new GraphicRequest(graphicClass, path, shader, drawSize, color, colorTwo, colorThree, data, 0, shaderParameters); if (graphicRequest.graphicClass == typeof(Graphic_Single)) { return(GraphicDatabase.GetInner <Graphic_Single>(graphicRequest)); } if (graphicRequest.graphicClass == typeof(Graphic_Terrain)) { return(GraphicDatabase.GetInner <Graphic_Terrain>(graphicRequest)); } if (graphicRequest.graphicClass == typeof(Graphic_Multi)) { return(GraphicDatabase.GetInner <Graphic_Multi>(graphicRequest)); } if (graphicRequest.graphicClass == typeof(Graphic_Mote)) { return(GraphicDatabase.GetInner <Graphic_Mote>(graphicRequest)); } if (graphicRequest.graphicClass == typeof(Graphic_Random)) { return(GraphicDatabase.GetInner <Graphic_Random>(graphicRequest)); } if (graphicRequest.graphicClass == typeof(Graphic_Flicker)) { return(GraphicDatabase.GetInner <Graphic_Flicker>(graphicRequest)); } if (graphicRequest.graphicClass == typeof(Graphic_Appearances)) { return(GraphicDatabase.GetInner <Graphic_Appearances>(graphicRequest)); } if (graphicRequest.graphicClass == typeof(Graphic_StackCount)) { return(GraphicDatabase.GetInner <Graphic_StackCount>(graphicRequest)); } try { return((Graphic)GenGeneric.InvokeStaticGenericMethod(typeof(GraphicDatabase), graphicRequest.graphicClass, "GetInner", new object[] { graphicRequest })); } catch (Exception ex) { Log.Error(string.Concat(new object[] { "Exception getting ", graphicClass, " at ", path, ": ", ex.ToString() }), false); } return(BaseContent.BadGraphic); }
public static Def GetDefSilentFail(Type type, string targetDefName) { if (type == typeof(SoundDef)) { return(SoundDef.Named(targetDefName)); } return((Def)GenGeneric.InvokeStaticMethodOnGenericType(typeof(DefDatabase <>), type, "GetNamedSilentFail", new object[] { targetDefName })); }
private static void ClearAllPlayData() { LanguageDatabase.Clear(); LoadedModManager.ClearDestroy(); foreach (Type genericParam in GenTypes.AllSubclasses(typeof(Def))) { GenGeneric.InvokeStaticMethodOnGenericType(typeof(DefDatabase <>), genericParam, "Clear"); } ThingCategoryNodeDatabase.Clear(); BackstoryDatabase.Clear(); SolidBioDatabase.Clear(); PlayDataLoader.loaded = false; }
static PRFDefOf() { Type thisType = typeof(PRFDefOf); FieldInfo[] fields = thisType.GetFields(); for (int i = 0; i < fields.Length; i++) { object def = GenGeneric.InvokeStaticMethodOnGenericType(typeof(DefDatabase <>), fields[i].FieldType, "GetNamedSilentFail", fields[i].Name); if (def != null) { fields[i].SetValue(null, def); } } }
private static void ClearAllPlayData() { LanguageDatabase.Clear(); // A14 - ModContentPackManager was removed? LoadedModManager.ClearDestroy(); foreach (Type genericParam in GenTypes.AllSubclasses(typeof(Def))) { GenGeneric.InvokeStaticMethodOnGenericType(typeof(DefDatabase <>), genericParam, "Clear"); } ThingCategoryNodeDatabase.Clear(); BackstoryDatabase.Clear(); SolidBioDatabase.Clear(); PlayDataLoader_loaded.SetValue(null, false); }
private void SetBadgeSetVisibility(List <BadgeDef> badgeSet, bool visible, bool transparent) { var workingSet = new List <BadgeDef>(); foreach (BadgeDef badgeDef in badgeSet) { if (transparent) { workingSet.Add(new BadgeDef { icon = badgeDef.icon.Replace("/", "Transparent/"), defName = badgeDef.defName + "Trans", label = badgeDef.label, description = badgeDef.description }); } else { workingSet.Add(badgeDef); } } var currentDefs = (from dd in DefDatabase <BadgeDef> .AllDefsListForReading where dd.icon == workingSet[0].icon select dd).ToList(); //Log.Message("current: " + string.Join(",", DefDatabase<BadgeDef>.AllDefsListForReading)); //Log.Message("new: " + string.Join(",", workingSet)); bool exist = currentDefs.Count > 0; if (visible && !exist) { Log.Message("Pawn Badge CC: Adding Badge-set to database, emblem: " + workingSet[0].icon); DefDatabase <BadgeDef> .Add(workingSet); return; } if (!visible && exist) { Log.Message("Pawn Badge CC: Removing Badge-set from database, emblem: " + workingSet[0].icon); foreach (BadgeDef badgeDef in (from dr in DefDatabase <BadgeDef> .AllDefsListForReading where dr.defName.StartsWith(workingSet[0].defName.Substring(0, 3)) && dr.defName.EndsWith("Trans") == transparent select dr).ToList()) { GenGeneric.InvokeStaticMethodOnGenericType(typeof(DefDatabase <>), typeof(BadgeDef), "Remove", new object[] { badgeDef }); } } }
public static Graphic_RGB Get(Type graphicClass, string path, Shader shader, Vector2 drawSize, Color color, Color colorTwo, Color colorThree, float tiles = 1, float displacementX = 0, float displacementY = 0, GraphicDataRGB data = null, List <ShaderParameter> shaderParameters = null) { GraphicRequestRGB graphicRequest = new GraphicRequestRGB(graphicClass, path, shader, drawSize, color, colorTwo, colorThree, tiles, new Vector2(displacementX, displacementY), data, 0, shaderParameters); if (graphicRequest.graphicClass == typeof(Graphic_Vehicle)) { return(GetInner <Graphic_Vehicle>(graphicRequest)); } if (graphicRequest.graphicClass == typeof(Graphic_Cannon)) { return(GetInner <Graphic_Cannon>(graphicRequest)); } if (graphicRequest.graphicClass == typeof(Graphic_CannonAnimate)) { return(GetInner <Graphic_CannonAnimate>(graphicRequest)); } try { return((Graphic_RGB)GenGeneric.InvokeStaticGenericMethod(typeof(GraphicDatabaseRGB), graphicRequest.graphicClass, "GetInner", new object[] { graphicRequest })); } catch (Exception ex) { Log.Error(string.Concat(new object[] { "Exception getting ", graphicClass, " at ", path, ": ", ex.ToString() })); } return(null); }
private static IEnumerable <Def> EnumerateAllDefs() { bool fast = false; if (fast) { foreach (var mod in LoadedModManager.RunningModsListForReading) { if (mod == null) { continue; } foreach (var def in mod.AllDefs) { yield return(def); } } foreach (var def in LoadedModManager.PatchedDefsForReading) { yield return(def); } } else { foreach (var type in GenDefDatabase.AllDefTypesWithDatabases()) { foreach (var def in (IEnumerable)GenGeneric.GetStaticPropertyOnGenericType(typeof(DefDatabase <>), type, "AllDefs")) { var finalDef = def as Def; yield return(finalDef); } } } }
public override void GenerateTestData() { base.GenerateTestData(); this.defData = TaleData_Def.GenerateFrom((Def)GenGeneric.InvokeStaticMethodOnGenericType(typeof(DefDatabase <>), this.def.defType, "GetRandom")); }
public static AvaliGraphic Get( System.Type graphicClass, string path, Shader shader, Vector2 drawSize, Color color, Color colorTwo, Color colorThree, AvaliGraphicData data, List <ShaderParameter> shaderParameters) { AvaliGraphicRequest req = new AvaliGraphicRequest(graphicClass, path, shader, drawSize, color, colorTwo, colorThree, data, 0, shaderParameters); // liQdComment 2 This is what the game requests if (req.graphicClass == typeof(Graphic_Multi)) { //Log.Message("AvaliGraphic request of type Graphic_Multi"); return((AvaliGraphic)AvaliGraphicDatabase.GetInner <AvaliGraphic_Multi>(req)); } if (req.graphicClass == typeof(AvaliGraphic_Single)) { return((AvaliGraphic)AvaliGraphicDatabase.GetInner <AvaliGraphic_Single>(req)); } if (req.graphicClass == typeof(AvaliGraphic_Terrain)) { return((AvaliGraphic)AvaliGraphicDatabase.GetInner <AvaliGraphic_Terrain>(req)); } if (req.graphicClass == typeof(AvaliGraphic_Multi)) { return((AvaliGraphic)AvaliGraphicDatabase.GetInner <AvaliGraphic_Multi>(req)); } if (req.graphicClass == typeof(AvaliGraphic_Mote)) { return((AvaliGraphic)AvaliGraphicDatabase.GetInner <AvaliGraphic_Mote>(req)); } if (req.graphicClass == typeof(AvaliGraphic_Random)) { return((AvaliGraphic)AvaliGraphicDatabase.GetInner <AvaliGraphic_Random>(req)); } if (req.graphicClass == typeof(AvaliGraphic_Flicker)) { return((AvaliGraphic)AvaliGraphicDatabase.GetInner <AvaliGraphic_Flicker>(req)); } if (req.graphicClass == typeof(AvaliGraphic_Appearances)) { return((AvaliGraphic)AvaliGraphicDatabase.GetInner <AvaliGraphic_Appearances>(req)); } if (req.graphicClass == typeof(AvaliGraphic_StackCount)) { return((AvaliGraphic)AvaliGraphicDatabase.GetInner <AvaliGraphic_StackCount>(req)); } try { return((AvaliGraphic)GenGeneric.InvokeStaticGenericMethod(typeof(AvaliGraphicDatabase), req.graphicClass, "GetInner", (object)req)); } catch (Exception ex) { Log.Error("Exception getting " + (object)graphicClass + " at " + path + ": " + ex.ToString(), false); } return(AvaliBaseContent.BadGraphic); }