public void Load(ParticleSettings loadFrom)
 {
     Acceleration = loadFrom.Acceleration;
     AccelerationVariance = loadFrom.AccelerationVariance;
     ColorRange = loadFrom.ColorRange;
     ColorVariance = loadFrom.ColorVariance;
     EmissionOffset = loadFrom.EmissionOffset;
     EmissionRadiusRange = loadFrom.EmissionRadiusRange;
     EmitRate = loadFrom.EmitRate;
     EmitterPosition = loadFrom.EmitterPosition;
     Lifetime = loadFrom.Lifetime;
     LifetimeVariance = loadFrom.LifetimeVariance;
     MaximumParticleCount = loadFrom.MaximumParticleCount;
     RadialAcceleration = loadFrom.RadialAcceleration;
     RadialAccelerationVariance = loadFrom.RadialAccelerationVariance;
     RadialVelocity = loadFrom.RadialVelocity;
     RadialVelocityVariance = loadFrom.RadialVelocityVariance;
     SizeRange = loadFrom.SizeRange;
     SizeVariance = loadFrom.SizeVariance;
     SpinVelocity = loadFrom.SpinVelocity;
     SpinVelocityVariance = loadFrom.SpinVelocityVariance;
     Sprite = loadFrom.Sprite;
     TangentialAcceleration = loadFrom.TangentialAcceleration;
     TangentialAccelerationVariance = loadFrom.TangentialAccelerationVariance;
     TangentialVelocity = loadFrom.TangentialVelocity;
     TangentialVelocityVariance = loadFrom.TangentialVelocityVariance;
     Velocity = loadFrom.Velocity;
     VelocityVariance = loadFrom.VelocityVariance;
 }
 public void Load(ParticleSettings loadFrom)
 {
     Acceleration               = loadFrom.Acceleration;
     AccelerationVariance       = loadFrom.AccelerationVariance;
     ColorRange                 = loadFrom.ColorRange;
     ColorVariance              = loadFrom.ColorVariance;
     EmissionOffset             = loadFrom.EmissionOffset;
     EmissionRadiusRange        = loadFrom.EmissionRadiusRange;
     EmitRate                   = loadFrom.EmitRate;
     EmitterPosition            = loadFrom.EmitterPosition;
     Lifetime                   = loadFrom.Lifetime;
     LifetimeVariance           = loadFrom.LifetimeVariance;
     MaximumParticleCount       = loadFrom.MaximumParticleCount;
     RadialAcceleration         = loadFrom.RadialAcceleration;
     RadialAccelerationVariance = loadFrom.RadialAccelerationVariance;
     RadialVelocity             = loadFrom.RadialVelocity;
     RadialVelocityVariance     = loadFrom.RadialVelocityVariance;
     SizeRange                  = loadFrom.SizeRange;
     SizeVariance               = loadFrom.SizeVariance;
     SpinVelocity               = loadFrom.SpinVelocity;
     SpinVelocityVariance       = loadFrom.SpinVelocityVariance;
     Sprite = loadFrom.Sprite;
     TangentialAcceleration         = loadFrom.TangentialAcceleration;
     TangentialAccelerationVariance = loadFrom.TangentialAccelerationVariance;
     TangentialVelocity             = loadFrom.TangentialVelocity;
     TangentialVelocityVariance     = loadFrom.TangentialVelocityVariance;
     Velocity         = loadFrom.Velocity;
     VelocityVariance = loadFrom.VelocityVariance;
 }
 public ParticleSystem(ParticleSettings settings, Vector2f position)
 {
     LoadParticleSettings(settings);
     EmitterPosition = position;
 }
        /// <summary>
        /// Copy given ParticleSettings into this emitter.
        /// </summary>
        /// <remarks>
        /// Applies the settings of the given ParticleSettings to this emitter.
        /// </remarks>
        /// <param name="toPosition"></param>
        public void LoadParticleSettings(ParticleSettings settings)
        {
            if (settings == null) return;

            this.Acceleration = settings.Acceleration;
            this.AccelerationVariance = settings.AccelerationVariance;

            //I hope this is correct.
            this.ColorRange = new SS14.Shared.Utility.Range<Vector4f>(
                new Vector4f(settings.ColorRange.Start.A, settings.ColorRange.Start.R, settings.ColorRange.Start.G, settings.ColorRange.Start.B),
                new Vector4f(settings.ColorRange.End.A, settings.ColorRange.End.R, settings.ColorRange.End.G, settings.ColorRange.End.B));

            this.ColorVariance = settings.ColorVariance;
            this.EmissionOffset = settings.EmissionOffset;
            this.EmissionRadiusRange = new SS14.Shared.Utility.Range<float>(settings.EmissionRadiusRange.X, settings.EmissionRadiusRange.Y);
            this.EmitterPosition = settings.EmitterPosition;
            this.EmitRate = settings.EmitRate;
            this.Lifetime = settings.Lifetime;
            this.LifetimeVariance = settings.LifetimeVariance;
            this.MaximumParticleCount = settings.MaximumParticleCount;
            this.ParticleSprite = IoCManager.Resolve<IResourceManager>().GetSprite(settings.Sprite);
            this.RadialAcceleration = settings.RadialAcceleration;
            this.RadialAccelerationVariance = settings.RadialAccelerationVariance;
            this.RadialVelocity = settings.RadialVelocity;
            this.RadialVelocityVariance = settings.RadialVelocityVariance;
            this.SizeRange = new SS14.Shared.Utility.Range<float>(settings.SizeRange.X, settings.SizeRange.Y);
            this.SizeVariance = settings.SizeVariance;
            this.SpinVelocity = new SS14.Shared.Utility.Range<float>(settings.SpinVelocity.X, settings.SpinVelocity.Y);
            this.SpinVelocityVariance = settings.SpinVelocityVariance;
            this.TangentialAcceleration = settings.TangentialAcceleration;
            this.TangentialAccelerationVariance = settings.TangentialAccelerationVariance;
            this.TangentialVelocity = settings.TangentialVelocity;
            this.TangentialVelocityVariance = settings.TangentialVelocityVariance;
            this.Velocity = settings.Velocity;
            this.VelocityVariance = settings.VelocityVariance;
        }
 public ParticleConfigurator()
 {
     InitializeComponent();
     ParticleSettings = new ParticleSettings();
     InitializeBindings();
 }