/// <summary> /// Initializes a new instance of the <see cref="LevelGenerator"/> class. /// </summary> /// <param name="level">The level.</param> /// <param name="args">The Generator arguments.</param> public LevelGenerator(Level level, GeneratorArgs args) { this.Level = level; this.GenArgs = args; if (args.MaxLevelGenerationHeight < 0) { args.MaxLevelGenerationHeight = level.CWMap.Size.y * Math.Abs(args.MaxLevelGenerationHeight); } if (args.MinLevelGenerationHeight < 0) { args.MinLevelGenerationHeight = level.CWMap.Size.y * Math.Abs(args.MinLevelGenerationHeight); } if (args.MinDepth < 0) { args.MinDepth = level.CWMap.Size.y * Math.Abs(args.MinDepth); } if (args.LiquidLine < 0) { args.LiquidLine = Level.CWMap.Size.y * Math.Abs(args.LiquidLine); } random = new Random((int)args.Seed); }
/// <summary> /// Initializes a new instance of the <see cref="LevelGenerator"/> class. /// </summary> /// <param name="level">The level to generate.</param> public LevelGenerator(Level level) { //Create a standard mountain level GenArgs = new GeneratorArgs() { MaxLevelGenerationHeight = level.CWMap.Size.y / 2, MinLevelGenerationHeight = 0, TopLayer = Block.BlockList.GLASS, BottomLayer = Block.BlockList.DIRT, OverlayLayer = Block.BlockList.WHITE_CLOTH, Seed = new Random().Next(), }; Level = level; random = new Random((int)GenArgs.Seed); }
/// <summary> /// Initializes a new instance of the <see cref="LevelGenerator"/> class. /// </summary> /// <param name="level">The level.</param> /// <param name="args">The Generator arguments.</param> public LevelGenerator(Level level, GeneratorArgs args) { if (level.Size.x != level.Size.z) throw new ArgumentException("The x and z must be the same to use advanced level generation"); this.Level = level; this.GenArgs = args; if (args.MaxLevelGenerationHeight == -1) args.MaxLevelGenerationHeight = level.Size.y; if (args.MinDepth == -1) args.MaxLevelGenerationHeight = level.Size.y; random = new Random((int)args.Seed); }
/// <summary> /// Initializes a new instance of the <see cref="LevelGenerator"/> class. /// </summary> /// <param name="level">The level to generate.</param> public LevelGenerator(Level level) { if (level.Size.x != level.Size.z) throw new ArgumentException("The x and z must be the same to use advanced level generation"); //Create a standard mountain level GenArgs = new GeneratorArgs() { MaxLevelGenerationHeight = level.Size.y / 2, MinLevelGenerationHeight = 0, TopLayer = Block.BlockList.GLASS, BottomLayer = Block.BlockList.DIRT, OverlayLayer = Block.BlockList.WHITE_CLOTH, Seed = new Random().Next(), }; Level = level; random = new Random((int)GenArgs.Seed); }
/// <summary> /// Initializes a new instance of the <see cref="LevelGenerator"/> class. /// </summary> /// <param name="level">The level.</param> /// <param name="args">The Generator arguments.</param> public LevelGenerator(Level level, GeneratorArgs args) { this.Level = level; this.GenArgs = args; if ( args.MaxLevelGenerationHeight < 0 ) args.MaxLevelGenerationHeight = level.CWMap.Size.y * Math.Abs(args.MaxLevelGenerationHeight); if ( args.MinLevelGenerationHeight < 0 ) args.MinLevelGenerationHeight = level.CWMap.Size.y * Math.Abs(args.MinLevelGenerationHeight); if ( args.MinDepth < 0 ) args.MinDepth = level.CWMap.Size.y * Math.Abs(args.MinDepth); if ( args.LiquidLine < 0 ) args.LiquidLine = Level.CWMap.Size.y * Math.Abs(args.LiquidLine); random = new Random((int)args.Seed); }
/// <summary> /// /// </summary> /// <param name="level"></param> /// <param name="args"></param> public LevelGenerator(Level level, GeneratorArgs args) { this.Level = level; this.GenArgs = args; random = new Random((int)args.Seed); }