I am trying to make my states not repeat twice.
// Function for next State
void goToNextState()
{
// declaration for nextState
BossState nextState = (BossState)Random.Range(0, (int)BossState.COUNT);
// goes to next state via string name
string nextStateString = nextState.ToString() + "State";
// gets the name of the current state to a string
string lastStateString = currentState.ToString() + "State";
// updates the current state
if (lastStateString != nextStateString)
{
currentState = nextState;
StartCoroutine(nextStateString);
}
// stops in case of weird behaviour
StopCoroutine(lastStateString);
StartCoroutine(nextStateString);
}