diff --git a/src/network/mcpe/NetworkSession.php b/src/network/mcpe/NetworkSession.php index ca4ad258a..7d5c4cbd3 100644 --- a/src/network/mcpe/NetworkSession.php +++ b/src/network/mcpe/NetworkSession.php @@ -933,9 +933,9 @@ class NetworkSession{ public function onChatMessage(Translatable|string $message) : void{ if($message instanceof Translatable){ - //we can't send nested translations to the client, so make sure they are always pre-translated by the server $language = $this->player->getLanguage(); if(!$this->server->isLanguageForced()){ + //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|Translatable $p) => $p instanceof Translatable ? $language->translate($p) : $p, $message->getParameters()); $this->sendDataPacket(TextPacket::translation($language->translateString($message->getText(), $parameters, "pocketmine."), $parameters)); }else{ diff --git a/src/network/mcpe/handler/DeathPacketHandler.php b/src/network/mcpe/handler/DeathPacketHandler.php index f1d887100..6347d8f65 100644 --- a/src/network/mcpe/handler/DeathPacketHandler.php +++ b/src/network/mcpe/handler/DeathPacketHandler.php @@ -52,9 +52,9 @@ class DeathPacketHandler extends PacketHandler{ /** @var string[] $parameters */ $parameters = []; if($this->deathMessage instanceof Translatable){ - //we can't send nested translations to the client, so make sure they are always pre-translated by the server $language = $this->player->getLanguage(); if(!$this->player->getServer()->isLanguageForced()){ + //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|Translatable $p) => $p instanceof Translatable ? $language->translate($p) : $p, $this->deathMessage->getParameters()); $message = $language->translateString($this->deathMessage->getText(), $parameters, "pocketmine."); }else{