From 8b9d7d63900c6a28ffa3b0d86266a33c9f7b21b7 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Sat, 14 Aug 2021 20:57:13 +0100 Subject: [PATCH] Support for nested TranslationContainers --- build/generate-known-translation-apis.php | 2 +- src/command/defaults/VersionCommand.php | 2 +- src/lang/KnownTranslationFactory.php | 298 +++++++++++----------- src/lang/Language.php | 8 +- src/lang/TranslationContainer.php | 16 +- src/player/Player.php | 5 +- src/plugin/PluginManager.php | 14 +- src/world/WorldManager.php | 6 +- 8 files changed, 180 insertions(+), 171 deletions(-) diff --git a/build/generate-known-translation-apis.php b/build/generate-known-translation-apis.php index 4c61a1605..bb0679b01 100644 --- a/build/generate-known-translation-apis.php +++ b/build/generate-known-translation-apis.php @@ -143,7 +143,7 @@ HEADER; } echo "\tpublic static function " . functionify($key) . - "(" . implode(", ", array_map(fn(string $paramName) => "string \$$paramName", $parameters)) . ") : TranslationContainer{\n"; + "(" . implode(", ", array_map(fn(string $paramName) => "TranslationContainer|string \$$paramName", $parameters)) . ") : TranslationContainer{\n"; echo "\t\treturn new TranslationContainer(KnownTranslationKeys::" . constantify($key) . ", ["; foreach($parameters as $parameterKey => $parameterName){ echo "\n\t\t\t"; diff --git a/src/command/defaults/VersionCommand.php b/src/command/defaults/VersionCommand.php index 82fe5e0db..ff69f7627 100644 --- a/src/command/defaults/VersionCommand.php +++ b/src/command/defaults/VersionCommand.php @@ -88,7 +88,7 @@ class VersionCommand extends VanillaCommand{ }else{ $jitStatus = KnownTranslationFactory::pocketmine_command_version_phpJitNotSupported(); } - $sender->sendMessage(KnownTranslationFactory::pocketmine_command_version_phpJitStatus($sender->getLanguage()->translate($jitStatus))); + $sender->sendMessage(KnownTranslationFactory::pocketmine_command_version_phpJitStatus($jitStatus)); $sender->sendMessage(KnownTranslationFactory::pocketmine_command_version_operatingSystem(Utils::getOS())); }else{ $pluginName = implode(" ", $args); diff --git a/src/lang/KnownTranslationFactory.php b/src/lang/KnownTranslationFactory.php index 7156de7cb..c512519e9 100644 --- a/src/lang/KnownTranslationFactory.php +++ b/src/lang/KnownTranslationFactory.php @@ -41,42 +41,42 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::ACCEPT_LICENSE, []); } - public static function chat_type_achievement(string $param0, string $param1) : TranslationContainer{ + public static function chat_type_achievement(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::CHAT_TYPE_ACHIEVEMENT, [ 0 => $param0, 1 => $param1, ]); } - public static function chat_type_admin(string $param0, string $param1) : TranslationContainer{ + public static function chat_type_admin(TranslationContainer|string $param0, TranslationContainer|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{ + public static function chat_type_announcement(TranslationContainer|string $param0, TranslationContainer|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{ + public static function chat_type_emote(TranslationContainer|string $param0, TranslationContainer|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{ + public static function chat_type_text(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::CHAT_TYPE_TEXT, [ 0 => $param0, 1 => $param1, ]); } - public static function commands_ban_success(string $param0) : TranslationContainer{ + public static function commands_ban_success(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_BAN_SUCCESS, [ 0 => $param0, ]); @@ -90,13 +90,13 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_BANIP_INVALID, []); } - public static function commands_banip_success(string $param0) : TranslationContainer{ + public static function commands_banip_success(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_BANIP_SUCCESS, [ 0 => $param0, ]); } - public static function commands_banip_success_players(string $param0, string $param1) : TranslationContainer{ + public static function commands_banip_success_players(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_BANIP_SUCCESS_PLAYERS, [ 0 => $param0, 1 => $param1, @@ -107,13 +107,13 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_BANIP_USAGE, []); } - public static function commands_banlist_ips(string $param0) : TranslationContainer{ + public static function commands_banlist_ips(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_BANLIST_IPS, [ 0 => $param0, ]); } - public static function commands_banlist_players(string $param0) : TranslationContainer{ + public static function commands_banlist_players(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_BANLIST_PLAYERS, [ 0 => $param0, ]); @@ -123,27 +123,27 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_BANLIST_USAGE, []); } - public static function commands_clear_failure_no_items(string $param0) : TranslationContainer{ + public static function commands_clear_failure_no_items(TranslationContainer|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{ + public static function commands_clear_success(TranslationContainer|string $param0, TranslationContainer|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{ + public static function commands_clear_testing(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_CLEAR_TESTING, [ 0 => $param0, 1 => $param1, ]); } - public static function commands_defaultgamemode_success(string $param0) : TranslationContainer{ + public static function commands_defaultgamemode_success(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_DEFAULTGAMEMODE_SUCCESS, [ 0 => $param0, ]); @@ -153,7 +153,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_DEFAULTGAMEMODE_USAGE, []); } - public static function commands_deop_success(string $param0) : TranslationContainer{ + public static function commands_deop_success(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_DEOP_SUCCESS, [ 0 => $param0, ]); @@ -163,7 +163,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_DEOP_USAGE, []); } - public static function commands_difficulty_success(string $param0) : TranslationContainer{ + public static function commands_difficulty_success(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_DIFFICULTY_SUCCESS, [ 0 => $param0, ]); @@ -173,26 +173,26 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_DIFFICULTY_USAGE, []); } - public static function commands_effect_failure_notActive(string $param0, string $param1) : TranslationContainer{ + public static function commands_effect_failure_notActive(TranslationContainer|string $param0, TranslationContainer|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{ + public static function commands_effect_failure_notActive_all(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_EFFECT_FAILURE_NOTACTIVE_ALL, [ 0 => $param0, ]); } - public static function commands_effect_notFound(string $param0) : TranslationContainer{ + public static function commands_effect_notFound(TranslationContainer|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{ + public static function commands_effect_success(TranslationContainer|string $param0, TranslationContainer|string $param1, TranslationContainer|string $param2, TranslationContainer|string $param3) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_EFFECT_SUCCESS, [ 0 => $param0, 1 => $param1, @@ -201,14 +201,14 @@ final class KnownTranslationFactory{ ]); } - public static function commands_effect_success_removed(string $param0, string $param1) : TranslationContainer{ + public static function commands_effect_success_removed(TranslationContainer|string $param0, TranslationContainer|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{ + public static function commands_effect_success_removed_all(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_EFFECT_SUCCESS_REMOVED_ALL, [ 0 => $param0, ]); @@ -222,7 +222,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_ENCHANT_NOITEM, []); } - public static function commands_enchant_notFound(string $param0) : TranslationContainer{ + public static function commands_enchant_notFound(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_ENCHANT_NOTFOUND, [ 0 => $param0, ]); @@ -236,14 +236,14 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_ENCHANT_USAGE, []); } - public static function commands_gamemode_success_other(string $param1, string $param0) : TranslationContainer{ + public static function commands_gamemode_success_other(TranslationContainer|string $param1, TranslationContainer|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{ + public static function commands_gamemode_success_self(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_GAMEMODE_SUCCESS_SELF, [ 0 => $param0, ]); @@ -257,14 +257,14 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_GENERIC_NOTFOUND, []); } - public static function commands_generic_num_tooBig(string $param0, string $param1) : TranslationContainer{ + public static function commands_generic_num_tooBig(TranslationContainer|string $param0, TranslationContainer|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{ + public static function commands_generic_num_tooSmall(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_GENERIC_NUM_TOOSMALL, [ 0 => $param0, 1 => $param1, @@ -279,19 +279,19 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_GENERIC_PLAYER_NOTFOUND, []); } - public static function commands_generic_usage(string $param0) : TranslationContainer{ + public static function commands_generic_usage(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_GENERIC_USAGE, [ 0 => $param0, ]); } - public static function commands_give_item_notFound(string $param0) : TranslationContainer{ + public static function commands_give_item_notFound(TranslationContainer|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{ + public static function commands_give_success(TranslationContainer|string $param0, TranslationContainer|string $param1, TranslationContainer|string $param2) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_GIVE_SUCCESS, [ 0 => $param0, 1 => $param1, @@ -299,13 +299,13 @@ final class KnownTranslationFactory{ ]); } - public static function commands_give_tagError(string $param0) : TranslationContainer{ + public static function commands_give_tagError(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_GIVE_TAGERROR, [ 0 => $param0, ]); } - public static function commands_help_header(string $param0, string $param1) : TranslationContainer{ + public static function commands_help_header(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_HELP_HEADER, [ 0 => $param0, 1 => $param1, @@ -316,13 +316,13 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_HELP_USAGE, []); } - public static function commands_kick_success(string $param0) : TranslationContainer{ + public static function commands_kick_success(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_KICK_SUCCESS, [ 0 => $param0, ]); } - public static function commands_kick_success_reason(string $param0, string $param1) : TranslationContainer{ + public static function commands_kick_success_reason(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_KICK_SUCCESS_REASON, [ 0 => $param0, 1 => $param1, @@ -333,7 +333,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_KICK_USAGE, []); } - public static function commands_kill_successful(string $param0) : TranslationContainer{ + public static function commands_kill_successful(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_KILL_SUCCESSFUL, [ 0 => $param0, ]); @@ -343,14 +343,14 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_ME_USAGE, []); } - public static function commands_message_display_incoming(string $param0, string $param1) : TranslationContainer{ + public static function commands_message_display_incoming(TranslationContainer|string $param0, TranslationContainer|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{ + public static function commands_message_display_outgoing(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_MESSAGE_DISPLAY_OUTGOING, [ 0 => $param0, 1 => $param1, @@ -365,7 +365,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_MESSAGE_USAGE, []); } - public static function commands_op_success(string $param0) : TranslationContainer{ + public static function commands_op_success(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_OP_SUCCESS, [ 0 => $param0, ]); @@ -375,20 +375,20 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_OP_USAGE, []); } - public static function commands_particle_notFound(string $param0) : TranslationContainer{ + public static function commands_particle_notFound(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_PARTICLE_NOTFOUND, [ 0 => $param0, ]); } - public static function commands_particle_success(string $param0, string $param1) : TranslationContainer{ + public static function commands_particle_success(TranslationContainer|string $param0, TranslationContainer|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{ + public static function commands_players_list(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_PLAYERS_LIST, [ 0 => $param0, 1 => $param1, @@ -431,7 +431,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_SAY_USAGE, []); } - public static function commands_seed_success(string $param0) : TranslationContainer{ + public static function commands_seed_success(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_SEED_SUCCESS, [ 0 => $param0, ]); @@ -441,7 +441,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_SEED_USAGE, []); } - public static function commands_setworldspawn_success(string $param0, string $param1, string $param2) : TranslationContainer{ + public static function commands_setworldspawn_success(TranslationContainer|string $param0, TranslationContainer|string $param1, TranslationContainer|string $param2) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_SETWORLDSPAWN_SUCCESS, [ 0 => $param0, 1 => $param1, @@ -453,7 +453,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_SETWORLDSPAWN_USAGE, []); } - public static function commands_spawnpoint_success(string $param0, string $param1, string $param2, string $param3) : TranslationContainer{ + public static function commands_spawnpoint_success(TranslationContainer|string $param0, TranslationContainer|string $param1, TranslationContainer|string $param2, TranslationContainer|string $param3) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_SPAWNPOINT_SUCCESS, [ 0 => $param0, 1 => $param1, @@ -474,19 +474,19 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_STOP_USAGE, []); } - public static function commands_time_added(string $param0) : TranslationContainer{ + public static function commands_time_added(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_TIME_ADDED, [ 0 => $param0, ]); } - public static function commands_time_query(string $param0) : TranslationContainer{ + public static function commands_time_query(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_TIME_QUERY, [ 0 => $param0, ]); } - public static function commands_time_set(string $param0) : TranslationContainer{ + public static function commands_time_set(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_TIME_SET, [ 0 => $param0, ]); @@ -500,14 +500,14 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_TITLE_USAGE, []); } - public static function commands_tp_success(string $param0, string $param1) : TranslationContainer{ + public static function commands_tp_success(TranslationContainer|string $param0, TranslationContainer|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{ + public static function commands_tp_success_coordinates(TranslationContainer|string $param0, TranslationContainer|string $param1, TranslationContainer|string $param2, TranslationContainer|string $param3) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_TP_SUCCESS_COORDINATES, [ 0 => $param0, 1 => $param1, @@ -520,7 +520,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_TP_USAGE, []); } - public static function commands_unban_success(string $param0) : TranslationContainer{ + public static function commands_unban_success(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_UNBAN_SUCCESS, [ 0 => $param0, ]); @@ -534,7 +534,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_UNBANIP_INVALID, []); } - public static function commands_unbanip_success(string $param0) : TranslationContainer{ + public static function commands_unbanip_success(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_UNBANIP_SUCCESS, [ 0 => $param0, ]); @@ -544,7 +544,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_UNBANIP_USAGE, []); } - public static function commands_whitelist_add_success(string $param0) : TranslationContainer{ + public static function commands_whitelist_add_success(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_ADD_SUCCESS, [ 0 => $param0, ]); @@ -562,7 +562,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_ENABLED, []); } - public static function commands_whitelist_list(string $param0, string $param1) : TranslationContainer{ + public static function commands_whitelist_list(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_LIST, [ 0 => $param0, 1 => $param1, @@ -573,7 +573,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_RELOADED, []); } - public static function commands_whitelist_remove_success(string $param0) : TranslationContainer{ + public static function commands_whitelist_remove_success(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_REMOVE_SUCCESS, [ 0 => $param0, ]); @@ -587,14 +587,14 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::COMMANDS_WHITELIST_USAGE, []); } - public static function death_attack_arrow(string $param0, string $param1) : TranslationContainer{ + public static function death_attack_arrow(TranslationContainer|string $param0, TranslationContainer|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{ + public static function death_attack_arrow_item(TranslationContainer|string $param0, TranslationContainer|string $param1, TranslationContainer|string $param2) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_ARROW_ITEM, [ 0 => $param0, 1 => $param1, @@ -602,94 +602,94 @@ final class KnownTranslationFactory{ ]); } - public static function death_attack_cactus(string $param0) : TranslationContainer{ + public static function death_attack_cactus(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_CACTUS, [ 0 => $param0, ]); } - public static function death_attack_drown(string $param0) : TranslationContainer{ + public static function death_attack_drown(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_DROWN, [ 0 => $param0, ]); } - public static function death_attack_explosion(string $param0) : TranslationContainer{ + public static function death_attack_explosion(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_EXPLOSION, [ 0 => $param0, ]); } - public static function death_attack_explosion_player(string $param0, string $param1) : TranslationContainer{ + public static function death_attack_explosion_player(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_EXPLOSION_PLAYER, [ 0 => $param0, 1 => $param1, ]); } - public static function death_attack_fall(string $param0) : TranslationContainer{ + public static function death_attack_fall(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_FALL, [ 0 => $param0, ]); } - public static function death_attack_generic(string $param0) : TranslationContainer{ + public static function death_attack_generic(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_GENERIC, [ 0 => $param0, ]); } - public static function death_attack_inFire(string $param0) : TranslationContainer{ + public static function death_attack_inFire(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_INFIRE, [ 0 => $param0, ]); } - public static function death_attack_inWall(string $param0) : TranslationContainer{ + public static function death_attack_inWall(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_INWALL, [ 0 => $param0, ]); } - public static function death_attack_lava(string $param0) : TranslationContainer{ + public static function death_attack_lava(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_LAVA, [ 0 => $param0, ]); } - public static function death_attack_magic(string $param0) : TranslationContainer{ + public static function death_attack_magic(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_MAGIC, [ 0 => $param0, ]); } - public static function death_attack_mob(string $param0, string $param1) : TranslationContainer{ + public static function death_attack_mob(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_MOB, [ 0 => $param0, 1 => $param1, ]); } - public static function death_attack_onFire(string $param0) : TranslationContainer{ + public static function death_attack_onFire(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_ONFIRE, [ 0 => $param0, ]); } - public static function death_attack_outOfWorld(string $param0) : TranslationContainer{ + public static function death_attack_outOfWorld(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_OUTOFWORLD, [ 0 => $param0, ]); } - public static function death_attack_player(string $param0, string $param1) : TranslationContainer{ + public static function death_attack_player(TranslationContainer|string $param0, TranslationContainer|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{ + public static function death_attack_player_item(TranslationContainer|string $param0, TranslationContainer|string $param1, TranslationContainer|string $param2) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_PLAYER_ITEM, [ 0 => $param0, 1 => $param1, @@ -697,13 +697,13 @@ final class KnownTranslationFactory{ ]); } - public static function death_attack_wither(string $param0) : TranslationContainer{ + public static function death_attack_wither(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::DEATH_ATTACK_WITHER, [ 0 => $param0, ]); } - public static function death_fell_accident_generic(string $param0) : TranslationContainer{ + public static function death_fell_accident_generic(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::DEATH_FELL_ACCIDENT_GENERIC, [ 0 => $param0, ]); @@ -785,7 +785,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::IP_GET, []); } - public static function ip_warning(string $EXTERNAL_IP, string $INTERNAL_IP) : TranslationContainer{ + public static function ip_warning(TranslationContainer|string $EXTERNAL_IP, TranslationContainer|string $INTERNAL_IP) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::IP_WARNING, [ "EXTERNAL_IP" => $EXTERNAL_IP, "INTERNAL_IP" => $INTERNAL_IP, @@ -796,13 +796,13 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::KICK_ADMIN, []); } - public static function kick_admin_reason(string $param0) : TranslationContainer{ + public static function kick_admin_reason(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::KICK_ADMIN_REASON, [ 0 => $param0, ]); } - public static function kick_reason_cheat(string $param0) : TranslationContainer{ + public static function kick_reason_cheat(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::KICK_REASON_CHEAT, [ 0 => $param0, ]); @@ -812,7 +812,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::LANGUAGE_NAME, []); } - public static function language_selected(string $param0, string $param1) : TranslationContainer{ + public static function language_selected(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::LANGUAGE_SELECTED, [ 0 => $param0, 1 => $param1, @@ -827,13 +827,13 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::MAX_PLAYERS, []); } - public static function multiplayer_player_joined(string $param0) : TranslationContainer{ + public static function multiplayer_player_joined(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::MULTIPLAYER_PLAYER_JOINED, [ 0 => $param0, ]); } - public static function multiplayer_player_left(string $param0) : TranslationContainer{ + public static function multiplayer_player_left(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::MULTIPLAYER_PLAYER_LEFT, [ 0 => $param0, ]); @@ -855,20 +855,20 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::OP_WHO, []); } - public static function pocketmine_command_alias_illegal(string $param0) : TranslationContainer{ + public static function pocketmine_command_alias_illegal(TranslationContainer|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{ + public static function pocketmine_command_alias_notFound(TranslationContainer|string $param0, TranslationContainer|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{ + public static function pocketmine_command_alias_recursive(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_ALIAS_RECURSIVE, [ 0 => $param0, 1 => $param1, @@ -915,7 +915,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_ENCHANT_DESCRIPTION, []); } - public static function pocketmine_command_exception(string $param0, string $param1, string $param2) : TranslationContainer{ + public static function pocketmine_command_exception(TranslationContainer|string $param0, TranslationContainer|string $param1, TranslationContainer|string $param2) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_EXCEPTION, [ 0 => $param0, 1 => $param1, @@ -983,7 +983,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_PLUGINS_DESCRIPTION, []); } - public static function pocketmine_command_plugins_success(string $param0, string $param1) : TranslationContainer{ + public static function pocketmine_command_plugins_success(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_PLUGINS_SUCCESS, [ 0 => $param0, 1 => $param1, @@ -1074,19 +1074,19 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_TIMINGSDISABLED, []); } - public static function pocketmine_command_timings_timingsRead(string $param0) : TranslationContainer{ + public static function pocketmine_command_timings_timingsRead(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_TIMINGSREAD, [ 0 => $param0, ]); } - public static function pocketmine_command_timings_timingsUpload(string $param0) : TranslationContainer{ + public static function pocketmine_command_timings_timingsUpload(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_TIMINGSUPLOAD, [ 0 => $param0, ]); } - public static function pocketmine_command_timings_timingsWrite(string $param0) : TranslationContainer{ + public static function pocketmine_command_timings_timingsWrite(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_TIMINGS_TIMINGSWRITE, [ 0 => $param0, ]); @@ -1124,7 +1124,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_VERSION_DESCRIPTION, []); } - public static function pocketmine_command_version_minecraftVersion(string $minecraftVersion, string $minecraftProtocolVersion) : TranslationContainer{ + public static function pocketmine_command_version_minecraftVersion(TranslationContainer|string $minecraftVersion, TranslationContainer|string $minecraftProtocolVersion) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_VERSION_MINECRAFTVERSION, [ "minecraftVersion" => $minecraftVersion, "minecraftProtocolVersion" => $minecraftProtocolVersion, @@ -1135,7 +1135,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_VERSION_NOSUCHPLUGIN, []); } - public static function pocketmine_command_version_operatingSystem(string $operatingSystemName) : TranslationContainer{ + public static function pocketmine_command_version_operatingSystem(TranslationContainer|string $operatingSystemName) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_VERSION_OPERATINGSYSTEM, [ "operatingSystemName" => $operatingSystemName, ]); @@ -1145,7 +1145,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_VERSION_PHPJITDISABLED, []); } - public static function pocketmine_command_version_phpJitEnabled(string $extraJitInfo) : TranslationContainer{ + public static function pocketmine_command_version_phpJitEnabled(TranslationContainer|string $extraJitInfo) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_VERSION_PHPJITENABLED, [ "extraJitInfo" => $extraJitInfo, ]); @@ -1155,25 +1155,25 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_VERSION_PHPJITNOTSUPPORTED, []); } - public static function pocketmine_command_version_phpJitStatus(string $jitStatus) : TranslationContainer{ + public static function pocketmine_command_version_phpJitStatus(TranslationContainer|string $jitStatus) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_VERSION_PHPJITSTATUS, [ "jitStatus" => $jitStatus, ]); } - public static function pocketmine_command_version_phpVersion(string $phpVersion) : TranslationContainer{ + public static function pocketmine_command_version_phpVersion(TranslationContainer|string $phpVersion) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_VERSION_PHPVERSION, [ "phpVersion" => $phpVersion, ]); } - public static function pocketmine_command_version_serverSoftwareName(string $serverSoftwareName) : TranslationContainer{ + public static function pocketmine_command_version_serverSoftwareName(TranslationContainer|string $serverSoftwareName) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_VERSION_SERVERSOFTWARENAME, [ "serverSoftwareName" => $serverSoftwareName, ]); } - public static function pocketmine_command_version_serverSoftwareVersion(string $serverSoftwareVersion, string $serverGitHash) : TranslationContainer{ + public static function pocketmine_command_version_serverSoftwareVersion(TranslationContainer|string $serverSoftwareVersion, TranslationContainer|string $serverGitHash) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_VERSION_SERVERSOFTWAREVERSION, [ "serverSoftwareVersion" => $serverSoftwareVersion, "serverGitHash" => $serverGitHash, @@ -1188,7 +1188,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_COMMAND_WHITELIST_DESCRIPTION, []); } - public static function pocketmine_crash_archive(string $param0, string $param1) : TranslationContainer{ + public static function pocketmine_crash_archive(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_CRASH_ARCHIVE, [ 0 => $param0, 1 => $param1, @@ -1199,37 +1199,37 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_CRASH_CREATE, []); } - public static function pocketmine_crash_error(string $param0) : TranslationContainer{ + public static function pocketmine_crash_error(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_CRASH_ERROR, [ 0 => $param0, ]); } - public static function pocketmine_crash_submit(string $param0) : TranslationContainer{ + public static function pocketmine_crash_submit(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_CRASH_SUBMIT, [ 0 => $param0, ]); } - public static function pocketmine_data_playerCorrupted(string $param0) : TranslationContainer{ + public static function pocketmine_data_playerCorrupted(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DATA_PLAYERCORRUPTED, [ 0 => $param0, ]); } - public static function pocketmine_data_playerNotFound(string $param0) : TranslationContainer{ + public static function pocketmine_data_playerNotFound(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DATA_PLAYERNOTFOUND, [ 0 => $param0, ]); } - public static function pocketmine_data_playerOld(string $param0) : TranslationContainer{ + public static function pocketmine_data_playerOld(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DATA_PLAYEROLD, [ 0 => $param0, ]); } - public static function pocketmine_data_saveError(string $param0, string $param1) : TranslationContainer{ + public static function pocketmine_data_saveError(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DATA_SAVEERROR, [ 0 => $param0, 1 => $param1, @@ -1240,13 +1240,13 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DEBUG_ENABLE, []); } - public static function pocketmine_disconnect_incompatibleProtocol(string $param0) : TranslationContainer{ + public static function pocketmine_disconnect_incompatibleProtocol(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DISCONNECT_INCOMPATIBLEPROTOCOL, [ 0 => $param0, ]); } - public static function pocketmine_disconnect_invalidSession(string $param0) : TranslationContainer{ + public static function pocketmine_disconnect_invalidSession(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DISCONNECT_INVALIDSESSION, [ 0 => $param0, ]); @@ -1268,19 +1268,19 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_DISCONNECT_INVALIDSESSION_TOOLATE, []); } - public static function pocketmine_level_ambiguousFormat(string $param0) : TranslationContainer{ + public static function pocketmine_level_ambiguousFormat(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_AMBIGUOUSFORMAT, [ 0 => $param0, ]); } - public static function pocketmine_level_backgroundGeneration(string $param0) : TranslationContainer{ + public static function pocketmine_level_backgroundGeneration(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_BACKGROUNDGENERATION, [ 0 => $param0, ]); } - public static function pocketmine_level_badDefaultFormat(string $param0) : TranslationContainer{ + public static function pocketmine_level_badDefaultFormat(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_BADDEFAULTFORMAT, [ 0 => $param0, ]); @@ -1290,27 +1290,27 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_DEFAULTERROR, []); } - public static function pocketmine_level_generationError(string $param0, string $param1) : TranslationContainer{ + public static function pocketmine_level_generationError(TranslationContainer|string $param0, TranslationContainer|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{ + public static function pocketmine_level_loadError(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_LOADERROR, [ 0 => $param0, 1 => $param1, ]); } - public static function pocketmine_level_notFound(string $param0) : TranslationContainer{ + public static function pocketmine_level_notFound(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_NOTFOUND, [ 0 => $param0, ]); } - public static function pocketmine_level_preparing(string $param0) : TranslationContainer{ + public static function pocketmine_level_preparing(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_PREPARING, [ 0 => $param0, ]); @@ -1320,25 +1320,25 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_UNKNOWNFORMAT, []); } - public static function pocketmine_level_unloading(string $param0) : TranslationContainer{ + public static function pocketmine_level_unloading(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_LEVEL_UNLOADING, [ 0 => $param0, ]); } - public static function pocketmine_player_invalidEntity(string $param0) : TranslationContainer{ + public static function pocketmine_player_invalidEntity(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLAYER_INVALIDENTITY, [ 0 => $param0, ]); } - public static function pocketmine_player_invalidMove(string $param0) : TranslationContainer{ + public static function pocketmine_player_invalidMove(TranslationContainer|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{ + public static function pocketmine_player_logIn(TranslationContainer|string $param0, TranslationContainer|string $param1, TranslationContainer|string $param2, TranslationContainer|string $param3, TranslationContainer|string $param4, TranslationContainer|string $param5, TranslationContainer|string $param6, TranslationContainer|string $param7) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLAYER_LOGIN, [ 0 => $param0, 1 => $param1, @@ -1351,7 +1351,7 @@ final class KnownTranslationFactory{ ]); } - public static function pocketmine_player_logOut(string $param0, string $param1, string $param2, string $param3) : TranslationContainer{ + public static function pocketmine_player_logOut(TranslationContainer|string $param0, TranslationContainer|string $param1, TranslationContainer|string $param2, TranslationContainer|string $param3) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLAYER_LOGOUT, [ 0 => $param0, 1 => $param1, @@ -1360,14 +1360,14 @@ final class KnownTranslationFactory{ ]); } - public static function pocketmine_plugin_aliasError(string $param0, string $param1) : TranslationContainer{ + public static function pocketmine_plugin_aliasError(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_ALIASERROR, [ 0 => $param0, 1 => $param1, ]); } - public static function pocketmine_plugin_ambiguousMinAPI(string $param0) : TranslationContainer{ + public static function pocketmine_plugin_ambiguousMinAPI(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_AMBIGUOUSMINAPI, [ 0 => $param0, ]); @@ -1377,14 +1377,14 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_CIRCULARDEPENDENCY, []); } - public static function pocketmine_plugin_commandError(string $param0, string $param1) : TranslationContainer{ + public static function pocketmine_plugin_commandError(TranslationContainer|string $param0, TranslationContainer|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{ + public static function pocketmine_plugin_deprecatedEvent(TranslationContainer|string $param0, TranslationContainer|string $param1, TranslationContainer|string $param2) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_DEPRECATEDEVENT, [ 0 => $param0, 1 => $param1, @@ -1392,25 +1392,25 @@ final class KnownTranslationFactory{ ]); } - public static function pocketmine_plugin_disable(string $param0) : TranslationContainer{ + public static function pocketmine_plugin_disable(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_DISABLE, [ 0 => $param0, ]); } - public static function pocketmine_plugin_duplicateError(string $param0) : TranslationContainer{ + public static function pocketmine_plugin_duplicateError(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_DUPLICATEERROR, [ 0 => $param0, ]); } - public static function pocketmine_plugin_enable(string $param0) : TranslationContainer{ + public static function pocketmine_plugin_enable(TranslationContainer|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{ + public static function pocketmine_plugin_fileError(TranslationContainer|string $param0, TranslationContainer|string $param1, TranslationContainer|string $param2) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_FILEERROR, [ 0 => $param0, 1 => $param1, @@ -1418,43 +1418,43 @@ final class KnownTranslationFactory{ ]); } - public static function pocketmine_plugin_genericLoadError(string $param0) : TranslationContainer{ + public static function pocketmine_plugin_genericLoadError(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_GENERICLOADERROR, [ 0 => $param0, ]); } - public static function pocketmine_plugin_incompatibleAPI(string $param0) : TranslationContainer{ + public static function pocketmine_plugin_incompatibleAPI(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_INCOMPATIBLEAPI, [ 0 => $param0, ]); } - public static function pocketmine_plugin_incompatibleOS(string $param0) : TranslationContainer{ + public static function pocketmine_plugin_incompatibleOS(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_INCOMPATIBLEOS, [ 0 => $param0, ]); } - public static function pocketmine_plugin_incompatiblePhpVersion(string $param0) : TranslationContainer{ + public static function pocketmine_plugin_incompatiblePhpVersion(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_INCOMPATIBLEPHPVERSION, [ 0 => $param0, ]); } - public static function pocketmine_plugin_incompatibleProtocol(string $param0) : TranslationContainer{ + public static function pocketmine_plugin_incompatibleProtocol(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_INCOMPATIBLEPROTOCOL, [ 0 => $param0, ]); } - public static function pocketmine_plugin_load(string $param0) : TranslationContainer{ + public static function pocketmine_plugin_load(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_LOAD, [ 0 => $param0, ]); } - public static function pocketmine_plugin_loadError(string $param0, string $param1) : TranslationContainer{ + public static function pocketmine_plugin_loadError(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_LOADERROR, [ 0 => $param0, 1 => $param1, @@ -1465,13 +1465,13 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_RESTRICTEDNAME, []); } - public static function pocketmine_plugin_spacesDiscouraged(string $param0) : TranslationContainer{ + public static function pocketmine_plugin_spacesDiscouraged(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_SPACESDISCOURAGED, [ 0 => $param0, ]); } - public static function pocketmine_plugin_unknownDependency(string $param0) : TranslationContainer{ + public static function pocketmine_plugin_unknownDependency(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGIN_UNKNOWNDEPENDENCY, [ 0 => $param0, ]); @@ -1481,7 +1481,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SAVE_START, []); } - public static function pocketmine_save_success(string $param0) : TranslationContainer{ + public static function pocketmine_save_success(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SAVE_SUCCESS, [ 0 => $param0, ]); @@ -1507,13 +1507,13 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_AUTHWARNING, []); } - public static function pocketmine_server_defaultGameMode(string $param0) : TranslationContainer{ + public static function pocketmine_server_defaultGameMode(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_DEFAULTGAMEMODE, [ 0 => $param0, ]); } - public static function pocketmine_server_devBuild_error1(string $param0) : TranslationContainer{ + public static function pocketmine_server_devBuild_error1(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_ERROR1, [ 0 => $param0, ]); @@ -1527,19 +1527,19 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_ERROR3, []); } - public static function pocketmine_server_devBuild_error4(string $param0) : TranslationContainer{ + public static function pocketmine_server_devBuild_error4(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_ERROR4, [ 0 => $param0, ]); } - public static function pocketmine_server_devBuild_error5(string $param0) : TranslationContainer{ + public static function pocketmine_server_devBuild_error5(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_ERROR5, [ 0 => $param0, ]); } - public static function pocketmine_server_devBuild_warning1(string $param0) : TranslationContainer{ + public static function pocketmine_server_devBuild_warning1(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_WARNING1, [ 0 => $param0, ]); @@ -1553,20 +1553,20 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_DEVBUILD_WARNING3, []); } - public static function pocketmine_server_donate(string $param0) : TranslationContainer{ + public static function pocketmine_server_donate(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_DONATE, [ 0 => $param0, ]); } - public static function pocketmine_server_info(string $param0, string $param1) : TranslationContainer{ + public static function pocketmine_server_info(TranslationContainer|string $param0, TranslationContainer|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{ + public static function pocketmine_server_info_extended(TranslationContainer|string $param0, TranslationContainer|string $param1, TranslationContainer|string $param2, TranslationContainer|string $param3) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_INFO_EXTENDED, [ 0 => $param0, 1 => $param1, @@ -1575,33 +1575,33 @@ final class KnownTranslationFactory{ ]); } - public static function pocketmine_server_license(string $param0) : TranslationContainer{ + public static function pocketmine_server_license(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_LICENSE, [ 0 => $param0, ]); } - public static function pocketmine_server_networkStart(string $param0, string $param1) : TranslationContainer{ + public static function pocketmine_server_networkStart(TranslationContainer|string $param0, TranslationContainer|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{ + public static function pocketmine_server_query_running(TranslationContainer|string $param0, TranslationContainer|string $param1) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_QUERY_RUNNING, [ 0 => $param0, 1 => $param1, ]); } - public static function pocketmine_server_start(string $param0) : TranslationContainer{ + public static function pocketmine_server_start(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_START, [ 0 => $param0, ]); } - public static function pocketmine_server_startFinished(string $param0) : TranslationContainer{ + public static function pocketmine_server_startFinished(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_SERVER_STARTFINISHED, [ 0 => $param0, ]); @@ -1615,7 +1615,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_PLUGINS, []); } - public static function pocketmine_will_start(string $param0) : TranslationContainer{ + public static function pocketmine_will_start(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::POCKETMINE_WILL_START, [ 0 => $param0, ]); @@ -1765,7 +1765,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::TILE_BED_TOOFAR, []); } - public static function welcome_to_pocketmine(string $param0) : TranslationContainer{ + public static function welcome_to_pocketmine(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::WELCOME_TO_POCKETMINE, [ 0 => $param0, ]); @@ -1787,7 +1787,7 @@ final class KnownTranslationFactory{ return new TranslationContainer(KnownTranslationKeys::YOU_HAVE_FINISHED, []); } - public static function you_have_to_accept_the_license(string $param0) : TranslationContainer{ + public static function you_have_to_accept_the_license(TranslationContainer|string $param0) : TranslationContainer{ return new TranslationContainer(KnownTranslationKeys::YOU_HAVE_TO_ACCEPT_THE_LICENSE, [ 0 => $param0, ]); diff --git a/src/lang/Language.php b/src/lang/Language.php index 56f349bfa..ec95b1905 100644 --- a/src/lang/Language.php +++ b/src/lang/Language.php @@ -130,14 +130,15 @@ class Language{ } /** - * @param (float|int|string)[] $params + * @param (float|int|string|TranslationContainer)[] $params */ public function translateString(string $str, array $params = [], ?string $onlyPrefix = null) : string{ $baseText = $this->get($str); $baseText = $this->parseTranslation(($onlyPrefix === null or strpos($str, $onlyPrefix) === 0) ? $baseText : $str, $onlyPrefix); foreach($params as $i => $p){ - $baseText = str_replace("{%$i}", $this->parseTranslation((string) $p), $baseText); + $replacement = $p instanceof TranslationContainer ? $this->translate($p) : $this->parseTranslation((string) $p); + $baseText = str_replace("{%$i}", $replacement, $baseText); } return $baseText; @@ -148,7 +149,8 @@ class Language{ $baseText = $this->parseTranslation($baseText ?? $c->getText()); foreach($c->getParameters() as $i => $p){ - $baseText = str_replace("{%$i}", $this->parseTranslation($p), $baseText); + $replacement = $p instanceof TranslationContainer ? $this->translate($p) : $this->parseTranslation($p); + $baseText = str_replace("{%$i}", $replacement, $baseText); } return $baseText; diff --git a/src/lang/TranslationContainer.php b/src/lang/TranslationContainer.php index 4780535b4..1b51f11ef 100644 --- a/src/lang/TranslationContainer.php +++ b/src/lang/TranslationContainer.php @@ -27,17 +27,21 @@ final class TranslationContainer{ /** @var string $text */ protected $text; - /** @var string[] $params */ + /** @var string[]|TranslationContainer[] $params */ protected $params = []; /** - * @param (float|int|string)[] $params + * @param (float|int|string|TranslationContainer)[] $params */ public function __construct(string $text, array $params = []){ $this->text = $text; - foreach($params as $k => $str){ - $this->params[$k] = (string) $str; + foreach($params as $k => $param){ + if(!($param instanceof TranslationContainer)){ + $this->params[$k] = (string) $param; + }else{ + $this->params[$k] = $param; + } } } @@ -46,13 +50,13 @@ final class TranslationContainer{ } /** - * @return string[] + * @return string[]|TranslationContainer[] */ public function getParameters() : array{ return $this->params; } - public function getParameter(int|string $i) : ?string{ + public function getParameter(int|string $i) : TranslationContainer|string|null{ return $this->params[$i] ?? null; } diff --git a/src/player/Player.php b/src/player/Player.php index be5fec6c3..8f423c529 100644 --- a/src/player/Player.php +++ b/src/player/Player.php @@ -113,6 +113,7 @@ use pocketmine\world\sound\Sound; use pocketmine\world\World; use Ramsey\Uuid\UuidInterface; use function abs; +use function array_map; use function assert; use function count; use function explode; @@ -1781,9 +1782,11 @@ class Player extends Human implements CommandSender, ChunkListener, IPlayer{ } /** - * @param string[] $parameters + * @param string[]|TranslationContainer[] $parameters */ public function sendTranslation(string $message, array $parameters = []) : void{ + //we can't send nested translations to the client, so make sure they are always pre-translated by the server + $parameters = array_map(fn(string|TranslationContainer $p) => $p instanceof TranslationContainer ? $this->getLanguage()->translate($p) : $p, $parameters); if(!$this->server->isLanguageForced()){ foreach($parameters as $i => $p){ $parameters[$i] = $this->getLanguage()->translateString($p, [], "pocketmine."); diff --git a/src/plugin/PluginManager.php b/src/plugin/PluginManager.php index 695a38ab7..425b28e34 100644 --- a/src/plugin/PluginManager.php +++ b/src/plugin/PluginManager.php @@ -257,7 +257,7 @@ 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()->translate(KnownTranslationFactory::pocketmine_plugin_loadError($name, "%" . KnownTranslationKeys::POCKETMINE_PLUGIN_RESTRICTEDNAME))); + $this->server->getLogger()->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_loadError($name, KnownTranslationFactory::pocketmine_plugin_restrictedName()))); continue; } if(strpos($name, " ") !== false){ @@ -272,7 +272,7 @@ class PluginManager{ if(!ApiVersion::isCompatible($this->server->getApiVersion(), $description->getCompatibleApis())){ $this->server->getLogger()->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_loadError( $name, - $this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_incompatibleAPI(implode(", ", $description->getCompatibleApis()))) + KnownTranslationFactory::pocketmine_plugin_incompatibleAPI(implode(", ", $description->getCompatibleApis())) ))); continue; } @@ -280,7 +280,7 @@ class PluginManager{ if(count($ambiguousVersions) > 0){ $this->server->getLogger()->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_loadError( $name, - $this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_ambiguousMinAPI(implode(", ", $ambiguousVersions))) + KnownTranslationFactory::pocketmine_plugin_ambiguousMinAPI(implode(", ", $ambiguousVersions)) ))); continue; } @@ -288,7 +288,7 @@ class PluginManager{ if(count($description->getCompatibleOperatingSystems()) > 0 and !in_array(Utils::getOS(), $description->getCompatibleOperatingSystems(), true)) { $this->server->getLogger()->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_loadError( $name, - $this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_incompatibleOS(implode(", ", $description->getCompatibleOperatingSystems()))) + KnownTranslationFactory::pocketmine_plugin_incompatibleOS(implode(", ", $description->getCompatibleOperatingSystems())) ))); continue; } @@ -298,7 +298,7 @@ class PluginManager{ if(count(array_intersect($pluginMcpeProtocols, $serverMcpeProtocols)) === 0){ $this->server->getLogger()->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_loadError( $name, - $this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_incompatibleProtocol(implode(", ", $pluginMcpeProtocols))) + KnownTranslationFactory::pocketmine_plugin_incompatibleProtocol(implode(", ", $pluginMcpeProtocols)) ))); continue; } @@ -336,7 +336,7 @@ class PluginManager{ }elseif(!isset($plugins[$dependency])){ $this->server->getLogger()->critical($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_loadError( $name, - $this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_unknownDependency($dependency)) + KnownTranslationFactory::pocketmine_plugin_unknownDependency($dependency) ))); unset($plugins[$name]); continue 2; @@ -381,7 +381,7 @@ class PluginManager{ if($loadedThisLoop === 0){ //No plugins loaded :( foreach($plugins as $name => $file){ - $this->server->getLogger()->critical($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_loadError($name, "%" . KnownTranslationKeys::POCKETMINE_PLUGIN_CIRCULARDEPENDENCY))); + $this->server->getLogger()->critical($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_plugin_loadError($name, KnownTranslationFactory::pocketmine_plugin_circularDependency()))); } $plugins = []; } diff --git a/src/world/WorldManager.php b/src/world/WorldManager.php index 45a57e3f7..652f4684a 100644 --- a/src/world/WorldManager.php +++ b/src/world/WorldManager.php @@ -196,9 +196,9 @@ class WorldManager{ $this->server->getLogger()->error($this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_level_loadError( $name, count($providers) === 0 ? - $this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_level_unknownFormat()) : - $this->server->getLanguage()->translate(KnownTranslationFactory::pocketmine_level_ambiguousFormat(implode(", ", array_keys($providers))) - )))); + KnownTranslationFactory::pocketmine_level_unknownFormat() : + KnownTranslationFactory::pocketmine_level_ambiguousFormat(implode(", ", array_keys($providers))) + ))); return false; } $providerClass = array_shift($providers);