public void InterpolateBetween(VariableState firstState, VariableState secondState, float interpolationValue) { #if DEBUG if (float.IsNaN(interpolationValue)) { throw new System.Exception("interpolationValue cannot be NaN"); } #endif bool setPlayerSelectionUIInstanceCurrentReadyToStartStateFirstValue = false; bool setPlayerSelectionUIInstanceCurrentReadyToStartStateSecondValue = false; PlayerSelectionUIRuntime.ReadyToStart PlayerSelectionUIInstanceCurrentReadyToStartStateFirstValue = PlayerSelectionUIRuntime.ReadyToStart.Yes; PlayerSelectionUIRuntime.ReadyToStart PlayerSelectionUIInstanceCurrentReadyToStartStateSecondValue = PlayerSelectionUIRuntime.ReadyToStart.Yes; bool setPlayerSelectionUIInstanceCurrentVariableStateFirstValue = false; bool setPlayerSelectionUIInstanceCurrentVariableStateSecondValue = false; PlayerSelectionUIRuntime.VariableState PlayerSelectionUIInstanceCurrentVariableStateFirstValue = PlayerSelectionUIRuntime.VariableState.Default; PlayerSelectionUIRuntime.VariableState PlayerSelectionUIInstanceCurrentVariableStateSecondValue = PlayerSelectionUIRuntime.VariableState.Default; bool setPlayerSelectionUIInstanceCurrentVisibilityStateFirstValue = false; bool setPlayerSelectionUIInstanceCurrentVisibilityStateSecondValue = false; PlayerSelectionUIRuntime.Visibility PlayerSelectionUIInstanceCurrentVisibilityStateFirstValue = PlayerSelectionUIRuntime.Visibility.Shown; PlayerSelectionUIRuntime.Visibility PlayerSelectionUIInstanceCurrentVisibilityStateSecondValue = PlayerSelectionUIRuntime.Visibility.Shown; switch (firstState) { case VariableState.Default: setPlayerSelectionUIInstanceCurrentReadyToStartStateFirstValue = true; PlayerSelectionUIInstanceCurrentReadyToStartStateFirstValue = GreasyPlatypusSlapper.GumRuntimes.PlayerSelectionUIRuntime.ReadyToStart.No; setPlayerSelectionUIInstanceCurrentVariableStateFirstValue = true; PlayerSelectionUIInstanceCurrentVariableStateFirstValue = GreasyPlatypusSlapper.GumRuntimes.PlayerSelectionUIRuntime.VariableState.Default; setPlayerSelectionUIInstanceCurrentVisibilityStateFirstValue = true; PlayerSelectionUIInstanceCurrentVisibilityStateFirstValue = GreasyPlatypusSlapper.GumRuntimes.PlayerSelectionUIRuntime.Visibility.Shown; break; case VariableState.PlayerSelection: break; case VariableState.Game: break; } switch (secondState) { case VariableState.Default: setPlayerSelectionUIInstanceCurrentReadyToStartStateSecondValue = true; PlayerSelectionUIInstanceCurrentReadyToStartStateSecondValue = GreasyPlatypusSlapper.GumRuntimes.PlayerSelectionUIRuntime.ReadyToStart.No; setPlayerSelectionUIInstanceCurrentVariableStateSecondValue = true; PlayerSelectionUIInstanceCurrentVariableStateSecondValue = GreasyPlatypusSlapper.GumRuntimes.PlayerSelectionUIRuntime.VariableState.Default; setPlayerSelectionUIInstanceCurrentVisibilityStateSecondValue = true; PlayerSelectionUIInstanceCurrentVisibilityStateSecondValue = GreasyPlatypusSlapper.GumRuntimes.PlayerSelectionUIRuntime.Visibility.Shown; break; case VariableState.PlayerSelection: break; case VariableState.Game: break; } if (setPlayerSelectionUIInstanceCurrentReadyToStartStateFirstValue && setPlayerSelectionUIInstanceCurrentReadyToStartStateSecondValue) { PlayerSelectionUIInstance.InterpolateBetween(PlayerSelectionUIInstanceCurrentReadyToStartStateFirstValue, PlayerSelectionUIInstanceCurrentReadyToStartStateSecondValue, interpolationValue); } if (setPlayerSelectionUIInstanceCurrentVariableStateFirstValue && setPlayerSelectionUIInstanceCurrentVariableStateSecondValue) { PlayerSelectionUIInstance.InterpolateBetween(PlayerSelectionUIInstanceCurrentVariableStateFirstValue, PlayerSelectionUIInstanceCurrentVariableStateSecondValue, interpolationValue); } if (setPlayerSelectionUIInstanceCurrentVisibilityStateFirstValue && setPlayerSelectionUIInstanceCurrentVisibilityStateSecondValue) { PlayerSelectionUIInstance.InterpolateBetween(PlayerSelectionUIInstanceCurrentVisibilityStateFirstValue, PlayerSelectionUIInstanceCurrentVisibilityStateSecondValue, interpolationValue); } if (interpolationValue < 1) { mCurrentVariableState = firstState; } else { mCurrentVariableState = secondState; } }
public override void StopAnimations() { base.StopAnimations(); PlayerSelectionUIInstance.StopAnimations(); }