public void ChangeState(string stateName) { if (state != null) { state.Destuct(); } System.Type type = System.Type.GetType(stateName); state = gameObject.AddComponent(type) as BaseCameraState; state.Construct(); }