private void HandleGeneralMovementOptrions(MovementStateMachine machine) { for (int i = 0; i < generalOptionsData.Count; i++) { Type optionType = Type.GetType(generalOptionsData[i]); if (optionType == null) { throw new Exception($"Type does not exist {generalOptionsData[i]}"); } EntityMovementOption movementOption; if (!GameObjectHasOptionComponent(machine.gameObject, optionType)) { movementOption = machine.gameObject.AddComponent(optionType) as EntityMovementOption; } else { movementOption = machine.GetComponent(optionType) as EntityMovementOption; } machine.AddGeneralMovementOption(movementOption); } }
private void Reset() { OnValidate(); EntiyMovementStateMachine.AddGeneralMovementOption(this); }