Beispiel #1
0
        private void BtnNewEmitter_Click(object sender, EventArgs e)
        {
            ParticleEmitter New = new ParticleEmitter();
            New.Name = TxtEmitterName.Text;
            Emitters.Add(New);

            LstEmitters.DataSource = null;
            LstEmitters.DataSource = Emitters;
        }
Beispiel #2
0
        // Change the Emitter to edit
        public void NewEmitter(ParticleEmitter NewEmitter)
        {
            Emitter = NewEmitter;

            if (Emitter != null)
            {
                LblEmitterName.Text = "Selected Emitter: " + Emitter.Name;

                LstEmitterTextures.DataSource = null;
                LstEmitterTextures.DataSource = Emitter.ParticleTextures;

                NudStartAlpha.Value = Emitter.StartColor.A;
                NudEndAlpha.Value = Emitter.EndColor.A;
                PnlStartColor.BackColor = SysColor.FromArgb(Emitter.StartColor.R, Emitter.StartColor.G, Emitter.StartColor.B);
                PnlEndColor.BackColor = SysColor.FromArgb(Emitter.EndColor.R, Emitter.EndColor.G, Emitter.EndColor.B);
                CmbSourceBlends.SelectedIndex = (int)Emitter.SourceBlend;
                CmbDestBlends.SelectedIndex = (int)Emitter.DestinationBlend;
                NudStartRotation.Value = (decimal)Emitter.StartRotation;
                NudEndRotation.Value = (decimal)Emitter.EndRotation;
                NudStartScale.Value = (decimal)Emitter.StartScale;
                NudEndScale.Value = (decimal)Emitter.EndScale;
                NudNumToSpit.Value = Emitter.NumParticlesToSpit;
                NudLifeDuration.Value = (decimal)Emitter.LifeSpan;
                NudMaxParticles.Value = Emitter.MaxParticles;
                NudStartVelX.Value = (decimal)Emitter.StartVelocity.X;
                NudStartVelY.Value = (decimal)Emitter.StartVelocity.Y;
                NudEndVelX.Value = (decimal)Emitter.EndVelocity.X;
                NudEndVelY.Value = (decimal)Emitter.EndVelocity.Y;
                NudSpawnRate.Value = (decimal)Emitter.SpawnRate;
                NudRangeX.Value = (decimal)Emitter.SpawnRange.X;
                NudRangeY.Value = (decimal)Emitter.SpawnRange.Y;
                NudRangeWidth.Value = (decimal)Emitter.SpawnRange.Width;
                NudRangeHeight.Value = (decimal)Emitter.SpawnRange.Height;
                NudGravityX.Value = (decimal)Emitter.Gravity.X;
                NudGravityY.Value = (decimal)Emitter.Gravity.Y;
                NudDuration.Value = (decimal)Emitter.ParticleDuration;
                NudMaxParticleDuration.Value = (decimal)Emitter.ParticleDurationMax;
                NudGravitationalPull.Value = (decimal)Emitter.GravitationalPull;
                ChkRandVelocityX.Checked = Emitter.RandomStartVelocityX;
                ChkRandVelocityY.Checked = Emitter.RandomStartVelocityY;
                ChkRandomEndVelX.Checked = Emitter.RandomEndVelocityX;
                ChkRandomEndVelY.Checked = Emitter.RandomEndVelocityY;
            }
            else
            {
                LblEmitterName.Text = "Selected Emitter: None";

                LstEmitterTextures.DataSource = null;

                NudStartAlpha.Value = 255;
                NudEndAlpha.Value = 0;
                PnlStartColor.BackColor = SysColor.White;
                PnlEndColor.BackColor = SysColor.Black;
                CmbSourceBlends.SelectedIndex = (int)Blend.SourceAlpha;
                CmbDestBlends.SelectedIndex = (int)Blend.One;
                NudStartRotation.Value = 0;
                NudEndRotation.Value = 0;
                NudStartScale.Value = 1;
                NudEndScale.Value = 0;
                NudNumToSpit.Value = 50;
                NudLifeDuration.Value = 5;
                NudMaxParticles.Value = 100;
                NudStartVelX.Value = 0;
                NudStartVelY.Value = 0;
                NudEndVelX.Value = 0;
                NudEndVelY.Value = 0;
                NudSpawnRate.Value = (decimal)0.5f;
                NudRangeX.Value = 248;
                NudRangeY.Value = 248;
                NudRangeWidth.Value = 32;
                NudRangeHeight.Value = 32;
                NudGravityX.Value = 256;
                NudGravityY.Value = 256;
                NudDuration.Value = (decimal)0.5f;
                NudGravitationalPull.Value = 0;
                ChkRandVelocityX.Checked = false;
                ChkRandVelocityY.Checked = false;
                ChkRandomEndVelX.Checked = false;
                ChkRandomEndVelY.Checked = false;
            }
        }