public virtual void BeforeRemoveFromSpecies(Species species) { // Remove any mutations that are prerequisites for us for (int i = species.MutationCount - 1; i >= 0; i--) { Mutation mutation = species.GetMutation(i); if (mutation.Prerequisites.Contains(this)) { species.RemoveMutation(mutation); } } }
public virtual void BeforeAddToSpecies(Species species) { if (Category == null) { return; } for (int i = species.MutationCount - 1; i >= 0; i--) { Mutation mutation = species.GetMutation(i); if (mutation.Category == Category) { species.RemoveMutation(mutation); } } }