Merge branch 'release/3.4'

This commit is contained in:
Dylan K. Taylor 2018-11-30 19:28:06 +00:00
commit c46475ac4a
4 changed files with 41 additions and 31 deletions

View File

@ -4,9 +4,6 @@
# New settings/defaults won't appear automatically in this file when upgrading.
settings:
#Three-letter language code for server-side localization
#Check your language code on https://en.wikipedia.org/wiki/List_of_ISO_639-2_codes
language: "eng"
#Whether to send all strings translated to server locale or let the device handle them
force-language: false
shutdown-message: "Server closed"

View File

@ -1425,10 +1425,38 @@ class Server{
}
$this->config = new Config($this->dataPath . "pocketmine.yml", Config::YAML, []);
$this->logger->info("Loading server properties...");
$this->properties = new Config($this->dataPath . "server.properties", Config::PROPERTIES, [
"motd" => \pocketmine\NAME . " Server",
"server-port" => 19132,
"white-list" => false,
"announce-player-achievements" => true,
"spawn-protection" => 16,
"max-players" => 20,
"spawn-animals" => true,
"spawn-mobs" => true,
"gamemode" => 0,
"force-gamemode" => false,
"hardcore" => false,
"pvp" => true,
"difficulty" => 1,
"generator-settings" => "",
"level-name" => "world",
"level-seed" => "",
"level-type" => "DEFAULT",
"enable-query" => true,
"enable-rcon" => false,
"rcon.password" => substr(base64_encode(random_bytes(20)), 3, 10),
"auto-save" => true,
"view-distance" => 8,
"xbox-auth" => true,
"language" => "eng"
]);
define('pocketmine\DEBUG', (int) $this->getProperty("debug.level", 1));
$this->forceLanguage = (bool) $this->getProperty("settings.force-language", false);
$selectedLang = $this->getProperty("settings.language", Language::FALLBACK_LANGUAGE);
$selectedLang = $this->getConfigString("language", $this->getProperty("settings.language", Language::FALLBACK_LANGUAGE));
try{
$this->language = new Language($selectedLang);
}catch(LanguageNotFoundException $e){
@ -1472,33 +1500,6 @@ class Server{
$this->logger->setLogDebug(\pocketmine\DEBUG > 1);
}
$this->logger->info("Loading server properties...");
$this->properties = new Config($this->dataPath . "server.properties", Config::PROPERTIES, [
"motd" => \pocketmine\NAME . " Server",
"server-port" => 19132,
"white-list" => false,
"announce-player-achievements" => true,
"spawn-protection" => 16,
"max-players" => 20,
"spawn-animals" => true,
"spawn-mobs" => true,
"gamemode" => 0,
"force-gamemode" => false,
"hardcore" => false,
"pvp" => true,
"difficulty" => 1,
"generator-settings" => "",
"level-name" => "world",
"level-seed" => "",
"level-type" => "DEFAULT",
"enable-query" => true,
"enable-rcon" => false,
"rcon.password" => substr(base64_encode(random_bytes(20)), 3, 10),
"auto-save" => true,
"view-distance" => 8,
"xbox-auth" => true
]);
$this->memoryManager = new MemoryManager($this);
$this->logger->info($this->getLanguage()->translateString("pocketmine.server.start", [TextFormat::AQUA . $this->getVersion() . TextFormat::RESET]));

View File

@ -134,4 +134,12 @@ abstract class DataPacket extends NetworkBinaryStream{
return $data;
}
public function __get($name){
throw new \Error("Cannot read non-existing field \"$name\"");
}
public function __set($name, $value){
throw new \Error("Cannot write non-existing field \"$name\"");
}
}

View File

@ -68,6 +68,10 @@ class SetupWizard{
}
}while($lang === null);
$config = new Config(\pocketmine\DATA . "server.properties", Config::PROPERTIES);
$config->set("language", $lang);
$config->save();
$this->lang = new Language($lang);
$this->message($this->lang->get("language_has_been_selected"));