private static void ReleaseEnergy(ExperimentTurn experimentTurn, OrganismState organismState, decimal delta) { Claws.AtLeast(() => delta, 0); delta = Math.Min(delta, organismState.Health); organismState.Health -= delta; experimentTurn.ExtraEnergy += delta; }
private static void AbsorbEnergy(ExperimentTurn experimentTurn, OrganismState organismState, decimal delta) { Claws.AtLeast(() => delta, 0); delta = Math.Min(delta, Math.Min(experimentTurn.ExtraEnergy, 1 - organismState.Health)); experimentTurn.ExtraEnergy -= delta; organismState.Health += delta; }