/// <summary> /// Is called when this component is added to a GameObject. /// Sets up some default areas. /// </summary> void Reset() { // Set up some default areas areaDatas = new AreaData[4]; int transitionCount = System.Enum.GetNames(typeof(Direction)).Length; for (int i = 0; i < areaDatas.Length; i++) { int minTransition = Random.Range(1, transitionCount); int transitionStart = Random.Range(minTransition, transitionCount); Direction[] transitions = new Direction[transitionCount - transitionStart]; int counter = 0; for (int j = transitionStart; j < transitionCount; j++) { transitions[counter] = (Direction)j; counter++; } areaDatas[i] = new AreaData(AreaData.GetTransitionList(transitions), transitions); } }