Commits
TheCutter authored and md_5 committed 7dfe6ea7eab
8 8 | /** |
9 9 | * Represents various types of options that may be used to create a world. |
10 10 | */ |
11 11 | public class WorldCreator { |
12 12 | private final String name; |
13 13 | private long seed; |
14 14 | private World.Environment environment = World.Environment.NORMAL; |
15 15 | private ChunkGenerator generator = null; |
16 16 | private WorldType type = WorldType.NORMAL; |
17 17 | private boolean generateStructures = true; |
18 + | private String generatorSettings = ""; |
18 19 | |
19 20 | /** |
20 21 | * Creates an empty WorldCreationOptions for the given world name |
21 22 | * |
22 23 | * @param name Name of the world that will be created |
23 24 | */ |
24 25 | public WorldCreator(String name) { |
25 26 | if (name == null) { |
26 27 | throw new IllegalArgumentException("World name cannot be null"); |
27 28 | } |
198 199 | * @param output {@link CommandSender} that will receive any error |
199 200 | * messages |
200 201 | * @return This object, for chaining |
201 202 | */ |
202 203 | public WorldCreator generator(String generator, CommandSender output) { |
203 204 | this.generator = getGeneratorForName(name, generator, output); |
204 205 | |
205 206 | return this; |
206 207 | } |
207 208 | |
209 + | /** |
210 + | * Sets the generator settings of the world that will be created or loaded |
211 + | * |
212 + | * @param generatorSettings The settings that should be used by the generator |
213 + | * @return This object, for chaining |
214 + | */ |
215 + | public WorldCreator generatorSettings(String generatorSettings) { |
216 + | this.generatorSettings = generatorSettings; |
217 + | |
218 + | return this; |
219 + | } |
220 + | |
221 + | /** |
222 + | * Gets the generator settings of the world that will be created or loaded |
223 + | * |
224 + | * @return The settings that should be used by the generator |
225 + | */ |
226 + | public String generatorSettings() { |
227 + | return generatorSettings; |
228 + | } |
229 + | |
208 230 | /** |
209 231 | * Sets whether or not worlds created or loaded with this creator will |
210 232 | * have structures. |
211 233 | * |
212 234 | * @param generate Whether to generate structures |
213 235 | * @return This object, for chaining |
214 236 | */ |
215 237 | public WorldCreator generateStructures(boolean generate) { |
216 238 | this.generateStructures = generate; |
217 239 | |