private void GizmoListOptions() { List <Building_MutagenChamber> chambers = Chambers; Building_MutagenChamber firstChamber = chambers.First(); Building_MutagenChamber lastChamber = chambers.Last(); if (firstChamber.daysIn > 0f || lastChamber.daysIn > 0f) { if (firstChamber != lastChamber) { if (chambers.All(x => x.ContainedThing != null) && chambers.Count > 1 && ModulatorOptions.merges.Count > 0) { Find.WindowStack.Add(new FloatMenu(GenMenuOptions(true))); } else { Messages.Message("Can't change a morph while there is one in progress.", MessageTypeDefOf.CautionInput); } } else { Messages.Message("Can't change a morph while there is one in progress.", MessageTypeDefOf.CautionInput); } } else { if (LinkedFacilities.OfType <Building_MutagenChamber>().Any()) { Find.WindowStack.Add(new FloatMenu(GenMenuOptions())); } } }
internal void SetAnimalAction(PawnKindDef def) { foreach (Building_MutagenChamber chamber in LinkedFacilities.OfType <Building_MutagenChamber>()) { chamber.pawnTFKind = def; chamber.linkTo = null; merging = false; random = false; } }