public override void Shoot() { if (this.Time % 1 != 0) { return; } for (int index = 0; index < 2; ++index) { StageDataPackage stageData = this.StageData; MyRandom ran1 = this.StageData.Ran; int minValue1 = (int)this.OriginalPosition.X - 20; PointF originalPosition = this.OriginalPosition; int maxValue1 = (int)originalPosition.X + 20; double num1 = (double)ran1.Next(minValue1, maxValue1); MyRandom ran2 = this.StageData.Ran; originalPosition = this.OriginalPosition; int minValue2 = (int)originalPosition.Y - 20; originalPosition = this.OriginalPosition; int maxValue2 = (int)originalPosition.Y + 20; double num2 = (double)ran2.Next(minValue2, maxValue2); PointF OriginalPosition = new PointF((float)num1, (float)num2); double num3 = (double)this.StageData.Ran.Next(10, 30) / 10.0; double direction = this.Direction; int LifeTime = 100 + this.Ran.Next(60); Particle3D3 particle3D3 = new Particle3D3(stageData, "Petal30", OriginalPosition, (float)num3, direction, LifeTime); particle3D3.Angle = (double)this.StageData.Ran.Next(0, 360) * 3.14159274101257 / 180.0; particle3D3.AngularVelocity3D = (float)this.StageData.Ran.Next(10) / 100f; particle3D3.Scale = (float)this.StageData.Ran.Next(5, 8) / 10f; particle3D3.RotatingAxis = new Vector3((float)this.StageData.Ran.Next(-100, 100), (float)this.StageData.Ran.Next(-100, 100), (float)this.StageData.Ran.Next(-100, 100)); particle3D3.MaxTransparent = (int)byte.MaxValue; } }
public override void GiveEndEffect() { Color color; switch (this.ColorType) { case 0: color = Color.Red; new EndEnemy(this.StageData, "EndEnemy0", this.Position, 0.0f, 0.0).Scale = 0.2f; break; case 1: color = Color.CornflowerBlue; new EndEnemy(this.StageData, "EndEnemy1", this.Position, 0.0f, 0.0).Scale = 0.2f; break; case 2: color = Color.Green; new EndEnemy(this.StageData, "EndEnemy2", this.Position, 0.0f, 0.0).Scale = 0.2f; break; case 3: color = Color.Yellow; new EndEnemy(this.StageData, "EndEnemy3", this.Position, 0.0f, 0.0).Scale = 0.2f; break; default: color = Color.White; new EndEnemy(this.StageData, "EndEnemy2", this.Position, 0.0f, 0.0).Scale = 0.2f; new EndEnemy(this.StageData, "EndEnemy3", this.Position, 0.0f, 0.0).Scale = 0.2f; break; } for (int index = 0; index < 10; ++index) { Particle3D3 particle3D3 = new Particle3D3(this.StageData, "Effect-0", this.OriginalPosition, (float)this.Ran.Next(40) / 10f, (double)this.Ran.Next(360) / 180.0 * 3.14159274101257, 40); particle3D3.Angle = (double)this.StageData.Ran.Next(0, 360) * 3.14159274101257 / 180.0; particle3D3.AngularVelocity3D = (float)this.StageData.Ran.Next(10, 30) / 100f; particle3D3.Scale = (float)this.StageData.Ran.Next(12, 18) / 10f; particle3D3.RotatingAxis = new Vector3((float)this.StageData.Ran.Next(-100, 100), (float)this.StageData.Ran.Next(-100, 100), (float)this.StageData.Ran.Next(-100, 100)); particle3D3.ColorValue = color; particle3D3.MaxTransparent = 200; } }