From 2293bd948dc2c20198170d94a9bd212477b79611 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Tue, 10 Aug 2021 14:50:40 +0100 Subject: [PATCH] Added KnownTranslationFactory and use it in as many places as possible this makes translation usage much more statically analysable. The only places this isn't used are: - places that prefix translations with colours (those are still a problem) - places where server/client translations don't match (e.g. gameMode.changed accepts different parameters in vanilla than in PM) --- build/generate-known-translation-apis.php | 178 ++ build/generate-known-translation-keys.php | 93 - phpstan.neon.dist | 2 +- src/Server.php | 62 +- src/command/Command.php | 3 +- src/command/SimpleCommandMap.php | 10 +- src/command/defaults/BanCommand.php | 4 +- src/command/defaults/BanIpCommand.php | 8 +- src/command/defaults/BanListCommand.php | 6 +- src/command/defaults/ClearCommand.php | 5 +- .../defaults/DefaultGamemodeCommand.php | 4 +- src/command/defaults/DeopCommand.php | 4 +- src/command/defaults/DifficultyCommand.php | 4 +- src/command/defaults/EffectCommand.php | 11 +- src/command/defaults/EnchantCommand.php | 5 +- src/command/defaults/GamemodeCommand.php | 5 +- src/command/defaults/GiveCommand.php | 7 +- src/command/defaults/HelpCommand.php | 4 +- src/command/defaults/KickCommand.php | 5 +- src/command/defaults/KillCommand.php | 5 +- src/command/defaults/ListCommand.php | 4 +- src/command/defaults/MeCommand.php | 4 +- src/command/defaults/OpCommand.php | 4 +- src/command/defaults/PardonCommand.php | 4 +- src/command/defaults/PardonIpCommand.php | 6 +- src/command/defaults/ParticleCommand.php | 3 +- src/command/defaults/PluginsCommand.php | 4 +- src/command/defaults/SaveCommand.php | 6 +- src/command/defaults/SaveOffCommand.php | 4 +- src/command/defaults/SaveOnCommand.php | 4 +- src/command/defaults/SeedCommand.php | 4 +- src/command/defaults/SetWorldSpawnCommand.php | 4 +- src/command/defaults/SpawnpointCommand.php | 5 +- src/command/defaults/StopCommand.php | 4 +- src/command/defaults/TeleportCommand.php | 14 +- src/command/defaults/TellCommand.php | 5 +- src/command/defaults/TimeCommand.php | 8 +- src/command/defaults/TimingsCommand.php | 20 +- src/command/defaults/TitleCommand.php | 6 +- src/command/defaults/VersionCommand.php | 10 +- src/command/defaults/WhitelistCommand.php | 20 +- src/event/player/PlayerDeathEvent.php | 73 +- src/lang/KnownTranslationFactory.php | 1744 +++++++++++++++++ src/network/mcpe/NetworkSession.php | 4 +- .../mcpe/handler/LoginPacketHandler.php | 4 +- src/network/query/QueryHandler.php | 4 +- src/player/Player.php | 15 +- src/plugin/PluginBase.php | 6 +- src/plugin/PluginManager.php | 53 +- src/wizard/SetupWizard.php | 62 +- src/world/World.php | 4 +- src/world/WorldManager.php | 20 +- 52 files changed, 2185 insertions(+), 372 deletions(-) create mode 100644 build/generate-known-translation-apis.php delete mode 100644 build/generate-known-translation-keys.php create mode 100644 src/lang/KnownTranslationFactory.php diff --git a/build/generate-known-translation-apis.php b/build/generate-known-translation-apis.php new file mode 100644 index 000000000..fd24072c0 --- /dev/null +++ b/build/generate-known-translation-apis.php @@ -0,0 +1,178 @@ + $languageDefinitions + */ +function generate_known_translation_keys(array $languageDefinitions) : void{ + ob_start(); + + echo SHARED_HEADER; + echo <<<'HEADER' +/** + * This class contains constants for all the translations known to PocketMine-MP as per the used version of pmmp/Language. + * This class is generated automatically, do NOT modify it by hand. + */ +final class KnownTranslationKeys{ + +HEADER; + + ksort($languageDefinitions, SORT_STRING); + foreach($languageDefinitions as $k => $_){ + echo "\tpublic const "; + echo constantify($k); + echo " = \"" . $k . "\";\n"; + } + + echo "}\n"; + + file_put_contents(dirname(__DIR__) . '/src/lang/KnownTranslationKeys.php', ob_get_clean()); + + echo "Done generating KnownTranslationKeys.\n"; +} + +/** + * @param string[] $languageDefinitions + * @phpstan-param array $languageDefinitions + */ +function generate_known_translation_factory(array $languageDefinitions) : void{ + ob_start(); + + echo SHARED_HEADER; + echo <<<'HEADER' +/** + * This class contains factory methods for all the translations known to PocketMine-MP as per the used version of + * pmmp/Language. + * This class is generated automatically, do NOT modify it by hand. + */ +final class KnownTranslationFactory{ + +HEADER; + ksort($languageDefinitions, SORT_STRING); + + $parameterRegex = '/{%(.+?)}/'; + foreach($languageDefinitions as $key => $value){ + $parameters = []; + if(preg_match_all($parameterRegex, $value, $matches) > 0){ + foreach($matches[1] as $parameterName){ + if(is_numeric($parameterName)){ + $parameters[$parameterName] = "param$parameterName"; + }else{ + $parameters[$parameterName] = $parameterName; + } + } + } + echo "\tpublic static function " . + functionify($key) . + "(" . implode(", ", array_map(fn(string $paramName) => "string \$$paramName", $parameters)) . ") : TranslationContainer{\n"; + echo "\t\treturn new TranslationContainer(KnownTranslationKeys::" . constantify($key) . ", ["; + foreach($parameters as $parameterKey => $parameterName){ + echo "\n\t\t\t"; + if(!is_numeric($parameterKey)){ + echo "\"$parameterKey\""; + }else{ + echo $parameterKey; + } + echo " => \$$parameterName,"; + } + if(count($parameters) !== 0){ + echo "\n\t\t"; + } + echo "]);\n\t}\n\n"; + } + + echo "}\n"; + + file_put_contents(dirname(__DIR__) . '/src/lang/KnownTranslationFactory.php', ob_get_clean()); + + echo "Done generating KnownTranslationFactory.\n"; +} + + +$lang = parse_ini_file(Path::join(\pocketmine\RESOURCE_PATH, "locale", "eng.ini"), false, INI_SCANNER_RAW); +if($lang === false){ + fwrite(STDERR, "Missing language files!\n"); + exit(1); +} + +generate_known_translation_keys($lang); +generate_known_translation_factory($lang); diff --git a/build/generate-known-translation-keys.php b/build/generate-known-translation-keys.php deleted file mode 100644 index 60f901eb3..000000000 --- a/build/generate-known-translation-keys.php +++ /dev/null @@ -1,93 +0,0 @@ - $v){ - $perms[] = $k; -} - -sort($perms, SORT_STRING); -foreach($perms as $perm){ - echo "\tpublic const "; - echo constantify($perm); - echo " = \"" . $perm . "\";\n"; -} - -echo "}\n"; - -file_put_contents(dirname(__DIR__) . '/src/lang/KnownTranslationKeys.php', ob_get_clean()); - -echo "Done.\n"; diff --git a/phpstan.neon.dist b/phpstan.neon.dist index 8c45f8158..c3b6a99fd 100644 --- a/phpstan.neon.dist +++ b/phpstan.neon.dist @@ -30,7 +30,7 @@ parameters: - src/PocketMine.php - build/make-release.php - build/server-phar.php - - build/generate-known-translation-keys.php + - build/generate-known-translation-apis.php paths: - src - tests/phpstan/rules diff --git a/src/Server.php b/src/Server.php index 2b34f1cb7..bce3d1a68 100644 --- a/src/Server.php +++ b/src/Server.php @@ -43,6 +43,7 @@ use pocketmine\event\player\PlayerDataSaveEvent; use pocketmine\event\server\CommandEvent; use pocketmine\event\server\DataPacketSendEvent; use pocketmine\event\server\QueryRegenerateEvent; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; use pocketmine\lang\Language; use pocketmine\lang\LanguageNotFoundException; @@ -143,6 +144,7 @@ use function stripos; use function strlen; use function strrpos; use function strtolower; +use function strval; use function time; use function touch; use function trim; @@ -529,7 +531,7 @@ class Server{ private function handleCorruptedPlayerData(string $name) : void{ $path = $this->getPlayerDataPath($name); rename($path, $path . '.bak'); - $this->logger->error($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_DATA_PLAYERCORRUPTED, [$name])); + $this->logger->error($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_data_playerCorrupted($name))); } public function getOfflinePlayerData(string $name) : ?CompoundTag{ @@ -575,7 +577,7 @@ class Server{ try{ file_put_contents($this->getPlayerDataPath($name), zlib_encode($nbt->write(new TreeRoot($ev->getSaveData())), ZLIB_ENCODING_GZIP)); }catch(\ErrorException $e){ - $this->logger->critical($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_DATA_SAVEERROR, [$name, $e->getMessage()])); + $this->logger->critical($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_data_saveError($name, $e->getMessage()))); $this->logger->logException($e); } }); @@ -879,30 +881,30 @@ class Server{ } } - $this->logger->info($this->getLanguage()->translateString(KnownTranslationKeys::LANGUAGE_SELECTED, [$this->getLanguage()->getName(), $this->getLanguage()->getLang()])); + $this->logger->info($this->getLanguage()->translate(KnownTranslationFactory::language_selected($this->getLanguage()->getName(), $this->getLanguage()->getLang()))); if(VersionInfo::IS_DEVELOPMENT_BUILD){ if(!$this->configGroup->getPropertyBool("settings.enable-dev-builds", false)){ - $this->logger->emergency($this->language->translateString(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_ERROR1, [VersionInfo::NAME])); - $this->logger->emergency($this->language->translateString(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_ERROR2)); - $this->logger->emergency($this->language->translateString(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_ERROR3)); - $this->logger->emergency($this->language->translateString(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_ERROR4, ["settings.enable-dev-builds"])); - $this->logger->emergency($this->language->translateString(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_ERROR5, ["https://github.com/pmmp/PocketMine-MP/releases"])); + $this->logger->emergency($this->language->translate(KnownTranslationFactory::pocketmine_server_devBuild_error1(VersionInfo::NAME))); + $this->logger->emergency($this->language->translate(KnownTranslationFactory::pocketmine_server_devBuild_error2())); + $this->logger->emergency($this->language->translate(KnownTranslationFactory::pocketmine_server_devBuild_error3())); + $this->logger->emergency($this->language->translate(KnownTranslationFactory::pocketmine_server_devBuild_error4("settings.enable-dev-builds"))); + $this->logger->emergency($this->language->translate(KnownTranslationFactory::pocketmine_server_devBuild_error5("https://github.com/pmmp/PocketMine-MP/releases"))); $this->forceShutdown(); return; } $this->logger->warning(str_repeat("-", 40)); - $this->logger->warning($this->language->translateString(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_WARNING1, [VersionInfo::NAME])); - $this->logger->warning($this->language->translateString(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_WARNING2)); - $this->logger->warning($this->language->translateString(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_WARNING3)); + $this->logger->warning($this->language->translate(KnownTranslationFactory::pocketmine_server_devBuild_warning1(VersionInfo::NAME))); + $this->logger->warning($this->language->translate(KnownTranslationFactory::pocketmine_server_devBuild_warning2())); + $this->logger->warning($this->language->translate(KnownTranslationFactory::pocketmine_server_devBuild_warning3())); $this->logger->warning(str_repeat("-", 40)); } $this->memoryManager = new MemoryManager($this); - $this->logger->info($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_SERVER_START, [TextFormat::AQUA . $this->getVersion() . TextFormat::RESET])); + $this->logger->info($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_server_start(TextFormat::AQUA . $this->getVersion() . TextFormat::RESET))); if(($poolSize = $this->configGroup->getPropertyString("settings.async-workers", "auto")) === "auto"){ $poolSize = 2; @@ -955,11 +957,11 @@ class Server{ $this->onlineMode = $this->configGroup->getConfigBool("xbox-auth", true); if($this->onlineMode){ - $this->logger->info($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_SERVER_AUTH_ENABLED)); + $this->logger->info($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_server_auth_enabled())); }else{ - $this->logger->warning($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_SERVER_AUTH_DISABLED)); - $this->logger->warning($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_SERVER_AUTHWARNING)); - $this->logger->warning($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_SERVER_AUTHPROPERTY_DISABLED)); + $this->logger->warning($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_server_auth_disabled())); + $this->logger->warning($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_server_authWarning())); + $this->logger->warning($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_server_authProperty_disabled())); } if($this->configGroup->getConfigBool("hardcore", false) and $this->getDifficulty() < World::DIFFICULTY_HARD){ @@ -976,11 +978,11 @@ class Server{ $this->network = new Network($this->logger); $this->network->setName($this->getMotd()); - $this->logger->info($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_SERVER_INFO, [ + $this->logger->info($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_server_info( $this->getName(), (VersionInfo::IS_DEVELOPMENT_BUILD ? TextFormat::YELLOW : "") . $this->getPocketMineVersion() . TextFormat::RESET - ])); - $this->logger->info($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_SERVER_LICENSE, [$this->getName()])); + ))); + $this->logger->info($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_server_license($this->getName()))); Timings::init(); TimingsHandler::setEnabled($this->configGroup->getPropertyBool("settings.enable-profiling", false)); @@ -1017,7 +1019,7 @@ class Server{ ){ $providerManager->setDefault($format); }elseif($formatName !== ""){ - $this->logger->warning($this->language->translateString(KnownTranslationKeys::POCKETMINE_LEVEL_BADDEFAULTFORMAT, [$formatName])); + $this->logger->warning($this->language->translate(KnownTranslationFactory::pocketmine_level_badDefaultFormat($formatName))); } $this->worldManager = new WorldManager($this, Path::join($this->dataPath, "worlds"), $providerManager); @@ -1087,7 +1089,7 @@ class Server{ $world = $this->worldManager->getWorldByName($default); if($world === null){ - $this->getLogger()->emergency($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_LEVEL_DEFAULTERROR)); + $this->getLogger()->emergency($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_level_defaultError())); $this->forceShutdown(); return; @@ -1103,7 +1105,7 @@ class Server{ //if it's not registered we need to make sure Query still works $this->network->registerInterface(new DedicatedQueryNetworkInterface($this->getIp(), $this->getPort(), new \PrefixedLogger($this->logger, "Dedicated Query Interface"))); } - $this->logger->info($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_SERVER_NETWORKSTART, [$this->getIp(), $this->getPort()])); + $this->logger->info($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_server_networkStart($this->getIp(), (string) $this->getPort()))); if($useQuery){ $this->network->registerRawPacketHandler(new QueryHandler($this)); @@ -1124,9 +1126,9 @@ class Server{ $this->configGroup->save(); - $this->logger->info($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_SERVER_DEFAULTGAMEMODE, [$this->getGamemode()->getTranslationKey()])); - $this->logger->info($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_SERVER_DONATE, [TextFormat::AQUA . "https://patreon.com/pocketminemp" . TextFormat::RESET])); - $this->logger->info($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_SERVER_STARTFINISHED, [round(microtime(true) - $this->startTime, 3)])); + $this->logger->info($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_server_defaultGameMode($this->getGamemode()->getTranslationKey()))); + $this->logger->info($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_server_donate(TextFormat::AQUA . "https://patreon.com/pocketminemp" . TextFormat::RESET))); + $this->logger->info($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_server_startFinished(strval(round(microtime(true) - $this->startTime, 3))))); //TODO: move console parts to a separate component $consoleSender = new ConsoleCommandSender($this, $this->language); @@ -1501,10 +1503,10 @@ class Server{ ini_set("error_reporting", '0'); ini_set("memory_limit", '-1'); //Fix error dump not dumped on memory problems try{ - $this->logger->emergency($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_CRASH_CREATE)); + $this->logger->emergency($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_crash_create())); $dump = new CrashDump($this); - $this->logger->emergency($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_CRASH_SUBMIT, [$dump->getPath()])); + $this->logger->emergency($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_crash_submit($dump->getPath()))); if($this->configGroup->getPropertyBool("auto-report.enabled", true)){ $report = true; @@ -1548,7 +1550,7 @@ class Server{ if(isset($data->crashId) and isset($data->crashUrl)){ $reportId = $data->crashId; $reportUrl = $data->crashUrl; - $this->logger->emergency($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_CRASH_ARCHIVE, [$reportUrl, $reportId])); + $this->logger->emergency($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_crash_archive($reportUrl, (string) $reportId))); }elseif(isset($data->error)){ $this->logger->emergency("Automatic crash report submission failed: $data->error"); } @@ -1560,7 +1562,7 @@ class Server{ }catch(\Throwable $e){ $this->logger->logException($e); try{ - $this->logger->critical($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_CRASH_ERROR, [$e->getMessage()])); + $this->logger->critical($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_crash_error($e->getMessage()))); }catch(\Throwable $e){} } @@ -1729,7 +1731,7 @@ class Server{ } if($this->getTicksPerSecondAverage() < 12){ - $this->logger->warning($this->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_SERVER_TICKOVERLOAD)); + $this->logger->warning($this->getLanguage()->translate(KnownTranslationFactory::pocketmine_server_tickOverload())); } } diff --git a/src/command/Command.php b/src/command/Command.php index fa792fdb1..9ba5fd16c 100644 --- a/src/command/Command.php +++ b/src/command/Command.php @@ -28,6 +28,7 @@ namespace pocketmine\command; use pocketmine\command\utils\CommandException; use pocketmine\console\ConsoleCommandSender; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; use pocketmine\lang\TranslationContainer; use pocketmine\permission\PermissionManager; @@ -241,7 +242,7 @@ abstract class Command{ $result = new TranslationContainer($formatted, $message->getParameters()); $colored = new TranslationContainer(TextFormat::GRAY . TextFormat::ITALIC . $formatted, $message->getParameters()); }else{ - $result = new TranslationContainer(KnownTranslationKeys::CHAT_TYPE_ADMIN, [$source->getName(), $message]); + $result = KnownTranslationFactory::chat_type_admin($source->getName(), $message); $colored = new TranslationContainer(TextFormat::GRAY . TextFormat::ITALIC . "%" . KnownTranslationKeys::CHAT_TYPE_ADMIN, [$source->getName(), $message]); } diff --git a/src/command/SimpleCommandMap.php b/src/command/SimpleCommandMap.php index 2feb20a5b..90d54be63 100644 --- a/src/command/SimpleCommandMap.php +++ b/src/command/SimpleCommandMap.php @@ -65,7 +65,7 @@ use pocketmine\command\defaults\VanillaCommand; use pocketmine\command\defaults\VersionCommand; use pocketmine\command\defaults\WhitelistCommand; use pocketmine\command\utils\InvalidCommandSyntaxException; -use pocketmine\lang\KnownTranslationKeys; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\Server; use function array_shift; use function count; @@ -246,7 +246,7 @@ class SimpleCommandMap implements CommandMap{ try{ $target->execute($sender, $sentCommandLabel, $args); }catch(InvalidCommandSyntaxException $e){ - $sender->sendMessage($sender->getLanguage()->translateString(KnownTranslationKeys::COMMANDS_GENERIC_USAGE, [$target->getUsage()])); + $sender->sendMessage($sender->getLanguage()->translate(KnownTranslationFactory::commands_generic_usage($target->getUsage()))); }finally{ $target->timings->stopTiming(); } @@ -278,7 +278,7 @@ class SimpleCommandMap implements CommandMap{ foreach($values as $alias => $commandStrings){ if(strpos($alias, ":") !== false){ - $this->server->getLogger()->warning($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_COMMAND_ALIAS_ILLEGAL, [$alias])); + $this->server->getLogger()->warning($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_command_alias_illegal($alias))); continue; } @@ -301,12 +301,12 @@ class SimpleCommandMap implements CommandMap{ } if(count($recursive) > 0){ - $this->server->getLogger()->warning($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_COMMAND_ALIAS_RECURSIVE, [$alias, implode(", ", $recursive)])); + $this->server->getLogger()->warning($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_command_alias_recursive($alias, implode(", ", $recursive)))); continue; } if(count($bad) > 0){ - $this->server->getLogger()->warning($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_COMMAND_ALIAS_NOTFOUND, [$alias, implode(", ", $bad)])); + $this->server->getLogger()->warning($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_command_alias_notFound($alias, implode(", ", $bad)))); continue; } diff --git a/src/command/defaults/BanCommand.php b/src/command/defaults/BanCommand.php index 14f341620..d571a9aa0 100644 --- a/src/command/defaults/BanCommand.php +++ b/src/command/defaults/BanCommand.php @@ -26,8 +26,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use pocketmine\player\Player; use function array_shift; @@ -63,7 +63,7 @@ class BanCommand extends VanillaCommand{ $player->kick($reason !== "" ? "Banned by admin. Reason: " . $reason : "Banned by admin."); } - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_BAN_SUCCESS, [$player !== null ? $player->getName() : $name])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_ban_success($player !== null ? $player->getName() : $name)); return true; } diff --git a/src/command/defaults/BanIpCommand.php b/src/command/defaults/BanIpCommand.php index 89d10e7f4..3356e5ece 100644 --- a/src/command/defaults/BanIpCommand.php +++ b/src/command/defaults/BanIpCommand.php @@ -26,8 +26,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use pocketmine\player\Player; use function array_shift; @@ -61,15 +61,15 @@ class BanIpCommand extends VanillaCommand{ if(preg_match("/^([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])$/", $value)){ $this->processIPBan($value, $sender, $reason); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_BANIP_SUCCESS, [$value])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_banip_success($value)); }else{ if(($player = $sender->getServer()->getPlayerByPrefix($value)) instanceof Player){ $ip = $player->getNetworkSession()->getIp(); $this->processIPBan($ip, $sender, $reason); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_BANIP_SUCCESS_PLAYERS, [$ip, $player->getName()])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_banip_success_players($ip, $player->getName())); }else{ - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_BANIP_INVALID)); + $sender->sendMessage(KnownTranslationFactory::commands_banip_invalid()); return false; } diff --git a/src/command/defaults/BanListCommand.php b/src/command/defaults/BanListCommand.php index 366a479ae..86d140cb1 100644 --- a/src/command/defaults/BanListCommand.php +++ b/src/command/defaults/BanListCommand.php @@ -25,8 +25,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\BanEntry; use pocketmine\permission\DefaultPermissionNames; use function array_map; @@ -73,9 +73,9 @@ class BanListCommand extends VanillaCommand{ $message = implode(", ", $list); if($args[0] === "ips"){ - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_BANLIST_IPS, [count($list)])); + $sender->sendMessage(KnownTranslationFactory::commands_banlist_ips((string) count($list))); }else{ - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_BANLIST_PLAYERS, [count($list)])); + $sender->sendMessage(KnownTranslationFactory::commands_banlist_players((string) count($list))); } $sender->sendMessage($message); diff --git a/src/command/defaults/ClearCommand.php b/src/command/defaults/ClearCommand.php index bfa5623f7..6951ef2cf 100644 --- a/src/command/defaults/ClearCommand.php +++ b/src/command/defaults/ClearCommand.php @@ -28,6 +28,7 @@ use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; use pocketmine\item\LegacyStringToItemParser; use pocketmine\item\LegacyStringToItemParserException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; @@ -102,7 +103,7 @@ class ClearCommand extends VanillaCommand{ } if($count > 0){ - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_CLEAR_TESTING, [$target->getName(), $count])); + $sender->sendMessage(KnownTranslationFactory::commands_clear_testing($target->getName(), (string) $count)); }else{ $sender->sendMessage(new TranslationContainer(TextFormat::RED . "%" . KnownTranslationKeys::COMMANDS_CLEAR_FAILURE_NO_ITEMS, [$target->getName()])); } @@ -164,7 +165,7 @@ class ClearCommand extends VanillaCommand{ } if($cleared > 0){ - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_CLEAR_SUCCESS, [$target->getName(), $cleared])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_clear_success($target->getName(), (string) $cleared)); }else{ $sender->sendMessage(new TranslationContainer(TextFormat::RED . "%" . KnownTranslationKeys::COMMANDS_CLEAR_FAILURE_NO_ITEMS, [$target->getName()])); } diff --git a/src/command/defaults/DefaultGamemodeCommand.php b/src/command/defaults/DefaultGamemodeCommand.php index 88648edd0..f799777f2 100644 --- a/src/command/defaults/DefaultGamemodeCommand.php +++ b/src/command/defaults/DefaultGamemodeCommand.php @@ -26,8 +26,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; use pocketmine\data\java\GameModeIdMap; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use pocketmine\player\GameMode; use function count; @@ -59,7 +59,7 @@ class DefaultGamemodeCommand extends VanillaCommand{ } $sender->getServer()->getConfigGroup()->setConfigInt("gamemode", GameModeIdMap::getInstance()->toId($gameMode)); - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_DEFAULTGAMEMODE_SUCCESS, [$gameMode->getTranslationKey()])); + $sender->sendMessage(KnownTranslationFactory::commands_defaultgamemode_success($gameMode->getTranslationKey())); return true; } } diff --git a/src/command/defaults/DeopCommand.php b/src/command/defaults/DeopCommand.php index 6df6520cd..900aa0381 100644 --- a/src/command/defaults/DeopCommand.php +++ b/src/command/defaults/DeopCommand.php @@ -26,8 +26,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use pocketmine\player\Player; use pocketmine\utils\TextFormat; @@ -63,7 +63,7 @@ class DeopCommand extends VanillaCommand{ if(($player = $sender->getServer()->getPlayerExact($name)) !== null){ $player->sendMessage(TextFormat::GRAY . "You are no longer op!"); } - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_DEOP_SUCCESS, [$name])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_deop_success($name)); return true; } diff --git a/src/command/defaults/DifficultyCommand.php b/src/command/defaults/DifficultyCommand.php index bd2011359..ce5b42ce7 100644 --- a/src/command/defaults/DifficultyCommand.php +++ b/src/command/defaults/DifficultyCommand.php @@ -26,8 +26,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use pocketmine\world\World; use function count; @@ -66,7 +66,7 @@ class DifficultyCommand extends VanillaCommand{ $world->setDifficulty($difficulty); } - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_DIFFICULTY_SUCCESS, [$difficulty])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_difficulty_success((string) $difficulty)); }else{ throw new InvalidCommandSyntaxException(); } diff --git a/src/command/defaults/EffectCommand.php b/src/command/defaults/EffectCommand.php index db37acbe8..0e6df678d 100644 --- a/src/command/defaults/EffectCommand.php +++ b/src/command/defaults/EffectCommand.php @@ -27,6 +27,7 @@ use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; use pocketmine\entity\effect\EffectInstance; use pocketmine\entity\effect\VanillaEffects; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; @@ -66,7 +67,7 @@ class EffectCommand extends VanillaCommand{ if(strtolower($args[1]) === "clear"){ $effectManager->clear(); - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_EFFECT_SUCCESS_REMOVED_ALL, [$player->getDisplayName()])); + $sender->sendMessage(KnownTranslationFactory::commands_effect_success_removed_all($player->getDisplayName())); return true; } @@ -106,19 +107,19 @@ class EffectCommand extends VanillaCommand{ if($duration === 0){ if(!$effectManager->has($effect)){ if(count($effectManager->all()) === 0){ - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_EFFECT_FAILURE_NOTACTIVE_ALL, [$player->getDisplayName()])); + $sender->sendMessage(KnownTranslationFactory::commands_effect_failure_notActive_all($player->getDisplayName())); }else{ - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_EFFECT_FAILURE_NOTACTIVE, [$effect->getName(), $player->getDisplayName()])); + $sender->sendMessage(KnownTranslationFactory::commands_effect_failure_notActive($effect->getName(), $player->getDisplayName())); } return true; } $effectManager->remove($effect); - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_EFFECT_SUCCESS_REMOVED, [$effect->getName(), $player->getDisplayName()])); + $sender->sendMessage(KnownTranslationFactory::commands_effect_success_removed($effect->getName(), $player->getDisplayName())); }else{ $instance = new EffectInstance($effect, $duration, $amplification, $visible); $effectManager->add($instance); - self::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_EFFECT_SUCCESS, [$effect->getName(), $instance->getAmplifier(), $player->getDisplayName(), $instance->getDuration() / 20])); + self::broadcastCommandMessage($sender, KnownTranslationFactory::commands_effect_success($effect->getName(), (string) $instance->getAmplifier(), $player->getDisplayName(), (string) ($instance->getDuration() / 20))); } return true; diff --git a/src/command/defaults/EnchantCommand.php b/src/command/defaults/EnchantCommand.php index a05b48d7f..d34e6a884 100644 --- a/src/command/defaults/EnchantCommand.php +++ b/src/command/defaults/EnchantCommand.php @@ -27,6 +27,7 @@ use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; use pocketmine\item\enchantment\EnchantmentInstance; use pocketmine\item\enchantment\VanillaEnchantments; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; @@ -63,14 +64,14 @@ class EnchantCommand extends VanillaCommand{ $item = $player->getInventory()->getItemInHand(); if($item->isNull()){ - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_ENCHANT_NOITEM)); + $sender->sendMessage(KnownTranslationFactory::commands_enchant_noItem()); return true; } try{ $enchantment = VanillaEnchantments::fromString($args[1]); }catch(\InvalidArgumentException $e){ - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_ENCHANT_NOTFOUND, [$args[1]])); + $sender->sendMessage(KnownTranslationFactory::commands_enchant_notFound($args[1])); return true; } diff --git a/src/command/defaults/GamemodeCommand.php b/src/command/defaults/GamemodeCommand.php index 3b99fe22b..41fc5262f 100644 --- a/src/command/defaults/GamemodeCommand.php +++ b/src/command/defaults/GamemodeCommand.php @@ -26,6 +26,7 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; @@ -78,10 +79,10 @@ class GamemodeCommand extends VanillaCommand{ $sender->sendMessage("Game mode change for " . $target->getName() . " failed!"); }else{ if($target === $sender){ - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_GAMEMODE_SUCCESS_SELF, [$gameMode->getTranslationKey()])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_gamemode_success_self($gameMode->getTranslationKey())); }else{ $target->sendMessage(new TranslationContainer(KnownTranslationKeys::GAMEMODE_CHANGED, [$gameMode->getTranslationKey()])); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_GAMEMODE_SUCCESS_OTHER, [$gameMode->getTranslationKey(), $target->getName()])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_gamemode_success_other($gameMode->getTranslationKey(), $target->getName())); } } diff --git a/src/command/defaults/GiveCommand.php b/src/command/defaults/GiveCommand.php index f28e6fee0..63cb32860 100644 --- a/src/command/defaults/GiveCommand.php +++ b/src/command/defaults/GiveCommand.php @@ -28,6 +28,7 @@ use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; use pocketmine\item\LegacyStringToItemParser; use pocketmine\item\LegacyStringToItemParserException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; use pocketmine\lang\TranslationContainer; use pocketmine\nbt\JsonNbtParser; @@ -82,7 +83,7 @@ class GiveCommand extends VanillaCommand{ try{ $tags = JsonNbtParser::parseJson($data); }catch(NbtDataException $e){ - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_GIVE_TAGERROR, [$e->getMessage()])); + $sender->sendMessage(KnownTranslationFactory::commands_give_tagError($e->getMessage())); return true; } @@ -92,11 +93,11 @@ class GiveCommand extends VanillaCommand{ //TODO: overflow $player->getInventory()->addItem($item); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_GIVE_SUCCESS, [ + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_give_success( $item->getName() . " (" . $item->getId() . ":" . $item->getMeta() . ")", (string) $item->getCount(), $player->getName() - ])); + )); return true; } } diff --git a/src/command/defaults/HelpCommand.php b/src/command/defaults/HelpCommand.php index 09c29c3c8..4ace7931c 100644 --- a/src/command/defaults/HelpCommand.php +++ b/src/command/defaults/HelpCommand.php @@ -25,8 +25,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use pocketmine\utils\TextFormat; use function array_chunk; @@ -88,7 +88,7 @@ class HelpCommand extends VanillaCommand{ if($pageNumber < 1){ $pageNumber = 1; } - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_HELP_HEADER, [$pageNumber, count($commands)])); + $sender->sendMessage(KnownTranslationFactory::commands_help_header((string) $pageNumber, (string) count($commands))); if(isset($commands[$pageNumber - 1])){ foreach($commands[$pageNumber - 1] as $command){ $sender->sendMessage(TextFormat::DARK_GREEN . "/" . $command->getName() . ": " . TextFormat::WHITE . $command->getDescription()); diff --git a/src/command/defaults/KickCommand.php b/src/command/defaults/KickCommand.php index f30761fea..3fbd00a0e 100644 --- a/src/command/defaults/KickCommand.php +++ b/src/command/defaults/KickCommand.php @@ -26,6 +26,7 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; @@ -62,9 +63,9 @@ class KickCommand extends VanillaCommand{ if(($player = $sender->getServer()->getPlayerByPrefix($name)) instanceof Player){ $player->kick("Kicked by admin." . ($reason !== "" ? "Reason: " . $reason : "")); if($reason !== ""){ - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_KICK_SUCCESS_REASON, [$player->getName(), $reason])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_kick_success_reason($player->getName(), $reason)); }else{ - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_KICK_SUCCESS, [$player->getName()])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_kick_success($player->getName())); } }else{ $sender->sendMessage(new TranslationContainer(TextFormat::RED . "%" . KnownTranslationKeys::COMMANDS_GENERIC_PLAYER_NOTFOUND)); diff --git a/src/command/defaults/KillCommand.php b/src/command/defaults/KillCommand.php index 65b2386e6..f8655738a 100644 --- a/src/command/defaults/KillCommand.php +++ b/src/command/defaults/KillCommand.php @@ -27,6 +27,7 @@ use pocketmine\command\Command; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; use pocketmine\event\entity\EntityDamageEvent; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; @@ -65,7 +66,7 @@ class KillCommand extends VanillaCommand{ if($player instanceof Player){ $player->attack(new EntityDamageEvent($player, EntityDamageEvent::CAUSE_SUICIDE, 1000)); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_KILL_SUCCESSFUL, [$player->getName()])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_kill_successful($player->getName())); }else{ $sender->sendMessage(new TranslationContainer(TextFormat::RED . "%" . KnownTranslationKeys::COMMANDS_GENERIC_PLAYER_NOTFOUND)); } @@ -79,7 +80,7 @@ class KillCommand extends VanillaCommand{ } $sender->attack(new EntityDamageEvent($sender, EntityDamageEvent::CAUSE_SUICIDE, 1000)); - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_KILL_SUCCESSFUL, [$sender->getName()])); + $sender->sendMessage(KnownTranslationFactory::commands_kill_successful($sender->getName())); }else{ throw new InvalidCommandSyntaxException(); } diff --git a/src/command/defaults/ListCommand.php b/src/command/defaults/ListCommand.php index 282a889ce..db8e66c8e 100644 --- a/src/command/defaults/ListCommand.php +++ b/src/command/defaults/ListCommand.php @@ -24,8 +24,8 @@ declare(strict_types=1); namespace pocketmine\command\defaults; use pocketmine\command\CommandSender; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use pocketmine\player\Player; use function array_filter; @@ -58,7 +58,7 @@ class ListCommand extends VanillaCommand{ })); sort($playerNames, SORT_STRING); - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_PLAYERS_LIST, [count($playerNames), $sender->getServer()->getMaxPlayers()])); + $sender->sendMessage(KnownTranslationFactory::commands_players_list((string) count($playerNames), (string) $sender->getServer()->getMaxPlayers())); $sender->sendMessage(implode(", ", $playerNames)); return true; diff --git a/src/command/defaults/MeCommand.php b/src/command/defaults/MeCommand.php index 868571579..f0df8bf33 100644 --- a/src/command/defaults/MeCommand.php +++ b/src/command/defaults/MeCommand.php @@ -25,8 +25,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use pocketmine\player\Player; use pocketmine\utils\TextFormat; @@ -53,7 +53,7 @@ class MeCommand extends VanillaCommand{ throw new InvalidCommandSyntaxException(); } - $sender->getServer()->broadcastMessage(new TranslationContainer(KnownTranslationKeys::CHAT_TYPE_EMOTE, [$sender instanceof Player ? $sender->getDisplayName() : $sender->getName(), TextFormat::WHITE . implode(" ", $args)])); + $sender->getServer()->broadcastMessage(KnownTranslationFactory::chat_type_emote($sender instanceof Player ? $sender->getDisplayName() : $sender->getName(), TextFormat::WHITE . implode(" ", $args))); return true; } diff --git a/src/command/defaults/OpCommand.php b/src/command/defaults/OpCommand.php index 8d8c55f1a..721dda447 100644 --- a/src/command/defaults/OpCommand.php +++ b/src/command/defaults/OpCommand.php @@ -26,8 +26,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use pocketmine\player\Player; use pocketmine\utils\TextFormat; @@ -63,7 +63,7 @@ class OpCommand extends VanillaCommand{ if(($player = $sender->getServer()->getPlayerExact($name)) !== null){ $player->sendMessage(TextFormat::GRAY . "You are now op!"); } - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_OP_SUCCESS, [$name])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_op_success($name)); return true; } } diff --git a/src/command/defaults/PardonCommand.php b/src/command/defaults/PardonCommand.php index eaadf8705..f35839b00 100644 --- a/src/command/defaults/PardonCommand.php +++ b/src/command/defaults/PardonCommand.php @@ -26,8 +26,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use function count; @@ -54,7 +54,7 @@ class PardonCommand extends VanillaCommand{ $sender->getServer()->getNameBans()->remove($args[0]); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_UNBAN_SUCCESS, [$args[0]])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_unban_success($args[0])); return true; } diff --git a/src/command/defaults/PardonIpCommand.php b/src/command/defaults/PardonIpCommand.php index f728b2761..191dc036c 100644 --- a/src/command/defaults/PardonIpCommand.php +++ b/src/command/defaults/PardonIpCommand.php @@ -26,8 +26,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use function count; use function preg_match; @@ -56,9 +56,9 @@ class PardonIpCommand extends VanillaCommand{ if(preg_match("/^([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])$/", $args[0])){ $sender->getServer()->getIPBans()->remove($args[0]); $sender->getServer()->getNetwork()->unblockAddress($args[0]); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_UNBANIP_SUCCESS, [$args[0]])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_unbanip_success($args[0])); }else{ - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_UNBANIP_INVALID)); + $sender->sendMessage(KnownTranslationFactory::commands_unbanip_invalid()); } return true; diff --git a/src/command/defaults/ParticleCommand.php b/src/command/defaults/ParticleCommand.php index 569bd7195..a7ee0d8c4 100644 --- a/src/command/defaults/ParticleCommand.php +++ b/src/command/defaults/ParticleCommand.php @@ -29,6 +29,7 @@ use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; use pocketmine\item\ItemFactory; use pocketmine\item\VanillaItems; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; use pocketmine\lang\TranslationContainer; use pocketmine\math\Vector3; @@ -124,7 +125,7 @@ class ParticleCommand extends VanillaCommand{ return true; } - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_PARTICLE_SUCCESS, [$name, $count])); + $sender->sendMessage(KnownTranslationFactory::commands_particle_success($name, (string) $count)); $random = new Random((int) (microtime(true) * 1000) + mt_rand()); diff --git a/src/command/defaults/PluginsCommand.php b/src/command/defaults/PluginsCommand.php index 791c34172..3666c4543 100644 --- a/src/command/defaults/PluginsCommand.php +++ b/src/command/defaults/PluginsCommand.php @@ -24,8 +24,8 @@ declare(strict_types=1); namespace pocketmine\command\defaults; use pocketmine\command\CommandSender; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use pocketmine\plugin\Plugin; use pocketmine\utils\TextFormat; @@ -57,7 +57,7 @@ class PluginsCommand extends VanillaCommand{ }, $sender->getServer()->getPluginManager()->getPlugins()); sort($list, SORT_STRING); - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_PLUGINS_SUCCESS, [count($list), implode(TextFormat::WHITE . ", ", $list)])); + $sender->sendMessage(KnownTranslationFactory::pocketmine_command_plugins_success((string) count($list), implode(TextFormat::WHITE . ", ", $list))); return true; } } diff --git a/src/command/defaults/SaveCommand.php b/src/command/defaults/SaveCommand.php index 12b8b54d6..fe07c53a8 100644 --- a/src/command/defaults/SaveCommand.php +++ b/src/command/defaults/SaveCommand.php @@ -25,8 +25,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use function microtime; use function round; @@ -47,7 +47,7 @@ class SaveCommand extends VanillaCommand{ return true; } - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::POCKETMINE_SAVE_START)); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::pocketmine_save_start()); $start = microtime(true); foreach($sender->getServer()->getOnlinePlayers() as $player){ @@ -58,7 +58,7 @@ class SaveCommand extends VanillaCommand{ $world->save(true); } - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::POCKETMINE_SAVE_SUCCESS, [round(microtime(true) - $start, 3)])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::pocketmine_save_success((string) round(microtime(true) - $start, 3))); return true; } diff --git a/src/command/defaults/SaveOffCommand.php b/src/command/defaults/SaveOffCommand.php index b64fec44e..6d8508249 100644 --- a/src/command/defaults/SaveOffCommand.php +++ b/src/command/defaults/SaveOffCommand.php @@ -25,8 +25,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; class SaveOffCommand extends VanillaCommand{ @@ -47,7 +47,7 @@ class SaveOffCommand extends VanillaCommand{ $sender->getServer()->getWorldManager()->setAutoSave(false); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_SAVE_DISABLED)); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_save_disabled()); return true; } diff --git a/src/command/defaults/SaveOnCommand.php b/src/command/defaults/SaveOnCommand.php index d19e3a3cc..b0d5ebf05 100644 --- a/src/command/defaults/SaveOnCommand.php +++ b/src/command/defaults/SaveOnCommand.php @@ -25,8 +25,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; class SaveOnCommand extends VanillaCommand{ @@ -47,7 +47,7 @@ class SaveOnCommand extends VanillaCommand{ $sender->getServer()->getWorldManager()->setAutoSave(true); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_SAVE_ENABLED)); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_save_enabled()); return true; } diff --git a/src/command/defaults/SeedCommand.php b/src/command/defaults/SeedCommand.php index 078f5f2d5..d154ff891 100644 --- a/src/command/defaults/SeedCommand.php +++ b/src/command/defaults/SeedCommand.php @@ -24,8 +24,8 @@ declare(strict_types=1); namespace pocketmine\command\defaults; use pocketmine\command\CommandSender; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use pocketmine\player\Player; @@ -50,7 +50,7 @@ class SeedCommand extends VanillaCommand{ }else{ $seed = $sender->getServer()->getWorldManager()->getDefaultWorld()->getSeed(); } - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_SEED_SUCCESS, [$seed])); + $sender->sendMessage(KnownTranslationFactory::commands_seed_success((string) $seed)); return true; } diff --git a/src/command/defaults/SetWorldSpawnCommand.php b/src/command/defaults/SetWorldSpawnCommand.php index 055795dbb..2c6f145b1 100644 --- a/src/command/defaults/SetWorldSpawnCommand.php +++ b/src/command/defaults/SetWorldSpawnCommand.php @@ -26,8 +26,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\math\Vector3; use pocketmine\permission\DefaultPermissionNames; use pocketmine\player\Player; @@ -70,7 +70,7 @@ class SetWorldSpawnCommand extends VanillaCommand{ $world->setSpawnLocation($pos); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_SETWORLDSPAWN_SUCCESS, [round($pos->x, 2), round($pos->y, 2), round($pos->z, 2)])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_setworldspawn_success((string) round($pos->x, 2), (string) round($pos->y, 2), (string) round($pos->z, 2))); return true; } diff --git a/src/command/defaults/SpawnpointCommand.php b/src/command/defaults/SpawnpointCommand.php index bf5c91ec9..23cf0b82e 100644 --- a/src/command/defaults/SpawnpointCommand.php +++ b/src/command/defaults/SpawnpointCommand.php @@ -26,6 +26,7 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; @@ -79,7 +80,7 @@ class SpawnpointCommand extends VanillaCommand{ $z = $this->getRelativeDouble($pos->z, $sender, $args[3]); $target->setSpawn(new Position($x, $y, $z, $world)); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_SPAWNPOINT_SUCCESS, [$target->getName(), round($x, 2), round($y, 2), round($z, 2)])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_spawnpoint_success($target->getName(), (string) round($x, 2), (string) round($y, 2), (string) round($z, 2))); return true; }elseif(count($args) <= 1){ @@ -88,7 +89,7 @@ class SpawnpointCommand extends VanillaCommand{ $pos = Position::fromObject($cpos->floor(), $cpos->getWorld()); $target->setSpawn($pos); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_SPAWNPOINT_SUCCESS, [$target->getName(), round($pos->x, 2), round($pos->y, 2), round($pos->z, 2)])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_spawnpoint_success($target->getName(), (string) round($pos->x, 2), (string) round($pos->y, 2), (string) round($pos->z, 2))); return true; }else{ $sender->sendMessage(TextFormat::RED . "Please provide a player!"); diff --git a/src/command/defaults/StopCommand.php b/src/command/defaults/StopCommand.php index fe89c3af2..edf2eb7e3 100644 --- a/src/command/defaults/StopCommand.php +++ b/src/command/defaults/StopCommand.php @@ -25,8 +25,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; class StopCommand extends VanillaCommand{ @@ -45,7 +45,7 @@ class StopCommand extends VanillaCommand{ return true; } - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_STOP_START)); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_stop_start()); $sender->getServer()->shutdown(); diff --git a/src/command/defaults/TeleportCommand.php b/src/command/defaults/TeleportCommand.php index 4f9998b3d..945036ebf 100644 --- a/src/command/defaults/TeleportCommand.php +++ b/src/command/defaults/TeleportCommand.php @@ -27,8 +27,8 @@ use pocketmine\command\Command; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; use pocketmine\entity\Location; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use pocketmine\player\Player; use pocketmine\utils\AssumptionFailedError; @@ -97,7 +97,7 @@ class TeleportCommand extends VanillaCommand{ } $subject->teleport($targetPlayer->getLocation()); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_TP_SUCCESS, [$subject->getName(), $targetPlayer->getName()])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_tp_success($subject->getName(), $targetPlayer->getName())); return true; case 3: @@ -117,12 +117,12 @@ class TeleportCommand extends VanillaCommand{ $targetLocation = new Location($x, $y, $z, $yaw, $pitch, $base->getWorld()); $subject->teleport($targetLocation); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_TP_SUCCESS_COORDINATES, [ + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_tp_success_coordinates( $subject->getName(), - round($targetLocation->x, 2), - round($targetLocation->y, 2), - round($targetLocation->z, 2) - ])); + (string) round($targetLocation->x, 2), + (string) round($targetLocation->y, 2), + (string) round($targetLocation->z, 2) + )); return true; default: throw new AssumptionFailedError("This branch should be unreachable (for now)"); diff --git a/src/command/defaults/TellCommand.php b/src/command/defaults/TellCommand.php index 589df12f3..9b9ba5f8d 100644 --- a/src/command/defaults/TellCommand.php +++ b/src/command/defaults/TellCommand.php @@ -26,6 +26,7 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; @@ -68,9 +69,9 @@ class TellCommand extends VanillaCommand{ $sender->sendMessage(new TranslationContainer(TextFormat::GRAY . TextFormat::ITALIC . "%" . KnownTranslationKeys::COMMANDS_MESSAGE_DISPLAY_OUTGOING, [$player->getDisplayName(), $message])); $name = $sender instanceof Player ? $sender->getDisplayName() : $sender->getName(); $player->sendMessage(new TranslationContainer(TextFormat::GRAY . TextFormat::ITALIC . "%" . KnownTranslationKeys::COMMANDS_MESSAGE_DISPLAY_INCOMING, [$name, $message])); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_MESSAGE_DISPLAY_OUTGOING, [$player->getDisplayName(), $message]), false); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_message_display_outgoing($player->getDisplayName(), $message), false); }else{ - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_GENERIC_PLAYER_NOTFOUND)); + $sender->sendMessage(KnownTranslationFactory::commands_generic_player_notFound()); } return true; diff --git a/src/command/defaults/TimeCommand.php b/src/command/defaults/TimeCommand.php index 8a1bf2b9e..5978b7ec2 100644 --- a/src/command/defaults/TimeCommand.php +++ b/src/command/defaults/TimeCommand.php @@ -26,8 +26,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use pocketmine\player\Player; use pocketmine\world\World; @@ -86,7 +86,7 @@ class TimeCommand extends VanillaCommand{ }else{ $world = $sender->getServer()->getWorldManager()->getDefaultWorld(); } - $sender->sendMessage($sender->getLanguage()->translateString(KnownTranslationKeys::COMMANDS_TIME_QUERY, [$world->getTime()])); + $sender->sendMessage($sender->getLanguage()->translate(KnownTranslationFactory::commands_time_query((string) $world->getTime()))); return true; } @@ -126,7 +126,7 @@ class TimeCommand extends VanillaCommand{ foreach($sender->getServer()->getWorldManager()->getWorlds() as $world){ $world->setTime($value); } - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_TIME_SET, [$value])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_time_set((string) $value)); }elseif($args[0] === "add"){ if(!$this->testPermission($sender, DefaultPermissionNames::COMMAND_TIME_ADD)){ return true; @@ -136,7 +136,7 @@ class TimeCommand extends VanillaCommand{ foreach($sender->getServer()->getWorldManager()->getWorlds() as $world){ $world->setTime($world->getTime() + $value); } - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_TIME_ADDED, [$value])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_time_added((string) $value)); }else{ throw new InvalidCommandSyntaxException(); } diff --git a/src/command/defaults/TimingsCommand.php b/src/command/defaults/TimingsCommand.php index de501ad99..68350b56a 100644 --- a/src/command/defaults/TimingsCommand.php +++ b/src/command/defaults/TimingsCommand.php @@ -26,8 +26,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use pocketmine\player\Player; use pocketmine\scheduler\BulkCurlTask; @@ -79,21 +79,21 @@ class TimingsCommand extends VanillaCommand{ if($mode === "on"){ if(TimingsHandler::isEnabled()){ - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_ALREADYENABLED)); + $sender->sendMessage(KnownTranslationFactory::pocketmine_command_timings_alreadyEnabled()); return true; } TimingsHandler::setEnabled(); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_ENABLE)); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::pocketmine_command_timings_enable()); return true; }elseif($mode === "off"){ TimingsHandler::setEnabled(false); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_DISABLE)); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::pocketmine_command_timings_disable()); return true; } if(!TimingsHandler::isEnabled()){ - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_TIMINGSDISABLED)); + $sender->sendMessage(KnownTranslationFactory::pocketmine_command_timings_timingsDisabled()); return true; } @@ -102,7 +102,7 @@ class TimingsCommand extends VanillaCommand{ if($mode === "reset"){ TimingsHandler::reload(); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_RESET)); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::pocketmine_command_timings_reset()); }elseif($mode === "merged" or $mode === "report" or $paste){ $timings = ""; if($paste){ @@ -164,16 +164,16 @@ class TimingsCommand extends VanillaCommand{ } $response = json_decode($result->getBody(), true); if(is_array($response) && isset($response["id"])){ - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_TIMINGSREAD, - ["https://" . $host . "/?id=" . $response["id"]])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::pocketmine_command_timings_timingsRead( + "https://" . $host . "/?id=" . $response["id"])); }else{ - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_PASTEERROR)); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::pocketmine_command_timings_pasteError()); } } )); }else{ fclose($fileTimings); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_TIMINGSWRITE, [$timings])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::pocketmine_command_timings_timingsWrite($timings)); } }else{ throw new InvalidCommandSyntaxException(); diff --git a/src/command/defaults/TitleCommand.php b/src/command/defaults/TitleCommand.php index 86a5723c3..62b80e422 100644 --- a/src/command/defaults/TitleCommand.php +++ b/src/command/defaults/TitleCommand.php @@ -25,8 +25,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use function array_slice; use function count; @@ -54,7 +54,7 @@ class TitleCommand extends VanillaCommand{ $player = $sender->getServer()->getPlayerByPrefix($args[0]); if($player === null){ - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_GENERIC_PLAYER_NOTFOUND)); + $sender->sendMessage(KnownTranslationFactory::commands_generic_player_notFound()); return true; } @@ -97,7 +97,7 @@ class TitleCommand extends VanillaCommand{ throw new InvalidCommandSyntaxException(); } - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_TITLE_SUCCESS)); + $sender->sendMessage(KnownTranslationFactory::commands_title_success()); return true; } diff --git a/src/command/defaults/VersionCommand.php b/src/command/defaults/VersionCommand.php index b099ed8e4..9b8616071 100644 --- a/src/command/defaults/VersionCommand.php +++ b/src/command/defaults/VersionCommand.php @@ -24,8 +24,8 @@ declare(strict_types=1); namespace pocketmine\command\defaults; use pocketmine\command\CommandSender; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\network\mcpe\protocol\ProtocolInfo; use pocketmine\permission\DefaultPermissionNames; use pocketmine\plugin\Plugin; @@ -53,12 +53,12 @@ class VersionCommand extends VanillaCommand{ } if(count($args) === 0){ - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_INFO_EXTENDED, [ + $sender->sendMessage(KnownTranslationFactory::pocketmine_server_info_extended( $sender->getServer()->getName(), $sender->getServer()->getPocketMineVersion(), $sender->getServer()->getVersion(), - ProtocolInfo::CURRENT_PROTOCOL - ])); + (string) ProtocolInfo::CURRENT_PROTOCOL + )); }else{ $pluginName = implode(" ", $args); $exactPlugin = $sender->getServer()->getPluginManager()->getPlugin($pluginName); @@ -79,7 +79,7 @@ class VersionCommand extends VanillaCommand{ } if(!$found){ - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_VERSION_NOSUCHPLUGIN)); + $sender->sendMessage(KnownTranslationFactory::pocketmine_command_version_noSuchPlugin()); } } diff --git a/src/command/defaults/WhitelistCommand.php b/src/command/defaults/WhitelistCommand.php index 8144459b7..afbcb3e38 100644 --- a/src/command/defaults/WhitelistCommand.php +++ b/src/command/defaults/WhitelistCommand.php @@ -26,8 +26,8 @@ namespace pocketmine\command\defaults; use pocketmine\command\Command; use pocketmine\command\CommandSender; use pocketmine\command\utils\InvalidCommandSyntaxException; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; -use pocketmine\lang\TranslationContainer; use pocketmine\permission\DefaultPermissionNames; use pocketmine\player\Player; use function count; @@ -64,21 +64,21 @@ class WhitelistCommand extends VanillaCommand{ case "reload": if($this->testPermission($sender, DefaultPermissionNames::COMMAND_WHITELIST_RELOAD)){ $sender->getServer()->getWhitelisted()->reload(); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_RELOADED)); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_whitelist_reloaded()); } return true; case "on": if($this->testPermission($sender, DefaultPermissionNames::COMMAND_WHITELIST_ENABLE)){ $sender->getServer()->getConfigGroup()->setConfigBool("white-list", true); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_ENABLED)); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_whitelist_enabled()); } return true; case "off": if($this->testPermission($sender, DefaultPermissionNames::COMMAND_WHITELIST_DISABLE)){ $sender->getServer()->getConfigGroup()->setConfigBool("white-list", false); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_DISABLED)); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_whitelist_disabled()); } return true; @@ -87,20 +87,20 @@ class WhitelistCommand extends VanillaCommand{ $entries = $sender->getServer()->getWhitelisted()->getAll(true); sort($entries, SORT_STRING); $result = implode(", ", $entries); - $count = count($entries); + $count = (string) count($entries); - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_LIST, [$count, $count])); + $sender->sendMessage(KnownTranslationFactory::commands_whitelist_list($count, $count)); $sender->sendMessage($result); } return true; case "add": - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_GENERIC_USAGE, ["%" . KnownTranslationKeys::COMMANDS_WHITELIST_ADD_USAGE])); + $sender->sendMessage(KnownTranslationFactory::commands_generic_usage("%" . KnownTranslationKeys::COMMANDS_WHITELIST_ADD_USAGE)); return true; case "remove": - $sender->sendMessage(new TranslationContainer(KnownTranslationKeys::COMMANDS_GENERIC_USAGE, ["%" . KnownTranslationKeys::COMMANDS_WHITELIST_REMOVE_USAGE])); + $sender->sendMessage(KnownTranslationFactory::commands_generic_usage("%" . KnownTranslationKeys::COMMANDS_WHITELIST_REMOVE_USAGE)); return true; } }elseif(count($args) === 2){ @@ -111,14 +111,14 @@ class WhitelistCommand extends VanillaCommand{ case "add": if($this->testPermission($sender, DefaultPermissionNames::COMMAND_WHITELIST_ADD)){ $sender->getServer()->addWhitelist($args[1]); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_ADD_SUCCESS, [$args[1]])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_whitelist_add_success($args[1])); } return true; case "remove": if($this->testPermission($sender, DefaultPermissionNames::COMMAND_WHITELIST_REMOVE)){ $sender->getServer()->removeWhitelist($args[1]); - Command::broadcastCommandMessage($sender, new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_REMOVE_SUCCESS, [$args[1]])); + Command::broadcastCommandMessage($sender, KnownTranslationFactory::commands_whitelist_remove_success($args[1])); } return true; diff --git a/src/event/player/PlayerDeathEvent.php b/src/event/player/PlayerDeathEvent.php index c33f3ee0d..0886a3652 100644 --- a/src/event/player/PlayerDeathEvent.php +++ b/src/event/player/PlayerDeathEvent.php @@ -30,7 +30,7 @@ use pocketmine\event\entity\EntityDamageByEntityEvent; use pocketmine\event\entity\EntityDamageEvent; use pocketmine\event\entity\EntityDeathEvent; use pocketmine\item\Item; -use pocketmine\lang\KnownTranslationKeys; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\TranslationContainer; use pocketmine\player\Player; @@ -89,23 +89,14 @@ class PlayerDeathEvent extends EntityDeathEvent{ * Returns the vanilla death message for the given death cause. */ public static function deriveMessage(string $name, ?EntityDamageEvent $deathCause) : TranslationContainer{ - $message = KnownTranslationKeys::DEATH_ATTACK_GENERIC; - $params = [$name]; - switch($deathCause === null ? EntityDamageEvent::CAUSE_CUSTOM : $deathCause->getCause()){ case EntityDamageEvent::CAUSE_ENTITY_ATTACK: if($deathCause instanceof EntityDamageByEntityEvent){ $e = $deathCause->getDamager(); if($e instanceof Player){ - $message = KnownTranslationKeys::DEATH_ATTACK_PLAYER; - $params[] = $e->getDisplayName(); - break; + return KnownTranslationFactory::death_attack_player($name, $e->getDisplayName()); }elseif($e instanceof Living){ - $message = KnownTranslationKeys::DEATH_ATTACK_MOB; - $params[] = $e->getNameTag() !== "" ? $e->getNameTag() : $e->getName(); - break; - }else{ - $params[] = "Unknown"; + return KnownTranslationFactory::death_attack_mob($name, $e->getNameTag() !== "" ? $e->getNameTag() : $e->getName()); } } break; @@ -113,57 +104,41 @@ class PlayerDeathEvent extends EntityDeathEvent{ if($deathCause instanceof EntityDamageByEntityEvent){ $e = $deathCause->getDamager(); if($e instanceof Player){ - $message = KnownTranslationKeys::DEATH_ATTACK_ARROW; - $params[] = $e->getDisplayName(); + return KnownTranslationFactory::death_attack_arrow($name, $e->getDisplayName()); }elseif($e instanceof Living){ - $message = KnownTranslationKeys::DEATH_ATTACK_ARROW; - $params[] = $e->getNameTag() !== "" ? $e->getNameTag() : $e->getName(); - break; - }else{ - $params[] = "Unknown"; + return KnownTranslationFactory::death_attack_arrow($name, $e->getNameTag() !== "" ? $e->getNameTag() : $e->getName()); } } break; case EntityDamageEvent::CAUSE_SUICIDE: - $message = KnownTranslationKeys::DEATH_ATTACK_GENERIC; - break; + return KnownTranslationFactory::death_attack_generic($name); case EntityDamageEvent::CAUSE_VOID: - $message = KnownTranslationKeys::DEATH_ATTACK_OUTOFWORLD; - break; + return KnownTranslationFactory::death_attack_outOfWorld($name); case EntityDamageEvent::CAUSE_FALL: - if($deathCause instanceof EntityDamageEvent){ - if($deathCause->getFinalDamage() > 2){ - $message = KnownTranslationKeys::DEATH_FELL_ACCIDENT_GENERIC; - break; - } + if($deathCause instanceof EntityDamageEvent && $deathCause->getFinalDamage() > 2){ + return KnownTranslationFactory::death_fell_accident_generic($name); } - $message = KnownTranslationKeys::DEATH_ATTACK_FALL; - break; + return KnownTranslationFactory::death_attack_fall($name); case EntityDamageEvent::CAUSE_SUFFOCATION: - $message = KnownTranslationKeys::DEATH_ATTACK_INWALL; - break; + return KnownTranslationFactory::death_attack_inWall($name); case EntityDamageEvent::CAUSE_LAVA: - $message = KnownTranslationKeys::DEATH_ATTACK_LAVA; - break; + return KnownTranslationFactory::death_attack_lava($name); case EntityDamageEvent::CAUSE_FIRE: - $message = KnownTranslationKeys::DEATH_ATTACK_ONFIRE; - break; + return KnownTranslationFactory::death_attack_onFire($name); case EntityDamageEvent::CAUSE_FIRE_TICK: - $message = KnownTranslationKeys::DEATH_ATTACK_INFIRE; - break; + return KnownTranslationFactory::death_attack_inFire($name); case EntityDamageEvent::CAUSE_DROWNING: - $message = KnownTranslationKeys::DEATH_ATTACK_DROWN; - break; + return KnownTranslationFactory::death_attack_drown($name); case EntityDamageEvent::CAUSE_CONTACT: if($deathCause instanceof EntityDamageByBlockEvent){ if($deathCause->getDamager()->getId() === BlockLegacyIds::CACTUS){ - $message = KnownTranslationKeys::DEATH_ATTACK_CACTUS; + return KnownTranslationFactory::death_attack_cactus($name); } } break; @@ -173,21 +148,15 @@ class PlayerDeathEvent extends EntityDeathEvent{ if($deathCause instanceof EntityDamageByEntityEvent){ $e = $deathCause->getDamager(); if($e instanceof Player){ - $message = KnownTranslationKeys::DEATH_ATTACK_EXPLOSION_PLAYER; - $params[] = $e->getDisplayName(); + return KnownTranslationFactory::death_attack_explosion_player($name, $e->getDisplayName()); }elseif($e instanceof Living){ - $message = KnownTranslationKeys::DEATH_ATTACK_EXPLOSION_PLAYER; - $params[] = $e->getNameTag() !== "" ? $e->getNameTag() : $e->getName(); - break; + return KnownTranslationFactory::death_attack_explosion_player($name, $e->getNameTag() !== "" ? $e->getNameTag() : $e->getName()); } - }else{ - $message = KnownTranslationKeys::DEATH_ATTACK_EXPLOSION; } - break; + return KnownTranslationFactory::death_attack_explosion($name); case EntityDamageEvent::CAUSE_MAGIC: - $message = KnownTranslationKeys::DEATH_ATTACK_MAGIC; - break; + return KnownTranslationFactory::death_attack_magic($name); case EntityDamageEvent::CAUSE_CUSTOM: break; @@ -196,6 +165,6 @@ class PlayerDeathEvent extends EntityDeathEvent{ break; } - return new TranslationContainer($message, $params); + return KnownTranslationFactory::death_attack_generic($name); } } diff --git a/src/lang/KnownTranslationFactory.php b/src/lang/KnownTranslationFactory.php new file mode 100644 index 000000000..77f2ca201 --- /dev/null +++ b/src/lang/KnownTranslationFactory.php @@ -0,0 +1,1744 @@ + $param0, + 1 => $param1, + ]); + } + + public static function chat_type_admin(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::CHAT_TYPE_ADMIN, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function chat_type_announcement(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::CHAT_TYPE_ANNOUNCEMENT, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function chat_type_emote(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::CHAT_TYPE_EMOTE, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function chat_type_text(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::CHAT_TYPE_TEXT, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function commands_ban_success(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_BAN_SUCCESS, [ + 0 => $param0, + ]); + } + + public static function commands_ban_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_BAN_USAGE, []); + } + + public static function commands_banip_invalid() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_BANIP_INVALID, []); + } + + public static function commands_banip_success(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_BANIP_SUCCESS, [ + 0 => $param0, + ]); + } + + public static function commands_banip_success_players(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_BANIP_SUCCESS_PLAYERS, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function commands_banip_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_BANIP_USAGE, []); + } + + public static function commands_banlist_ips(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_BANLIST_IPS, [ + 0 => $param0, + ]); + } + + public static function commands_banlist_players(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_BANLIST_PLAYERS, [ + 0 => $param0, + ]); + } + + public static function commands_banlist_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_BANLIST_USAGE, []); + } + + public static function commands_clear_failure_no_items(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_CLEAR_FAILURE_NO_ITEMS, [ + 0 => $param0, + ]); + } + + public static function commands_clear_success(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_CLEAR_SUCCESS, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function commands_clear_testing(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_CLEAR_TESTING, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function commands_defaultgamemode_success(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_DEFAULTGAMEMODE_SUCCESS, [ + 0 => $param0, + ]); + } + + public static function commands_defaultgamemode_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_DEFAULTGAMEMODE_USAGE, []); + } + + public static function commands_deop_success(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_DEOP_SUCCESS, [ + 0 => $param0, + ]); + } + + public static function commands_deop_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_DEOP_USAGE, []); + } + + public static function commands_difficulty_success(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_DIFFICULTY_SUCCESS, [ + 0 => $param0, + ]); + } + + public static function commands_difficulty_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_DIFFICULTY_USAGE, []); + } + + public static function commands_effect_failure_notActive(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_EFFECT_FAILURE_NOTACTIVE, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function commands_effect_failure_notActive_all(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_EFFECT_FAILURE_NOTACTIVE_ALL, [ + 0 => $param0, + ]); + } + + public static function commands_effect_notFound(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_EFFECT_NOTFOUND, [ + 0 => $param0, + ]); + } + + public static function commands_effect_success(string $param0, string $param1, string $param2, string $param3) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_EFFECT_SUCCESS, [ + 0 => $param0, + 1 => $param1, + 2 => $param2, + 3 => $param3, + ]); + } + + public static function commands_effect_success_removed(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_EFFECT_SUCCESS_REMOVED, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function commands_effect_success_removed_all(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_EFFECT_SUCCESS_REMOVED_ALL, [ + 0 => $param0, + ]); + } + + public static function commands_effect_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_EFFECT_USAGE, []); + } + + public static function commands_enchant_noItem() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_ENCHANT_NOITEM, []); + } + + public static function commands_enchant_notFound(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_ENCHANT_NOTFOUND, [ + 0 => $param0, + ]); + } + + public static function commands_enchant_success() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_ENCHANT_SUCCESS, []); + } + + public static function commands_enchant_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_ENCHANT_USAGE, []); + } + + public static function commands_gamemode_success_other(string $param1, string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_GAMEMODE_SUCCESS_OTHER, [ + 1 => $param1, + 0 => $param0, + ]); + } + + public static function commands_gamemode_success_self(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_GAMEMODE_SUCCESS_SELF, [ + 0 => $param0, + ]); + } + + public static function commands_gamemode_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_GAMEMODE_USAGE, []); + } + + public static function commands_generic_notFound() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_GENERIC_NOTFOUND, []); + } + + public static function commands_generic_num_tooBig(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_GENERIC_NUM_TOOBIG, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function commands_generic_num_tooSmall(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_GENERIC_NUM_TOOSMALL, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function commands_generic_permission() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_GENERIC_PERMISSION, []); + } + + public static function commands_generic_player_notFound() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_GENERIC_PLAYER_NOTFOUND, []); + } + + public static function commands_generic_usage(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_GENERIC_USAGE, [ + 0 => $param0, + ]); + } + + public static function commands_give_item_notFound(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_GIVE_ITEM_NOTFOUND, [ + 0 => $param0, + ]); + } + + public static function commands_give_success(string $param0, string $param1, string $param2) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_GIVE_SUCCESS, [ + 0 => $param0, + 1 => $param1, + 2 => $param2, + ]); + } + + public static function commands_give_tagError(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_GIVE_TAGERROR, [ + 0 => $param0, + ]); + } + + public static function commands_help_header(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_HELP_HEADER, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function commands_help_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_HELP_USAGE, []); + } + + public static function commands_kick_success(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_KICK_SUCCESS, [ + 0 => $param0, + ]); + } + + public static function commands_kick_success_reason(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_KICK_SUCCESS_REASON, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function commands_kick_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_KICK_USAGE, []); + } + + public static function commands_kill_successful(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_KILL_SUCCESSFUL, [ + 0 => $param0, + ]); + } + + public static function commands_me_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_ME_USAGE, []); + } + + public static function commands_message_display_incoming(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_MESSAGE_DISPLAY_INCOMING, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function commands_message_display_outgoing(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_MESSAGE_DISPLAY_OUTGOING, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function commands_message_sameTarget() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_MESSAGE_SAMETARGET, []); + } + + public static function commands_message_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_MESSAGE_USAGE, []); + } + + public static function commands_op_success(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_OP_SUCCESS, [ + 0 => $param0, + ]); + } + + public static function commands_op_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_OP_USAGE, []); + } + + public static function commands_particle_notFound(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_PARTICLE_NOTFOUND, [ + 0 => $param0, + ]); + } + + public static function commands_particle_success(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_PARTICLE_SUCCESS, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function commands_players_list(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_PLAYERS_LIST, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function commands_players_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_PLAYERS_USAGE, []); + } + + public static function commands_save_off_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_SAVE_OFF_USAGE, []); + } + + public static function commands_save_on_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_SAVE_ON_USAGE, []); + } + + public static function commands_save_disabled() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_SAVE_DISABLED, []); + } + + public static function commands_save_enabled() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_SAVE_ENABLED, []); + } + + public static function commands_save_start() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_SAVE_START, []); + } + + public static function commands_save_success() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_SAVE_SUCCESS, []); + } + + public static function commands_save_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_SAVE_USAGE, []); + } + + public static function commands_say_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_SAY_USAGE, []); + } + + public static function commands_seed_success(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_SEED_SUCCESS, [ + 0 => $param0, + ]); + } + + public static function commands_seed_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_SEED_USAGE, []); + } + + public static function commands_setworldspawn_success(string $param0, string $param1, string $param2) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_SETWORLDSPAWN_SUCCESS, [ + 0 => $param0, + 1 => $param1, + 2 => $param2, + ]); + } + + public static function commands_setworldspawn_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_SETWORLDSPAWN_USAGE, []); + } + + public static function commands_spawnpoint_success(string $param0, string $param1, string $param2, string $param3) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_SPAWNPOINT_SUCCESS, [ + 0 => $param0, + 1 => $param1, + 2 => $param2, + 3 => $param3, + ]); + } + + public static function commands_spawnpoint_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_SPAWNPOINT_USAGE, []); + } + + public static function commands_stop_start() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_STOP_START, []); + } + + public static function commands_stop_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_STOP_USAGE, []); + } + + public static function commands_time_added(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_TIME_ADDED, [ + 0 => $param0, + ]); + } + + public static function commands_time_query(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_TIME_QUERY, [ + 0 => $param0, + ]); + } + + public static function commands_time_set(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_TIME_SET, [ + 0 => $param0, + ]); + } + + public static function commands_title_success() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_TITLE_SUCCESS, []); + } + + public static function commands_title_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_TITLE_USAGE, []); + } + + public static function commands_tp_success(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_TP_SUCCESS, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function commands_tp_success_coordinates(string $param0, string $param1, string $param2, string $param3) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_TP_SUCCESS_COORDINATES, [ + 0 => $param0, + 1 => $param1, + 2 => $param2, + 3 => $param3, + ]); + } + + public static function commands_tp_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_TP_USAGE, []); + } + + public static function commands_unban_success(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_UNBAN_SUCCESS, [ + 0 => $param0, + ]); + } + + public static function commands_unban_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_UNBAN_USAGE, []); + } + + public static function commands_unbanip_invalid() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_UNBANIP_INVALID, []); + } + + public static function commands_unbanip_success(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_UNBANIP_SUCCESS, [ + 0 => $param0, + ]); + } + + public static function commands_unbanip_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_UNBANIP_USAGE, []); + } + + public static function commands_whitelist_add_success(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_ADD_SUCCESS, [ + 0 => $param0, + ]); + } + + public static function commands_whitelist_add_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_ADD_USAGE, []); + } + + public static function commands_whitelist_disabled() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_DISABLED, []); + } + + public static function commands_whitelist_enabled() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_ENABLED, []); + } + + public static function commands_whitelist_list(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_LIST, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function commands_whitelist_reloaded() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_RELOADED, []); + } + + public static function commands_whitelist_remove_success(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_REMOVE_SUCCESS, [ + 0 => $param0, + ]); + } + + public static function commands_whitelist_remove_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_REMOVE_USAGE, []); + } + + public static function commands_whitelist_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_USAGE, []); + } + + public static function death_attack_arrow(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_ARROW, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function death_attack_arrow_item(string $param0, string $param1, string $param2) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_ARROW_ITEM, [ + 0 => $param0, + 1 => $param1, + 2 => $param2, + ]); + } + + public static function death_attack_cactus(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_CACTUS, [ + 0 => $param0, + ]); + } + + public static function death_attack_drown(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_DROWN, [ + 0 => $param0, + ]); + } + + public static function death_attack_explosion(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_EXPLOSION, [ + 0 => $param0, + ]); + } + + public static function death_attack_explosion_player(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_EXPLOSION_PLAYER, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function death_attack_fall(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_FALL, [ + 0 => $param0, + ]); + } + + public static function death_attack_generic(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_GENERIC, [ + 0 => $param0, + ]); + } + + public static function death_attack_inFire(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_INFIRE, [ + 0 => $param0, + ]); + } + + public static function death_attack_inWall(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_INWALL, [ + 0 => $param0, + ]); + } + + public static function death_attack_lava(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_LAVA, [ + 0 => $param0, + ]); + } + + public static function death_attack_magic(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_MAGIC, [ + 0 => $param0, + ]); + } + + public static function death_attack_mob(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_MOB, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function death_attack_onFire(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_ONFIRE, [ + 0 => $param0, + ]); + } + + public static function death_attack_outOfWorld(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_OUTOFWORLD, [ + 0 => $param0, + ]); + } + + public static function death_attack_player(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_PLAYER, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function death_attack_player_item(string $param0, string $param1, string $param2) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_PLAYER_ITEM, [ + 0 => $param0, + 1 => $param1, + 2 => $param2, + ]); + } + + public static function death_attack_wither(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_WITHER, [ + 0 => $param0, + ]); + } + + public static function death_fell_accident_generic(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEATH_FELL_ACCIDENT_GENERIC, [ + 0 => $param0, + ]); + } + + public static function default_gamemode() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEFAULT_GAMEMODE, []); + } + + public static function default_values_info() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DEFAULT_VALUES_INFO, []); + } + + public static function disconnectionScreen_invalidName() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DISCONNECTIONSCREEN_INVALIDNAME, []); + } + + public static function disconnectionScreen_invalidSkin() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DISCONNECTIONSCREEN_INVALIDSKIN, []); + } + + public static function disconnectionScreen_noReason() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DISCONNECTIONSCREEN_NOREASON, []); + } + + public static function disconnectionScreen_notAuthenticated() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DISCONNECTIONSCREEN_NOTAUTHENTICATED, []); + } + + public static function disconnectionScreen_outdatedClient() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DISCONNECTIONSCREEN_OUTDATEDCLIENT, []); + } + + public static function disconnectionScreen_outdatedServer() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DISCONNECTIONSCREEN_OUTDATEDSERVER, []); + } + + public static function disconnectionScreen_resourcePack() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DISCONNECTIONSCREEN_RESOURCEPACK, []); + } + + public static function disconnectionScreen_serverFull() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::DISCONNECTIONSCREEN_SERVERFULL, []); + } + + public static function gameMode_adventure() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::GAMEMODE_ADVENTURE, []); + } + + public static function gameMode_changed() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::GAMEMODE_CHANGED, []); + } + + public static function gameMode_creative() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::GAMEMODE_CREATIVE, []); + } + + public static function gameMode_spectator() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::GAMEMODE_SPECTATOR, []); + } + + public static function gameMode_survival() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::GAMEMODE_SURVIVAL, []); + } + + public static function gamemode_info() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::GAMEMODE_INFO, []); + } + + public static function invalid_port() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::INVALID_PORT, []); + } + + public static function ip_confirm() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::IP_CONFIRM, []); + } + + public static function ip_get() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::IP_GET, []); + } + + public static function ip_warning(string $EXTERNAL_IP, string $INTERNAL_IP) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::IP_WARNING, [ + "EXTERNAL_IP" => $EXTERNAL_IP, + "INTERNAL_IP" => $INTERNAL_IP, + ]); + } + + public static function kick_admin() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::KICK_ADMIN, []); + } + + public static function kick_admin_reason(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::KICK_ADMIN_REASON, [ + 0 => $param0, + ]); + } + + public static function kick_reason_cheat(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::KICK_REASON_CHEAT, [ + 0 => $param0, + ]); + } + + public static function language_name() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::LANGUAGE_NAME, []); + } + + public static function language_selected(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::LANGUAGE_SELECTED, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function language_has_been_selected() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::LANGUAGE_HAS_BEEN_SELECTED, []); + } + + public static function max_players() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::MAX_PLAYERS, []); + } + + public static function multiplayer_player_joined(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::MULTIPLAYER_PLAYER_JOINED, [ + 0 => $param0, + ]); + } + + public static function multiplayer_player_left(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::MULTIPLAYER_PLAYER_LEFT, [ + 0 => $param0, + ]); + } + + public static function name_your_server() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::NAME_YOUR_SERVER, []); + } + + public static function op_info() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::OP_INFO, []); + } + + public static function op_warning() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::OP_WARNING, []); + } + + public static function op_who() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::OP_WHO, []); + } + + public static function pocketmine_command_alias_illegal(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_ALIAS_ILLEGAL, [ + 0 => $param0, + ]); + } + + public static function pocketmine_command_alias_notFound(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_ALIAS_NOTFOUND, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function pocketmine_command_alias_recursive(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_ALIAS_RECURSIVE, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function pocketmine_command_ban_ip_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_BAN_IP_DESCRIPTION, []); + } + + public static function pocketmine_command_ban_player_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_BAN_PLAYER_DESCRIPTION, []); + } + + public static function pocketmine_command_banlist_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_BANLIST_DESCRIPTION, []); + } + + public static function pocketmine_command_clear_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_CLEAR_DESCRIPTION, []); + } + + public static function pocketmine_command_clear_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_CLEAR_USAGE, []); + } + + public static function pocketmine_command_defaultgamemode_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_DEFAULTGAMEMODE_DESCRIPTION, []); + } + + public static function pocketmine_command_deop_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_DEOP_DESCRIPTION, []); + } + + public static function pocketmine_command_difficulty_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_DIFFICULTY_DESCRIPTION, []); + } + + public static function pocketmine_command_effect_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_EFFECT_DESCRIPTION, []); + } + + public static function pocketmine_command_enchant_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_ENCHANT_DESCRIPTION, []); + } + + public static function pocketmine_command_exception(string $param0, string $param1, string $param2) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_EXCEPTION, [ + 0 => $param0, + 1 => $param1, + 2 => $param2, + ]); + } + + public static function pocketmine_command_gamemode_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_GAMEMODE_DESCRIPTION, []); + } + + public static function pocketmine_command_gc_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_GC_DESCRIPTION, []); + } + + public static function pocketmine_command_gc_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_GC_USAGE, []); + } + + public static function pocketmine_command_give_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_GIVE_DESCRIPTION, []); + } + + public static function pocketmine_command_give_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_GIVE_USAGE, []); + } + + public static function pocketmine_command_help_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_HELP_DESCRIPTION, []); + } + + public static function pocketmine_command_kick_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_KICK_DESCRIPTION, []); + } + + public static function pocketmine_command_kill_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_KILL_DESCRIPTION, []); + } + + public static function pocketmine_command_kill_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_KILL_USAGE, []); + } + + public static function pocketmine_command_list_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_LIST_DESCRIPTION, []); + } + + public static function pocketmine_command_me_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_ME_DESCRIPTION, []); + } + + public static function pocketmine_command_op_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_OP_DESCRIPTION, []); + } + + public static function pocketmine_command_particle_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_PARTICLE_DESCRIPTION, []); + } + + public static function pocketmine_command_particle_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_PARTICLE_USAGE, []); + } + + public static function pocketmine_command_plugins_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_PLUGINS_DESCRIPTION, []); + } + + public static function pocketmine_command_plugins_success(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_PLUGINS_SUCCESS, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function pocketmine_command_plugins_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_PLUGINS_USAGE, []); + } + + public static function pocketmine_command_save_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_SAVE_DESCRIPTION, []); + } + + public static function pocketmine_command_saveoff_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_SAVEOFF_DESCRIPTION, []); + } + + public static function pocketmine_command_saveon_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_SAVEON_DESCRIPTION, []); + } + + public static function pocketmine_command_say_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_SAY_DESCRIPTION, []); + } + + public static function pocketmine_command_seed_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_SEED_DESCRIPTION, []); + } + + public static function pocketmine_command_setworldspawn_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_SETWORLDSPAWN_DESCRIPTION, []); + } + + public static function pocketmine_command_spawnpoint_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_SPAWNPOINT_DESCRIPTION, []); + } + + public static function pocketmine_command_status_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_STATUS_DESCRIPTION, []); + } + + public static function pocketmine_command_status_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_STATUS_USAGE, []); + } + + public static function pocketmine_command_stop_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_STOP_DESCRIPTION, []); + } + + public static function pocketmine_command_tell_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TELL_DESCRIPTION, []); + } + + public static function pocketmine_command_time_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIME_DESCRIPTION, []); + } + + public static function pocketmine_command_time_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIME_USAGE, []); + } + + public static function pocketmine_command_timings_alreadyEnabled() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_ALREADYENABLED, []); + } + + public static function pocketmine_command_timings_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_DESCRIPTION, []); + } + + public static function pocketmine_command_timings_disable() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_DISABLE, []); + } + + public static function pocketmine_command_timings_enable() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_ENABLE, []); + } + + public static function pocketmine_command_timings_pasteError() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_PASTEERROR, []); + } + + public static function pocketmine_command_timings_reset() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_RESET, []); + } + + public static function pocketmine_command_timings_timingsDisabled() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_TIMINGSDISABLED, []); + } + + public static function pocketmine_command_timings_timingsRead(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_TIMINGSREAD, [ + 0 => $param0, + ]); + } + + public static function pocketmine_command_timings_timingsUpload(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_TIMINGSUPLOAD, [ + 0 => $param0, + ]); + } + + public static function pocketmine_command_timings_timingsWrite(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_TIMINGSWRITE, [ + 0 => $param0, + ]); + } + + public static function pocketmine_command_timings_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_USAGE, []); + } + + public static function pocketmine_command_title_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TITLE_DESCRIPTION, []); + } + + public static function pocketmine_command_tp_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TP_DESCRIPTION, []); + } + + public static function pocketmine_command_transferserver_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TRANSFERSERVER_DESCRIPTION, []); + } + + public static function pocketmine_command_transferserver_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TRANSFERSERVER_USAGE, []); + } + + public static function pocketmine_command_unban_ip_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_UNBAN_IP_DESCRIPTION, []); + } + + public static function pocketmine_command_unban_player_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_UNBAN_PLAYER_DESCRIPTION, []); + } + + public static function pocketmine_command_version_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_VERSION_DESCRIPTION, []); + } + + public static function pocketmine_command_version_noSuchPlugin() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_VERSION_NOSUCHPLUGIN, []); + } + + public static function pocketmine_command_version_usage() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_VERSION_USAGE, []); + } + + public static function pocketmine_command_whitelist_description() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_WHITELIST_DESCRIPTION, []); + } + + public static function pocketmine_crash_archive(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_CRASH_ARCHIVE, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function pocketmine_crash_create() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_CRASH_CREATE, []); + } + + public static function pocketmine_crash_error(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_CRASH_ERROR, [ + 0 => $param0, + ]); + } + + public static function pocketmine_crash_submit(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_CRASH_SUBMIT, [ + 0 => $param0, + ]); + } + + public static function pocketmine_data_playerCorrupted(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DATA_PLAYERCORRUPTED, [ + 0 => $param0, + ]); + } + + public static function pocketmine_data_playerNotFound(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DATA_PLAYERNOTFOUND, [ + 0 => $param0, + ]); + } + + public static function pocketmine_data_playerOld(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DATA_PLAYEROLD, [ + 0 => $param0, + ]); + } + + public static function pocketmine_data_saveError(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DATA_SAVEERROR, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function pocketmine_debug_enable() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DEBUG_ENABLE, []); + } + + public static function pocketmine_disconnect_incompatibleProtocol(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DISCONNECT_INCOMPATIBLEPROTOCOL, [ + 0 => $param0, + ]); + } + + public static function pocketmine_disconnect_invalidSession(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DISCONNECT_INVALIDSESSION, [ + 0 => $param0, + ]); + } + + public static function pocketmine_disconnect_invalidSession_badSignature() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DISCONNECT_INVALIDSESSION_BADSIGNATURE, []); + } + + public static function pocketmine_disconnect_invalidSession_missingKey() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DISCONNECT_INVALIDSESSION_MISSINGKEY, []); + } + + public static function pocketmine_disconnect_invalidSession_tooEarly() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DISCONNECT_INVALIDSESSION_TOOEARLY, []); + } + + public static function pocketmine_disconnect_invalidSession_tooLate() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DISCONNECT_INVALIDSESSION_TOOLATE, []); + } + + public static function pocketmine_level_ambiguousFormat(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_AMBIGUOUSFORMAT, [ + 0 => $param0, + ]); + } + + public static function pocketmine_level_backgroundGeneration(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_BACKGROUNDGENERATION, [ + 0 => $param0, + ]); + } + + public static function pocketmine_level_badDefaultFormat(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_BADDEFAULTFORMAT, [ + 0 => $param0, + ]); + } + + public static function pocketmine_level_defaultError() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_DEFAULTERROR, []); + } + + public static function pocketmine_level_generationError(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_GENERATIONERROR, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function pocketmine_level_loadError(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_LOADERROR, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function pocketmine_level_notFound(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_NOTFOUND, [ + 0 => $param0, + ]); + } + + public static function pocketmine_level_preparing(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_PREPARING, [ + 0 => $param0, + ]); + } + + public static function pocketmine_level_unknownFormat() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_UNKNOWNFORMAT, []); + } + + public static function pocketmine_level_unloading(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_UNLOADING, [ + 0 => $param0, + ]); + } + + public static function pocketmine_player_invalidEntity(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLAYER_INVALIDENTITY, [ + 0 => $param0, + ]); + } + + public static function pocketmine_player_invalidMove(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLAYER_INVALIDMOVE, [ + 0 => $param0, + ]); + } + + public static function pocketmine_player_logIn(string $param0, string $param1, string $param2, string $param3, string $param4, string $param5, string $param6, string $param7) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLAYER_LOGIN, [ + 0 => $param0, + 1 => $param1, + 2 => $param2, + 3 => $param3, + 4 => $param4, + 5 => $param5, + 6 => $param6, + 7 => $param7, + ]); + } + + public static function pocketmine_player_logOut(string $param0, string $param1, string $param2, string $param3) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLAYER_LOGOUT, [ + 0 => $param0, + 1 => $param1, + 2 => $param2, + 3 => $param3, + ]); + } + + public static function pocketmine_plugin_aliasError(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_ALIASERROR, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function pocketmine_plugin_ambiguousMinAPI(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_AMBIGUOUSMINAPI, [ + 0 => $param0, + ]); + } + + public static function pocketmine_plugin_circularDependency() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_CIRCULARDEPENDENCY, []); + } + + public static function pocketmine_plugin_commandError(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_COMMANDERROR, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function pocketmine_plugin_deprecatedEvent(string $param0, string $param1, string $param2) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_DEPRECATEDEVENT, [ + 0 => $param0, + 1 => $param1, + 2 => $param2, + ]); + } + + public static function pocketmine_plugin_disable(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_DISABLE, [ + 0 => $param0, + ]); + } + + public static function pocketmine_plugin_duplicateError(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_DUPLICATEERROR, [ + 0 => $param0, + ]); + } + + public static function pocketmine_plugin_enable(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_ENABLE, [ + 0 => $param0, + ]); + } + + public static function pocketmine_plugin_fileError(string $param0, string $param1, string $param2) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_FILEERROR, [ + 0 => $param0, + 1 => $param1, + 2 => $param2, + ]); + } + + public static function pocketmine_plugin_genericLoadError(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_GENERICLOADERROR, [ + 0 => $param0, + ]); + } + + public static function pocketmine_plugin_incompatibleAPI(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_INCOMPATIBLEAPI, [ + 0 => $param0, + ]); + } + + public static function pocketmine_plugin_incompatibleOS(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_INCOMPATIBLEOS, [ + 0 => $param0, + ]); + } + + public static function pocketmine_plugin_incompatiblePhpVersion(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_INCOMPATIBLEPHPVERSION, [ + 0 => $param0, + ]); + } + + public static function pocketmine_plugin_incompatibleProtocol(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_INCOMPATIBLEPROTOCOL, [ + 0 => $param0, + ]); + } + + public static function pocketmine_plugin_load(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_LOAD, [ + 0 => $param0, + ]); + } + + public static function pocketmine_plugin_loadError(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_LOADERROR, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function pocketmine_plugin_restrictedName() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_RESTRICTEDNAME, []); + } + + public static function pocketmine_plugin_spacesDiscouraged(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_SPACESDISCOURAGED, [ + 0 => $param0, + ]); + } + + public static function pocketmine_plugin_unknownDependency(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_UNKNOWNDEPENDENCY, [ + 0 => $param0, + ]); + } + + public static function pocketmine_save_start() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SAVE_START, []); + } + + public static function pocketmine_save_success(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SAVE_SUCCESS, [ + 0 => $param0, + ]); + } + + public static function pocketmine_server_auth_disabled() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_AUTH_DISABLED, []); + } + + public static function pocketmine_server_auth_enabled() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_AUTH_ENABLED, []); + } + + public static function pocketmine_server_authProperty_disabled() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_AUTHPROPERTY_DISABLED, []); + } + + public static function pocketmine_server_authProperty_enabled() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_AUTHPROPERTY_ENABLED, []); + } + + public static function pocketmine_server_authWarning() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_AUTHWARNING, []); + } + + public static function pocketmine_server_defaultGameMode(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_DEFAULTGAMEMODE, [ + 0 => $param0, + ]); + } + + public static function pocketmine_server_devBuild_error1(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_ERROR1, [ + 0 => $param0, + ]); + } + + public static function pocketmine_server_devBuild_error2() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_ERROR2, []); + } + + public static function pocketmine_server_devBuild_error3() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_ERROR3, []); + } + + public static function pocketmine_server_devBuild_error4(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_ERROR4, [ + 0 => $param0, + ]); + } + + public static function pocketmine_server_devBuild_error5(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_ERROR5, [ + 0 => $param0, + ]); + } + + public static function pocketmine_server_devBuild_warning1(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_WARNING1, [ + 0 => $param0, + ]); + } + + public static function pocketmine_server_devBuild_warning2() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_WARNING2, []); + } + + public static function pocketmine_server_devBuild_warning3() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_WARNING3, []); + } + + public static function pocketmine_server_donate(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_DONATE, [ + 0 => $param0, + ]); + } + + public static function pocketmine_server_info(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_INFO, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function pocketmine_server_info_extended(string $param0, string $param1, string $param2, string $param3) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_INFO_EXTENDED, [ + 0 => $param0, + 1 => $param1, + 2 => $param2, + 3 => $param3, + ]); + } + + public static function pocketmine_server_license(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_LICENSE, [ + 0 => $param0, + ]); + } + + public static function pocketmine_server_networkStart(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_NETWORKSTART, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function pocketmine_server_query_running(string $param0, string $param1) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_QUERY_RUNNING, [ + 0 => $param0, + 1 => $param1, + ]); + } + + public static function pocketmine_server_start(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_START, [ + 0 => $param0, + ]); + } + + public static function pocketmine_server_startFinished(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_STARTFINISHED, [ + 0 => $param0, + ]); + } + + public static function pocketmine_server_tickOverload() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_TICKOVERLOAD, []); + } + + public static function pocketmine_plugins() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGINS, []); + } + + public static function pocketmine_will_start(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POCKETMINE_WILL_START, [ + 0 => $param0, + ]); + } + + public static function port_warning() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::PORT_WARNING, []); + } + + public static function potion_absorption() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_ABSORPTION, []); + } + + public static function potion_blindness() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_BLINDNESS, []); + } + + public static function potion_conduitPower() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_CONDUITPOWER, []); + } + + public static function potion_confusion() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_CONFUSION, []); + } + + public static function potion_damageBoost() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_DAMAGEBOOST, []); + } + + public static function potion_digSlowDown() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_DIGSLOWDOWN, []); + } + + public static function potion_digSpeed() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_DIGSPEED, []); + } + + public static function potion_fireResistance() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_FIRERESISTANCE, []); + } + + public static function potion_harm() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_HARM, []); + } + + public static function potion_heal() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_HEAL, []); + } + + public static function potion_healthBoost() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_HEALTHBOOST, []); + } + + public static function potion_hunger() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_HUNGER, []); + } + + public static function potion_invisibility() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_INVISIBILITY, []); + } + + public static function potion_jump() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_JUMP, []); + } + + public static function potion_levitation() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_LEVITATION, []); + } + + public static function potion_moveSlowdown() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_MOVESLOWDOWN, []); + } + + public static function potion_moveSpeed() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_MOVESPEED, []); + } + + public static function potion_nightVision() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_NIGHTVISION, []); + } + + public static function potion_poison() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_POISON, []); + } + + public static function potion_regeneration() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_REGENERATION, []); + } + + public static function potion_resistance() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_RESISTANCE, []); + } + + public static function potion_saturation() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_SATURATION, []); + } + + public static function potion_waterBreathing() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_WATERBREATHING, []); + } + + public static function potion_weakness() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_WEAKNESS, []); + } + + public static function potion_wither() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::POTION_WITHER, []); + } + + public static function query_disable() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::QUERY_DISABLE, []); + } + + public static function query_warning1() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::QUERY_WARNING1, []); + } + + public static function query_warning2() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::QUERY_WARNING2, []); + } + + public static function server_port() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::SERVER_PORT, []); + } + + public static function server_properties() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::SERVER_PROPERTIES, []); + } + + public static function setting_up_server_now() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::SETTING_UP_SERVER_NOW, []); + } + + public static function skip_installer() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::SKIP_INSTALLER, []); + } + + public static function tile_bed_noSleep() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::TILE_BED_NOSLEEP, []); + } + + public static function tile_bed_occupied() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::TILE_BED_OCCUPIED, []); + } + + public static function tile_bed_tooFar() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::TILE_BED_TOOFAR, []); + } + + public static function welcome_to_pocketmine(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::WELCOME_TO_POCKETMINE, [ + 0 => $param0, + ]); + } + + public static function whitelist_enable() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::WHITELIST_ENABLE, []); + } + + public static function whitelist_info() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::WHITELIST_INFO, []); + } + + public static function whitelist_warning() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::WHITELIST_WARNING, []); + } + + public static function you_have_finished() : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::YOU_HAVE_FINISHED, []); + } + + public static function you_have_to_accept_the_license(string $param0) : TranslationContainer{ + return new TranslationContainer(KnownTranslationKeys::YOU_HAVE_TO_ACCEPT_THE_LICENSE, [ + 0 => $param0, + ]); + } + +} diff --git a/src/network/mcpe/NetworkSession.php b/src/network/mcpe/NetworkSession.php index 06bd45eac..946fbd92f 100644 --- a/src/network/mcpe/NetworkSession.php +++ b/src/network/mcpe/NetworkSession.php @@ -33,7 +33,7 @@ use pocketmine\event\player\PlayerDuplicateLoginEvent; use pocketmine\event\server\DataPacketReceiveEvent; use pocketmine\event\server\DataPacketSendEvent; use pocketmine\form\Form; -use pocketmine\lang\KnownTranslationKeys; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\math\Vector3; use pocketmine\nbt\tag\CompoundTag; use pocketmine\nbt\tag\StringTag; @@ -581,7 +581,7 @@ class NetworkSession{ } if($error !== null){ - $this->disconnect($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_DISCONNECT_INVALIDSESSION, [$error])); + $this->disconnect($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_disconnect_invalidSession($error))); return; } diff --git a/src/network/mcpe/handler/LoginPacketHandler.php b/src/network/mcpe/handler/LoginPacketHandler.php index 926e20740..25532f172 100644 --- a/src/network/mcpe/handler/LoginPacketHandler.php +++ b/src/network/mcpe/handler/LoginPacketHandler.php @@ -25,7 +25,7 @@ namespace pocketmine\network\mcpe\handler; use pocketmine\entity\InvalidSkinException; use pocketmine\event\player\PlayerPreLoginEvent; -use pocketmine\lang\KnownTranslationKeys; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\network\mcpe\auth\ProcessLoginTask; use pocketmine\network\mcpe\convert\SkinAdapterSingleton; use pocketmine\network\mcpe\JwtException; @@ -83,7 +83,7 @@ class LoginPacketHandler extends PacketHandler{ //This pocketmine disconnect message will only be seen by the console (PlayStatusPacket causes the messages to be shown for the client) $this->session->disconnect( - $this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_DISCONNECT_INCOMPATIBLEPROTOCOL, [$packet->protocol]), + $this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_disconnect_incompatibleProtocol((string) $packet->protocol)), false ); diff --git a/src/network/query/QueryHandler.php b/src/network/query/QueryHandler.php index 101b47174..1ec8a2277 100644 --- a/src/network/query/QueryHandler.php +++ b/src/network/query/QueryHandler.php @@ -27,7 +27,7 @@ declare(strict_types=1); */ namespace pocketmine\network\query; -use pocketmine\lang\KnownTranslationKeys; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\network\AdvancedNetworkInterface; use pocketmine\network\RawPacketHandler; use pocketmine\Server; @@ -71,7 +71,7 @@ class QueryHandler implements RawPacketHandler{ $this->regenerateToken(); $this->lastToken = $this->token; - $this->logger->info($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_SERVER_QUERY_RUNNING, [$addr, $port])); + $this->logger->info($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_server_query_running($addr, (string) $port))); } public function getPattern() : string{ diff --git a/src/player/Player.php b/src/player/Player.php index a8c0ad291..d27726295 100644 --- a/src/player/Player.php +++ b/src/player/Player.php @@ -80,6 +80,7 @@ use pocketmine\item\enchantment\MeleeWeaponEnchantment; use pocketmine\item\Item; use pocketmine\item\ItemUseResult; use pocketmine\item\Releasable; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; use pocketmine\lang\Language; use pocketmine\lang\TranslationContainer; @@ -276,16 +277,16 @@ class Player extends Human implements CommandSender, ChunkListener, IPlayer{ return; } - $this->server->getLogger()->info($this->getServer()->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLAYER_LOGIN, [ + $this->server->getLogger()->info($this->getServer()->getLanguage()->translate(KnownTranslationFactory::pocketmine_player_logIn( TextFormat::AQUA . $this->username . TextFormat::WHITE, $session->getIp(), - $session->getPort(), - $this->id, + (string) $session->getPort(), + (string) $this->id, $this->getWorld()->getDisplayName(), - round($this->location->x, 4), - round($this->location->y, 4), - round($this->location->z, 4) - ])); + (string) round($this->location->x, 4), + (string) round($this->location->y, 4), + (string) round($this->location->z, 4) + ))); $this->server->addOnlinePlayer($this); } diff --git a/src/plugin/PluginBase.php b/src/plugin/PluginBase.php index e2beaeb0f..ac7b0036f 100644 --- a/src/plugin/PluginBase.php +++ b/src/plugin/PluginBase.php @@ -27,7 +27,7 @@ use pocketmine\command\Command; use pocketmine\command\CommandExecutor; use pocketmine\command\CommandSender; use pocketmine\command\PluginCommand; -use pocketmine\lang\KnownTranslationKeys; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\scheduler\TaskScheduler; use pocketmine\Server; use pocketmine\utils\AssumptionFailedError; @@ -168,7 +168,7 @@ abstract class PluginBase implements Plugin, CommandExecutor{ foreach($this->getDescription()->getCommands() as $key => $data){ if(strpos($key, ":") !== false){ - $this->logger->error($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_COMMANDERROR, [$key, $this->getDescription()->getFullName()])); + $this->logger->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_commandError($key, $this->getDescription()->getFullName()))); continue; } if(is_array($data)){ //TODO: error out if it isn't @@ -185,7 +185,7 @@ abstract class PluginBase implements Plugin, CommandExecutor{ $aliasList = []; foreach($data["aliases"] as $alias){ if(strpos($alias, ":") !== false){ - $this->logger->error($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_ALIASERROR, [$alias, $this->getDescription()->getFullName()])); + $this->logger->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_aliasError($alias, $this->getDescription()->getFullName()))); continue; } $aliasList[] = $alias; diff --git a/src/plugin/PluginManager.php b/src/plugin/PluginManager.php index 08a01259b..695a38ab7 100644 --- a/src/plugin/PluginManager.php +++ b/src/plugin/PluginManager.php @@ -31,6 +31,7 @@ use pocketmine\event\ListenerMethodTags; use pocketmine\event\plugin\PluginDisableEvent; use pocketmine\event\plugin\PluginEnableEvent; use pocketmine\event\RegisteredListener; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\KnownTranslationKeys; use pocketmine\network\mcpe\protocol\ProtocolInfo; use pocketmine\permission\DefaultPermissions; @@ -135,7 +136,7 @@ class PluginManager{ if($loader->canLoadPlugin($path)){ $description = $loader->getPluginDescription($path); if($description instanceof PluginDescription){ - $this->server->getLogger()->info($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_LOAD, [$description->getFullName()])); + $this->server->getLogger()->info($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_load($description->getFullName()))); try{ $description->checkRequiredExtensions(); }catch(PluginException $ex){ @@ -246,7 +247,7 @@ class PluginManager{ try{ $description = $loader->getPluginDescription($file); }catch(\RuntimeException $e){ //TODO: more specific exception handling - $this->server->getLogger()->error($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_FILEERROR, [$file, $directory, $e->getMessage()])); + $this->server->getLogger()->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_fileError($file, $directory, $e->getMessage()))); $this->server->getLogger()->logException($e); continue; } @@ -256,58 +257,58 @@ class PluginManager{ $name = $description->getName(); if(stripos($name, "pocketmine") !== false or stripos($name, "minecraft") !== false or stripos($name, "mojang") !== false){ - $this->server->getLogger()->error($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_LOADERROR, [$name, "%" . KnownTranslationKeys::POCKETMINE_PLUGIN_RESTRICTEDNAME])); + $this->server->getLogger()->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_loadError($name, "%" . KnownTranslationKeys::POCKETMINE_PLUGIN_RESTRICTEDNAME))); continue; } if(strpos($name, " ") !== false){ - $this->server->getLogger()->warning($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_SPACESDISCOURAGED, [$name])); + $this->server->getLogger()->warning($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_spacesDiscouraged($name))); } if(isset($plugins[$name]) or $this->getPlugin($name) instanceof Plugin){ - $this->server->getLogger()->error($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_DUPLICATEERROR, [$name])); + $this->server->getLogger()->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_duplicateError($name))); continue; } if(!ApiVersion::isCompatible($this->server->getApiVersion(), $description->getCompatibleApis())){ - $this->server->getLogger()->error($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_LOADERROR, [ + $this->server->getLogger()->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_loadError( $name, - $this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_INCOMPATIBLEAPI, [implode(", ", $description->getCompatibleApis())]) - ])); + $this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_incompatibleAPI(implode(", ", $description->getCompatibleApis()))) + ))); continue; } $ambiguousVersions = ApiVersion::checkAmbiguousVersions($description->getCompatibleApis()); if(count($ambiguousVersions) > 0){ - $this->server->getLogger()->error($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_LOADERROR, [ + $this->server->getLogger()->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_loadError( $name, - $this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_AMBIGUOUSMINAPI, [implode(", ", $ambiguousVersions)]) - ])); + $this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_ambiguousMinAPI(implode(", ", $ambiguousVersions))) + ))); continue; } if(count($description->getCompatibleOperatingSystems()) > 0 and !in_array(Utils::getOS(), $description->getCompatibleOperatingSystems(), true)) { - $this->server->getLogger()->error($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_LOADERROR, [ + $this->server->getLogger()->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_loadError( $name, - $this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_INCOMPATIBLEOS, [implode(", ", $description->getCompatibleOperatingSystems())]) - ])); + $this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_incompatibleOS(implode(", ", $description->getCompatibleOperatingSystems()))) + ))); continue; } if(count($pluginMcpeProtocols = $description->getCompatibleMcpeProtocols()) > 0){ $serverMcpeProtocols = [ProtocolInfo::CURRENT_PROTOCOL]; if(count(array_intersect($pluginMcpeProtocols, $serverMcpeProtocols)) === 0){ - $this->server->getLogger()->error($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_LOADERROR, [ + $this->server->getLogger()->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_loadError( $name, - $this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_DISCONNECT_INCOMPATIBLEPROTOCOL, [implode(", ", $pluginMcpeProtocols)]) - ])); + $this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_incompatibleProtocol(implode(", ", $pluginMcpeProtocols))) + ))); continue; } } if($this->graylist !== null and !$this->graylist->isAllowed($name)){ - $this->server->getLogger()->notice($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_LOADERROR, [ + $this->server->getLogger()->notice($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_loadError( $name, "Disallowed by graylist" - ])); + ))); continue; } $plugins[$name] = $file; @@ -333,10 +334,10 @@ class PluginManager{ if(isset($loadedPlugins[$dependency]) or $this->getPlugin($dependency) instanceof Plugin){ unset($dependencies[$name][$key]); }elseif(!isset($plugins[$dependency])){ - $this->server->getLogger()->critical($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_LOADERROR, [ + $this->server->getLogger()->critical($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_loadError( $name, - $this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_UNKNOWNDEPENDENCY, [$dependency]) - ])); + $this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_unknownDependency($dependency)) + ))); unset($plugins[$name]); continue 2; } @@ -372,7 +373,7 @@ class PluginManager{ if(($plugin = $this->loadPlugin($file, $loaders)) instanceof Plugin){ $loadedPlugins[$name] = $plugin; }else{ - $this->server->getLogger()->critical($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_GENERICLOADERROR, [$name])); + $this->server->getLogger()->critical($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_genericLoadError($name))); } } } @@ -380,7 +381,7 @@ class PluginManager{ if($loadedThisLoop === 0){ //No plugins loaded :( foreach($plugins as $name => $file){ - $this->server->getLogger()->critical($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_LOADERROR, [$name, "%" . KnownTranslationKeys::POCKETMINE_PLUGIN_CIRCULARDEPENDENCY])); + $this->server->getLogger()->critical($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_loadError($name, "%" . KnownTranslationKeys::POCKETMINE_PLUGIN_CIRCULARDEPENDENCY))); } $plugins = []; } @@ -395,7 +396,7 @@ class PluginManager{ public function enablePlugin(Plugin $plugin) : void{ if(!$plugin->isEnabled()){ - $this->server->getLogger()->info($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_ENABLE, [$plugin->getDescription()->getFullName()])); + $this->server->getLogger()->info($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_enable($plugin->getDescription()->getFullName()))); $plugin->getScheduler()->setEnabled(true); $plugin->onEnableStateChange(true); @@ -414,7 +415,7 @@ class PluginManager{ public function disablePlugin(Plugin $plugin) : void{ if($plugin->isEnabled()){ - $this->server->getLogger()->info($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_PLUGIN_DISABLE, [$plugin->getDescription()->getFullName()])); + $this->server->getLogger()->info($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_disable($plugin->getDescription()->getFullName()))); (new PluginDisableEvent($plugin))->call(); unset($this->enabledPlugins[$plugin->getDescription()->getName()]); diff --git a/src/wizard/SetupWizard.php b/src/wizard/SetupWizard.php index 62d7d391e..bb1b8de26 100644 --- a/src/wizard/SetupWizard.php +++ b/src/wizard/SetupWizard.php @@ -28,7 +28,7 @@ declare(strict_types=1); namespace pocketmine\wizard; use pocketmine\data\java\GameModeIdMap; -use pocketmine\lang\KnownTranslationKeys; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\lang\Language; use pocketmine\lang\LanguageNotFoundException; use pocketmine\player\GameMode; @@ -83,7 +83,7 @@ class SetupWizard{ $this->lang = new Language($lang); - $this->message($this->lang->get(KnownTranslationKeys::LANGUAGE_HAS_BEEN_SELECTED)); + $this->message($this->lang->translate(KnownTranslationFactory::language_has_been_selected())); if(!$this->showLicense()){ return false; @@ -94,7 +94,7 @@ class SetupWizard{ $config->set("language", $lang); $config->save(); - if(strtolower($this->getInput($this->lang->get(KnownTranslationKeys::SKIP_INSTALLER), "n", "y/N")) === "y"){ + if(strtolower($this->getInput($this->lang->translate(KnownTranslationFactory::skip_installer()), "n", "y/N")) === "y"){ $this->printIpDetails(); return true; } @@ -113,7 +113,7 @@ class SetupWizard{ } private function showLicense() : bool{ - $this->message($this->lang->translateString(KnownTranslationKeys::WELCOME_TO_POCKETMINE, [VersionInfo::NAME])); + $this->message($this->lang->translate(KnownTranslationFactory::welcome_to_pocketmine(VersionInfo::NAME))); echo <<writeLine(); - if(strtolower($this->getInput($this->lang->get(KnownTranslationKeys::ACCEPT_LICENSE), "n", "y/N")) !== "y"){ - $this->error($this->lang->translateString(KnownTranslationKeys::YOU_HAVE_TO_ACCEPT_THE_LICENSE, [VersionInfo::NAME])); + if(strtolower($this->getInput($this->lang->translate(KnownTranslationFactory::accept_license()), "n", "y/N")) !== "y"){ + $this->error($this->lang->translate(KnownTranslationFactory::you_have_to_accept_the_license(VersionInfo::NAME))); sleep(5); return false; @@ -134,23 +134,23 @@ LICENSE; } private function welcome() : void{ - $this->message($this->lang->get(KnownTranslationKeys::SETTING_UP_SERVER_NOW)); - $this->message($this->lang->get(KnownTranslationKeys::DEFAULT_VALUES_INFO)); - $this->message($this->lang->get(KnownTranslationKeys::SERVER_PROPERTIES)); + $this->message($this->lang->translate(KnownTranslationFactory::setting_up_server_now())); + $this->message($this->lang->translate(KnownTranslationFactory::default_values_info())); + $this->message($this->lang->translate(KnownTranslationFactory::server_properties())); } private function generateBaseConfig() : void{ $config = new Config(Path::join($this->dataPath, "server.properties"), Config::PROPERTIES); - $config->set("motd", ($name = $this->getInput($this->lang->get(KnownTranslationKeys::NAME_YOUR_SERVER), self::DEFAULT_NAME))); + $config->set("motd", ($name = $this->getInput($this->lang->translate(KnownTranslationFactory::name_your_server()), self::DEFAULT_NAME))); $config->set("server-name", $name); - $this->message($this->lang->get(KnownTranslationKeys::PORT_WARNING)); + $this->message($this->lang->translate(KnownTranslationFactory::port_warning())); do{ - $port = (int) $this->getInput($this->lang->get(KnownTranslationKeys::SERVER_PORT), (string) self::DEFAULT_PORT); + $port = (int) $this->getInput($this->lang->translate(KnownTranslationFactory::server_port()), (string) self::DEFAULT_PORT); if($port <= 0 or $port > 65535){ - $this->error($this->lang->get(KnownTranslationKeys::INVALID_PORT)); + $this->error($this->lang->translate(KnownTranslationFactory::invalid_port())); continue; } @@ -158,35 +158,35 @@ LICENSE; }while(true); $config->set("server-port", $port); - $this->message($this->lang->get(KnownTranslationKeys::GAMEMODE_INFO)); + $this->message($this->lang->translate(KnownTranslationFactory::gamemode_info())); do{ - $gamemode = (int) $this->getInput($this->lang->get(KnownTranslationKeys::DEFAULT_GAMEMODE), (string) GameModeIdMap::getInstance()->toId(GameMode::SURVIVAL())); + $gamemode = (int) $this->getInput($this->lang->translate(KnownTranslationFactory::default_gamemode()), (string) GameModeIdMap::getInstance()->toId(GameMode::SURVIVAL())); }while($gamemode < 0 or $gamemode > 3); $config->set("gamemode", $gamemode); - $config->set("max-players", (int) $this->getInput($this->lang->get(KnownTranslationKeys::MAX_PLAYERS), (string) self::DEFAULT_PLAYERS)); + $config->set("max-players", (int) $this->getInput($this->lang->translate(KnownTranslationFactory::max_players()), (string) self::DEFAULT_PLAYERS)); $config->save(); } private function generateUserFiles() : void{ - $this->message($this->lang->get(KnownTranslationKeys::OP_INFO)); + $this->message($this->lang->translate(KnownTranslationFactory::op_info())); - $op = strtolower($this->getInput($this->lang->get(KnownTranslationKeys::OP_WHO), "")); + $op = strtolower($this->getInput($this->lang->translate(KnownTranslationFactory::op_who()), "")); if($op === ""){ - $this->error($this->lang->get(KnownTranslationKeys::OP_WARNING)); + $this->error($this->lang->translate(KnownTranslationFactory::op_warning())); }else{ $ops = new Config(Path::join($this->dataPath, "ops.txt"), Config::ENUM); $ops->set($op, true); $ops->save(); } - $this->message($this->lang->get(KnownTranslationKeys::WHITELIST_INFO)); + $this->message($this->lang->translate(KnownTranslationFactory::whitelist_info())); $config = new Config(Path::join($this->dataPath, "server.properties"), Config::PROPERTIES); - if(strtolower($this->getInput($this->lang->get(KnownTranslationKeys::WHITELIST_ENABLE), "n", "y/N")) === "y"){ - $this->error($this->lang->get(KnownTranslationKeys::WHITELIST_WARNING)); + if(strtolower($this->getInput($this->lang->translate(KnownTranslationFactory::whitelist_enable()), "n", "y/N")) === "y"){ + $this->error($this->lang->translate(KnownTranslationFactory::whitelist_warning())); $config->set("white-list", true); }else{ $config->set("white-list", false); @@ -196,9 +196,9 @@ LICENSE; private function networkFunctions() : void{ $config = new Config(Path::join($this->dataPath, "server.properties"), Config::PROPERTIES); - $this->error($this->lang->get(KnownTranslationKeys::QUERY_WARNING1)); - $this->error($this->lang->get(KnownTranslationKeys::QUERY_WARNING2)); - if(strtolower($this->getInput($this->lang->get(KnownTranslationKeys::QUERY_DISABLE), "n", "y/N")) === "y"){ + $this->error($this->lang->translate(KnownTranslationFactory::query_warning1())); + $this->error($this->lang->translate(KnownTranslationFactory::query_warning2())); + if(strtolower($this->getInput($this->lang->translate(KnownTranslationFactory::query_disable()), "n", "y/N")) === "y"){ $config->set("enable-query", false); }else{ $config->set("enable-query", true); @@ -208,7 +208,7 @@ LICENSE; } private function printIpDetails() : void{ - $this->message($this->lang->get(KnownTranslationKeys::IP_GET)); + $this->message($this->lang->translate(KnownTranslationFactory::ip_get())); $externalIP = Internet::getIP(); if($externalIP === false){ @@ -220,15 +220,15 @@ LICENSE; $internalIP = "unknown (" . $e->getMessage() . ")"; } - $this->error($this->lang->translateString(KnownTranslationKeys::IP_WARNING, ["EXTERNAL_IP" => $externalIP, "INTERNAL_IP" => $internalIP])); - $this->error($this->lang->get(KnownTranslationKeys::IP_CONFIRM)); + $this->error($this->lang->translate(KnownTranslationFactory::ip_warning($externalIP, $internalIP))); + $this->error($this->lang->translate(KnownTranslationFactory::ip_confirm())); $this->readLine(); } private function endWizard() : void{ - $this->message($this->lang->get(KnownTranslationKeys::YOU_HAVE_FINISHED)); - $this->message($this->lang->get(KnownTranslationKeys::POCKETMINE_PLUGINS)); - $this->message($this->lang->translateString(KnownTranslationKeys::POCKETMINE_WILL_START, [VersionInfo::NAME])); + $this->message($this->lang->translate(KnownTranslationFactory::you_have_finished())); + $this->message($this->lang->translate(KnownTranslationFactory::pocketmine_plugins())); + $this->message($this->lang->translate(KnownTranslationFactory::pocketmine_will_start(VersionInfo::NAME))); $this->writeLine(); $this->writeLine(); diff --git a/src/world/World.php b/src/world/World.php index 0f613fe03..14e16c72d 100644 --- a/src/world/World.php +++ b/src/world/World.php @@ -54,7 +54,7 @@ use pocketmine\item\Item; use pocketmine\item\ItemFactory; use pocketmine\item\ItemUseResult; use pocketmine\item\LegacyStringToItemParser; -use pocketmine\lang\KnownTranslationKeys; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\math\AxisAlignedBB; use pocketmine\math\Vector3; use pocketmine\nbt\NbtDataException; @@ -401,7 +401,7 @@ class World implements ChunkManager{ $this->minY = $this->provider->getWorldMinY(); $this->maxY = $this->provider->getWorldMaxY(); - $this->server->getLogger()->info($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_LEVEL_PREPARING, [$this->displayName])); + $this->server->getLogger()->info($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_level_preparing($this->displayName))); $this->generator = GeneratorManager::getInstance()->getGenerator($this->provider->getWorldData()->getGenerator(), true); //TODO: validate generator options $this->chunkPopulationRequestQueue = new \SplQueue(); diff --git a/src/world/WorldManager.php b/src/world/WorldManager.php index 0c3a166b8..45a57e3f7 100644 --- a/src/world/WorldManager.php +++ b/src/world/WorldManager.php @@ -27,7 +27,7 @@ use pocketmine\entity\Entity; use pocketmine\event\world\WorldInitEvent; use pocketmine\event\world\WorldLoadEvent; use pocketmine\event\world\WorldUnloadEvent; -use pocketmine\lang\KnownTranslationKeys; +use pocketmine\lang\KnownTranslationFactory; use pocketmine\player\ChunkSelector; use pocketmine\Server; use pocketmine\timings\Timings; @@ -149,7 +149,7 @@ class WorldManager{ return false; } - $this->server->getLogger()->info($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_LEVEL_UNLOADING, [$world->getDisplayName()])); + $this->server->getLogger()->info($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_level_unloading($world->getDisplayName()))); try{ $safeSpawn = $this->defaultWorld !== null ? $this->defaultWorld->getSafeSpawn() : null; }catch(WorldException $e){ @@ -193,12 +193,12 @@ class WorldManager{ $providers = $this->providerManager->getMatchingProviders($path); if(count($providers) !== 1){ - $this->server->getLogger()->error($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_LEVEL_LOADERROR, [ + $this->server->getLogger()->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_level_loadError( $name, count($providers) === 0 ? - $this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_LEVEL_UNKNOWNFORMAT) : - $this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_LEVEL_AMBIGUOUSFORMAT, [implode(", ", array_keys($providers))]) - ])); + $this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_level_unknownFormat()) : + $this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_level_ambiguousFormat(implode(", ", array_keys($providers))) + )))); return false; } $providerClass = array_shift($providers); @@ -206,16 +206,16 @@ class WorldManager{ try{ $provider = $providerClass->fromPath($path); }catch(CorruptedWorldException $e){ - $this->server->getLogger()->error($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_LEVEL_LOADERROR, [$name, "Corruption detected: " . $e->getMessage()])); + $this->server->getLogger()->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_level_loadError($name, "Corruption detected: " . $e->getMessage()))); return false; }catch(UnsupportedWorldFormatException $e){ - $this->server->getLogger()->error($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_LEVEL_LOADERROR, [$name, "Unsupported format: " . $e->getMessage()])); + $this->server->getLogger()->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_level_loadError($name, "Unsupported format: " . $e->getMessage()))); return false; } try{ GeneratorManager::getInstance()->getGenerator($provider->getWorldData()->getGenerator(), true); }catch(\InvalidArgumentException $e){ - $this->server->getLogger()->error($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_LEVEL_LOADERROR, [$name, "Unknown generator \"" . $provider->getWorldData()->getGenerator() . "\""])); + $this->server->getLogger()->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_level_loadError($name, "Unknown generator \"" . $provider->getWorldData()->getGenerator() . "\""))); return false; } if(!($provider instanceof WritableWorldProvider)){ @@ -265,7 +265,7 @@ class WorldManager{ (new WorldLoadEvent($world))->call(); if($backgroundGeneration){ - $this->server->getLogger()->notice($this->server->getLanguage()->translateString(KnownTranslationKeys::POCKETMINE_LEVEL_BACKGROUNDGENERATION, [$name])); + $this->server->getLogger()->notice($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_level_backgroundGeneration($name))); $spawnLocation = $world->getSpawnLocation(); $centerX = $spawnLocation->getFloorX() >> 4;