public void SetData(StateControllerData data) { if (data == null) { return; } currentState = GameObject.Instantiate(ResourceManager.GetAiState(data.currentState)); defaultState = GameObject.Instantiate(ResourceManager.GetAiState(data.defaultState)); string currentStateName = currentState.name; string defaultStateName = defaultState.name; currentState.name = currentStateName.Contains("(") ? currentStateName.Substring(0, currentStateName.IndexOf("(")).Trim() : currentStateName; defaultState.name = defaultStateName.Contains("(") ? defaultStateName.Substring(0, defaultStateName.IndexOf("(")).Trim() : defaultStateName; chaseTarget = data.chaseTargetId != -1 ? Player.GetObjectById(data.chaseTargetId) : null; controlledObject = data.controlledObjectId != -1 ? Player.GetObjectById(data.controlledObjectId) : null; attacking = data.attacking; aiActive = data.aiActive; }
public StateControllerData GetData() { string currentStateName = currentState.name; string defaultStateName = defaultState.name; var data = new StateControllerData( currentStateName.Contains("(") ? currentStateName.Substring(0, currentStateName.IndexOf("(")).Trim() : currentStateName, defaultStateName.Contains("(") ? defaultStateName.Substring(0, defaultStateName.IndexOf("(")).Trim() : defaultStateName, chaseTarget ? chaseTarget.ObjectId : -1, controlledObject ? controlledObject.ObjectId : -1, attacking, aiActive ); return(data); }