public static List <string> PullingBackTheVeilFormatter(ColonyAchievementStatus cas) { List <string> outStrings = new List <string>(); RevealAsteriod __instance = (RevealAsteriod)cas.Requirements.Find(s => s is RevealAsteriod); var priv = Traverse.Create(__instance); float toReveal = (float)priv.Field("percentToReveal").GetValue(); float num = 0.0f; for (int index = 0; index < Grid.Visible.Length; ++index) { if (Grid.Visible[index] > (byte)0) { ++num; } } string output = string.Format("Fog of War Pierced: {0}% / {1}%", ((double)num / (double)Grid.Visible.Length) * 100, (double)toReveal * 100); outStrings.Add(output); return(outStrings); }
/// <summary> /// Applied before Success runs. /// </summary> internal static bool Prefix(ref bool __result, RevealAsteriod __instance) { var inst = AchievementPatches.Instance; bool cont = inst == null; if (!cont) { float reveal = (float)inst.tilesRevealed / inst.targetTiles; __instance.amountRevealed = reveal; __result = reveal >= __instance.percentToReveal; } return(cont); }