public void ChangeValue(float amount, StatusSeekType changeType) { if (!mInitialized) { return; } //automatically applies multipliers SetValue(Value + GetSeekValue(mActiveState.SeekType, changeType, amount), true); }
public static float GetSeekValue(StatusSeekType originType, StatusSeekType appliedType, float seekValue) { //TODO implement inverting for mismatched seek types seekValue = Mathf.Abs(seekValue); switch (appliedType) { case StatusSeekType.Positive: default: seekValue = (seekValue * Globals.StatusKeeperPositiveChangeMultiplier); break; case StatusSeekType.Neutral: break; case StatusSeekType.Negative: seekValue = (-seekValue * Globals.StatusKeeperNegativeChangeMultiplier); break; } return(seekValue); }