public override void Paint(Level level) { Painter.Fill(level, this, 3, Tile.Chasm); var c = Rnd.Int(2, 4); var p = Rnd.Chance(30); for (var i = 0; i < c; i++) { var platform = new MovingPlatform(); platform.X = Rnd.Int(Left + 4, Right - 4) * 16; platform.Y = Rnd.Int(Top + 4, Bottom - 4) * 16; platform.Controller = Rnd.Chance() ? PlatformController.ClockWise : PlatformController.CounterClockWise; level.Area.Add(platform); if (p && Rnd.Chance()) { var turret = new RotatingTurret(); level.Area.Add(turret); turret.Center = platform.Position + new Vector2(16, 12); } } }
public override void Paint(Level level) { SetupRect(); Painter.Fill(level, rect, Tile.Chasm); var platform = new MovingPlatform(); platform.X = vertical ? (Rnd.Int(Left + 2, Right - 2)) * 16 : (Left + GetWidth() / 2) * 16; platform.Y = vertical ? (Top + GetHeight() / 2) * 16 : (Rnd.Int(Top + 2, Bottom - 2)) * 16; platform.Controller = Rnd.Chance(40) ? (Rnd.Chance() ? PlatformController.ClockWise : PlatformController.CounterClockWise) : (vertical ? PlatformController.UpDown : PlatformController.LeftRight); level.Area.Add(platform); if (Rnd.Chance(30)) { var turret = new RotatingTurret(); level.Area.Add(turret); turret.Center = platform.Position + new Vector2(16, 12); } }