public override void Initialize(Entity entity, Data data) { // Needed to clear out Dicts after playing for AgentView Editor Window if (!Application.isPlaying && entitiesData != null && entitiesData.ContainsKey(entity)) { OnEnable(); } MinMaxFloatData minMaxFloatData = (MinMaxFloatData)data; entitiesData.Add(entity, new MinMaxFloatData() { floatValue = minMaxFloatData.floatValue, min = minMaxFloatData.min, max = minMaxFloatData.max }); }
public override Data SetData(Entity entity, Data data) { MinMaxFloatData minMaxFloatData = entitiesData[entity]; float newLevel = ((MinMaxFloatData)data).floatValue; if (newLevel > minMaxFloatData.max) { newLevel = minMaxFloatData.max; } else if (newLevel < minMaxFloatData.min) { newLevel = minMaxFloatData.min; } Debug.Log(entity.name + ": " + name + " Set to " + newLevel); minMaxFloatData.floatValue = newLevel; return(minMaxFloatData); }
public void SetValueFromNormalizedValue(Entity entity, float normalizedValue) { MinMaxFloatData minMaxFloatData = entitiesData[entity]; minMaxFloatData.floatValue = normalizedValue * (minMaxFloatData.max - minMaxFloatData.min) + minMaxFloatData.min; }
public float GetNormalizedLevel(Entity entity) { MinMaxFloatData minMaxFloatData = entitiesData[entity]; return(Mathf.Clamp((minMaxFloatData.floatValue - minMaxFloatData.min) / (minMaxFloatData.max - minMaxFloatData.min), 0f, 1f)); }