/// <summary> /// <para> /// Constructs a new AntennaState given the initial values from /// a pre-existing AntennaState. This effectively makes a copy /// without making the new state immutable. This can be used to /// copy states from another creature and then modified slightly. /// </para> /// </summary> /// <param name="state"> /// AntennaState used to initialize the LeftAntenna and RightAntenna properties. /// </param> public AntennaState(AntennaState state) { leftAntenna = AntennaPosition.Left; rightAntenna = AntennaPosition.Left; if (state != null) { if (verifyAntenna(state.LeftAntenna)) { leftAntenna = state.LeftAntenna; } if (verifyAntenna(state.RightAntenna)) { rightAntenna = state.RightAntenna; } } }
/// <summary> /// <para> /// Constructs a new AntennaState given the initial values for /// the LeftAntenna and RightAntenna. If the values are not /// within the ranged allowed by the AntennaState they will /// be defaulted to AntennaPosition.Left; /// </para> /// </summary> /// <param name="left"> /// AntennaPosition that will be assigned to LeftAntenna. /// </param> /// <param name="right"> /// AntennaPosition that will be assigned to RightAntenna. /// </param> public AntennaState(AntennaPosition left, AntennaPosition right) { if (VerifyAntenna(left)) { leftAntenna = left; } else { leftAntenna = AntennaPosition.Left; } if (VerifyAntenna(right)) { rightAntenna = right; } else { rightAntenna = AntennaPosition.Left; } }
/// <summary> /// <para> /// Constructs a new AntennaState given the initial values for /// the LeftAntenna and RightAntenna. If the values are not /// within the ranged allowed by the AntennaState they will /// be defaulted to AntennaPosition.Left; /// </para> /// </summary> /// <param name="left"> /// AntennaPosition that will be assigned to LeftAntenna. /// </param> /// <param name="right"> /// AntennaPosition that will be assigned to RightAntenna. /// </param> public AntennaState(AntennaPosition left, AntennaPosition right) { leftAntenna = verifyAntenna(left) ? left : AntennaPosition.Left; rightAntenna = verifyAntenna(right) ? right : AntennaPosition.Left; }
private static bool verifyAntenna(AntennaPosition pos) { var antennaValue = (int)pos; return(antennaValue >= 0 && antennaValue < 10); }
private static bool verifyAntenna(AntennaPosition pos) { var antennaValue = (int)pos; return antennaValue >= 0 && antennaValue < 10; }
private bool VerifyAntenna(AntennaPosition pos) { int antennaValue = (int) pos; if (antennaValue >= 0 && antennaValue < 10) { return true; } else { return false; } }