public override bool Draw(Color Color) { Color cl = RetroApplication.Blend(Color.Black, Color, p); RetroApplication.Raster[x - 2, y] = cl; RetroApplication.Raster[x - 1, y] = cl; RetroApplication.Raster[x, y] = cl; RetroApplication.Raster[x + 1, y] = cl; RetroApplication.Raster[x + 2, y] = cl; RetroApplication.Raster[x + 3, y] = cl; RetroApplication.Raster[x, y - 1] = cl; RetroApplication.Raster[x + 1, y - 1] = cl; RetroApplication.Raster[x, y - 2] = cl; RetroApplication.Raster[x + 1, y - 2] = cl; RetroApplication.Raster[x, y + 1] = cl; RetroApplication.Raster[x + 1, y + 1] = cl; RetroApplication.Raster[x, y + 2] = cl; RetroApplication.Raster[x + 1, y + 2] = cl; RetroApplication.Raster[x + 2, y + 1] = cl; RetroApplication.Raster[x + 3, y + 1] = cl; RetroApplication.Raster[x - 1, y + 1] = cl; RetroApplication.Raster[x - 2, y + 1] = cl; RetroApplication.Raster[x, y + 3] = cl; RetroApplication.Raster[x + 1, y + 3] = cl; return(true); }
public override bool Draw(Color Color) { Color cl = RetroApplication.Blend(Color.Black, Color, p); int xd = (int)(this.X + 0.5); int yd = (int)(this.Y + 0.5); RetroApplication.Raster[xd, yd] = cl; RetroApplication.Raster[xd + 1, yd] = cl; RetroApplication.Raster[xd + 2, yd] = cl; RetroApplication.Raster[xd + 3, yd] = cl; RetroApplication.Raster[xd + 4, yd] = cl; RetroApplication.Raster[xd + 5, yd] = cl; RetroApplication.Raster[xd + 6, yd] = cl; RetroApplication.Raster[xd + 7, yd] = cl; RetroApplication.Raster[xd + 8, yd] = cl; RetroApplication.Raster[xd + 9, yd] = cl; RetroApplication.Raster[xd + 10, yd] = cl; RetroApplication.Raster[xd + 11, yd] = cl; RetroApplication.Raster[xd + 12, yd] = cl; RetroApplication.Raster[xd + 13, yd] = cl; RetroApplication.Raster[xd + 14, yd] = cl; RetroApplication.Raster[xd + 15, yd] = cl; RetroApplication.Raster[xd + 16, yd] = cl; RetroApplication.Raster[xd + 17, yd] = cl; RetroApplication.Raster[xd + 18, yd] = cl; RetroApplication.Raster[xd + 19, yd] = cl; RetroApplication.Raster[xd + 20, yd] = cl; RetroApplication.Raster[xd, yd - 1] = cl; RetroApplication.Raster[xd + 1, yd - 1] = cl; RetroApplication.Raster[xd + 2, yd - 1] = cl; RetroApplication.Raster[xd + 3, yd - 1] = cl; RetroApplication.Raster[xd + 4, yd - 1] = cl; RetroApplication.Raster[xd + 5, yd - 1] = cl; RetroApplication.Raster[xd + 6, yd - 1] = cl; RetroApplication.Raster[xd + 7, yd - 1] = cl; RetroApplication.Raster[xd + 8, yd - 1] = cl; RetroApplication.Raster[xd + 9, yd - 1] = cl; RetroApplication.Raster[xd + 10, yd - 1] = cl; RetroApplication.Raster[xd + 11, yd - 1] = cl; RetroApplication.Raster[xd + 12, yd - 1] = cl; RetroApplication.Raster[xd + 13, yd - 1] = cl; RetroApplication.Raster[xd + 14, yd - 1] = cl; RetroApplication.Raster[xd + 15, yd - 1] = cl; RetroApplication.Raster[xd + 16, yd - 1] = cl; RetroApplication.Raster[xd + 17, yd - 1] = cl; RetroApplication.Raster[xd + 18, yd - 1] = cl; RetroApplication.Raster[xd + 19, yd - 1] = cl; RetroApplication.Raster[xd + 20, yd - 1] = cl; RetroApplication.Raster[xd, yd + 1] = cl; return(true); }
public override bool MoveStep() { if (this.dead) { return(true); } double p2; this.p++; if (this.p >= 60) { this.p -= 60; } if (this.p >= 30) { p2 = 60 - this.p; } else { p2 = this.p; } p2 /= 30; Color cl = RetroApplication.Blend(color1, color2, p2); Color cl2; int x, y; bool Found = false; for (y = this.y1; y <= this.y2; y++) { for (x = this.x1; x <= this.x2; x++) { cl2 = RetroApplication.Raster[x, y]; if (cl2.A == 254) { Found = true; RetroApplication.Raster[x, y] = cl; } } } if (!Found) { this.Die(); } return(!Found); }
public override bool Draw(Color Color) { Color cl = RetroApplication.Blend(Color.Black, Color, p); int x = (int)(this.X + 0.5); int y = (int)(this.Y + 0.5); RetroApplication.Raster[x - 1, y] = cl; RetroApplication.Raster[x, y] = cl; RetroApplication.Raster[x + 1, y] = cl; RetroApplication.Raster[x, y - 1] = cl; RetroApplication.Raster[x, y + 1] = cl; return(this.Lifetime >= 0 && x >= -1 && x <= RetroApplication.RasterWidth + 1 && y >= -1 && y <= RetroApplication.RasterHeight + 1); }
public override bool Draw(Color Color) { this.R = Rnd.Next(0, 255); this.G = Rnd.Next(0, 255); this.B = Rnd.Next(0, 255); StarColor = Color.FromArgb(this.R, this.G, this.B); Color cl = RetroApplication.Blend(Color.Black, Color, 1); RetroApplication.Raster[this.x, this.y] = cl; RetroApplication.Raster[this.x + 1, this.y] = cl; RetroApplication.Raster[this.x, this.y - 1] = cl; RetroApplication.Raster[this.x + 1, this.y - 1] = cl; return(true); }
public override bool MoveStep() { if (this.dead) { return(true); } if (this.currentRadius >= this.expectedRadius) { this.dead = true; RetroApplication.FillEllipse(this.xc, this.yc, this.currentRadius, this.currentRadius, Color.Black); } else { this.currentRadius++; RetroApplication.FillEllipse(this.xc, this.yc, this.currentRadius, this.currentRadius, RetroApplication.Blend(this.color, Color.Black, ((double)this.currentRadius) / this.expectedRadius)); } return(this.dead); }