using System.Collections.Generic; using Godot; public struct ParticleRelationshipProps { public ParticleRelationshipProps(float minRadius, float maxRadius, float force) { MinRadius = minRadius; MaxRadius = maxRadius; Force = force; } public float MinRadius { get; } public float MaxRadius { get; } public float Force { get; } } public class ParticleType { private float _hue; private readonly Dictionary _particleRelationships = new Dictionary(); public float Hue { get => _hue; set => _hue = Mathf.Clamp(value, 0, 1); } public void AddRelationship(ParticleType type, float minRadius, float maxRadius, float force) { if (_particleRelationships.ContainsKey(type)) return; var props = new ParticleRelationshipProps(minRadius, maxRadius, force); _particleRelationships[type] = props; } }