internal void ApplyParameters(int seedOffset, ParameterApplicationFrequency frequency) { foreach (var parameter in parameters) { if (parameter.target.applicationFrequency == frequency) { parameter.ApplyToTarget(seedOffset); } } }
/// <summary> /// Assigns a new target /// </summary> /// <param name="targetObject">The target GameObject</param> /// <param name="targetComponent">The target component on the target GameObject</param> /// <param name="fieldOrPropertyName">The name of the property to apply the parameter to</param> /// <param name="frequency">How often to apply the parameter to its target</param> public void AssignNewTarget( GameObject targetObject, Component targetComponent, string fieldOrPropertyName, ParameterApplicationFrequency frequency) { gameObject = targetObject; component = targetComponent; propertyName = fieldOrPropertyName; applicationFrequency = frequency; var componentType = component.GetType(); fieldOrProperty = componentType.GetField(fieldOrPropertyName) != null ? FieldOrProperty.Field : FieldOrProperty.Property; }