From 7b21fc8e9d17eac2cb2b0c41375acaa2020811a5 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Thu, 15 Apr 2021 13:54:58 +0100 Subject: [PATCH] WorldCreationOptions are now mandatory during creation of worlds --- src/world/WorldManager.php | 2 +- src/world/format/io/WritableWorldProvider.php | 2 +- src/world/format/io/data/BedrockWorldData.php | 3 +-- src/world/format/io/data/JavaWorldData.php | 3 +-- src/world/format/io/leveldb/LevelDB.php | 2 +- src/world/format/io/region/RegionWorldProvider.php | 2 +- 6 files changed, 6 insertions(+), 8 deletions(-) diff --git a/src/world/WorldManager.php b/src/world/WorldManager.php index 4036a1655..2e8ffe5ee 100644 --- a/src/world/WorldManager.php +++ b/src/world/WorldManager.php @@ -244,7 +244,7 @@ class WorldManager{ * * @throws \InvalidArgumentException */ - public function generateWorld(string $name, ?WorldCreationOptions $options = null, bool $backgroundGeneration = true) : bool{ + public function generateWorld(string $name, WorldCreationOptions $options, bool $backgroundGeneration = true) : bool{ if(trim($name) === "" or $this->isWorldGenerated($name)){ return false; } diff --git a/src/world/format/io/WritableWorldProvider.php b/src/world/format/io/WritableWorldProvider.php index de3a69b73..3f1652417 100644 --- a/src/world/format/io/WritableWorldProvider.php +++ b/src/world/format/io/WritableWorldProvider.php @@ -30,7 +30,7 @@ interface WritableWorldProvider extends WorldProvider{ /** * Generate the needed files in the path given */ - public static function generate(string $path, string $name, ?WorldCreationOptions $options = null) : void; + public static function generate(string $path, string $name, WorldCreationOptions $options) : void; /** * Saves a chunk (usually to disk). diff --git a/src/world/format/io/data/BedrockWorldData.php b/src/world/format/io/data/BedrockWorldData.php index 73a6a5be9..e59c066d5 100644 --- a/src/world/format/io/data/BedrockWorldData.php +++ b/src/world/format/io/data/BedrockWorldData.php @@ -53,8 +53,7 @@ class BedrockWorldData extends BaseNbtWorldData{ public const GENERATOR_INFINITE = 1; public const GENERATOR_FLAT = 2; - public static function generate(string $path, string $name, ?WorldCreationOptions $options = null) : void{ - $options ??= WorldCreationOptions::create(); + public static function generate(string $path, string $name, WorldCreationOptions $options) : void{ switch($options->getGeneratorClass()){ case Flat::class: $generatorType = self::GENERATOR_FLAT; diff --git a/src/world/format/io/data/JavaWorldData.php b/src/world/format/io/data/JavaWorldData.php index 301dce6a5..356579979 100644 --- a/src/world/format/io/data/JavaWorldData.php +++ b/src/world/format/io/data/JavaWorldData.php @@ -43,10 +43,9 @@ use const ZLIB_ENCODING_GZIP; class JavaWorldData extends BaseNbtWorldData{ - public static function generate(string $path, string $name, ?WorldCreationOptions $options = null, int $version = 19133) : void{ + public static function generate(string $path, string $name, WorldCreationOptions $options, int $version = 19133) : void{ //TODO, add extra details - $options ??= WorldCreationOptions::create(); $worldData = CompoundTag::create() ->setByte("hardcore", 0) ->setByte("Difficulty", $options->getDifficulty()) diff --git a/src/world/format/io/leveldb/LevelDB.php b/src/world/format/io/leveldb/LevelDB.php index d7837a7d2..56011bee1 100644 --- a/src/world/format/io/leveldb/LevelDB.php +++ b/src/world/format/io/leveldb/LevelDB.php @@ -143,7 +143,7 @@ class LevelDB extends BaseWorldProvider implements WritableWorldProvider{ return file_exists($path . "/level.dat") and is_dir($path . "/db/"); } - public static function generate(string $path, string $name, ?WorldCreationOptions $options = null) : void{ + public static function generate(string $path, string $name, WorldCreationOptions $options) : void{ self::checkForLevelDBExtension(); if(!file_exists($path . "/db")){ diff --git a/src/world/format/io/region/RegionWorldProvider.php b/src/world/format/io/region/RegionWorldProvider.php index 8212361da..c02f37739 100644 --- a/src/world/format/io/region/RegionWorldProvider.php +++ b/src/world/format/io/region/RegionWorldProvider.php @@ -74,7 +74,7 @@ abstract class RegionWorldProvider extends BaseWorldProvider{ return false; } - public static function generate(string $path, string $name, ?WorldCreationOptions $options = null) : void{ + public static function generate(string $path, string $name, WorldCreationOptions $options) : void{ if(!file_exists($path)){ mkdir($path, 0777, true); }