public void Add(string item) { item = LogicManager.RemoveDuplicateSuffix(item); if (!LogicManager.progressionBitMask.TryGetValue(item, out (int, int)a)) { RandomizerMod.Instance.LogWarn("Could not find progression value corresponding to: " + item); return; } obtained[a.Item2] |= a.Item1; if (temp) { tempItems.Add(item); } if (share) { Share(item); } // Take into account root essence found; this should only ever happen during helper log generation if (RandomizerMod.Instance.Settings.RandomizeWhisperingRoots && concealRandom) { if (LogicManager.TryGetItemDef(item, out ReqDef itemDef)) { if (itemDef.pool == "Root") { randomEssence += itemDef.geo; } } } RecalculateGrubs(); RecalculateEssence(); RecalculateFlames(); UpdateWaypoints(); }