public static Color InfusionColor(InfusionTier tier) { switch (tier) { case InfusionTier.Common: return(Common); case InfusionTier.Uncommon: return(Uncommon); case InfusionTier.Rare: return(Rare); case InfusionTier.Epic: return(Epic); case InfusionTier.Legendary: return(Legendary); case InfusionTier.Artifact: return(Artifact); default: return(Color.white); } }
public static InfusionTier Max(InfusionTier a, InfusionTier b) { if (a == InfusionTier.Undefined) { return(b); } if (b == InfusionTier.Undefined) { return(a); } return(a < b ? b : a); }
public void InitializeInfusion(InfusionType type, InfusionTier tier, out Def infusion) { if (! (from t in DefDatabase <Def> .AllDefs where t.tier == tier && t.type == type && t.MatchItemType(parent.def) select t ).TryRandomElement(out infusion)) { //No infusion available from defs Log.Warning("Infused :: Couldn't find any " + type + "InfusionDef! Tier: " + tier); } isNew = true; }
static List <Def> AvailableInfusions(PoolDef pool, InfusionTier tier, Thing thing) { List <Def> infusions = new List <Def>(0); while (tier >= 0 && infusions.Count == 0) { infusions = ( from def in DefDatabase <Def> .AllDefs where def.pool == pool && def.tier == tier && def.Allows(thing) select def ).ToList(); if (infusions.Count == 0) { #if DEBUG Log.Warning(" > No " + tier + " infusions for " + pool.defName); #endif tier--; } } return(infusions); }
public static string Translate(this InfusionTier it) { return(("Infusion" + it).Translate()); }
public void InitializeInfusionSuffix(InfusionTier tier) { InitializeInfusion(InfusionType.Suffix, tier, out suffix); }
public void InitializeInfusionPrefix(InfusionTier tier) { InitializeInfusion(InfusionType.Prefix, tier, out prefix); }