Scrap TextContainer, make TranslationContainer immutable

TextContainer provided zero real value as a base of TranslationContainer, given that it required its own logic to be handled wherever accepted. As such, it's no better than a simple string.
Removing it also allows fixing an ambiguity when embedding translations inside other translations, allowing it to be made immutable.
This commit is contained in:
Dylan K. Taylor
2020-02-08 13:38:02 +00:00
parent 2375e9519d
commit 4c51f1dda3
11 changed files with 53 additions and 104 deletions

View File

@ -30,7 +30,6 @@ use pocketmine\event\entity\EntityDamageByEntityEvent;
use pocketmine\event\entity\EntityDamageEvent;
use pocketmine\event\entity\EntityDeathEvent;
use pocketmine\item\Item;
use pocketmine\lang\TextContainer;
use pocketmine\lang\TranslationContainer;
use pocketmine\player\Player;
@ -38,14 +37,14 @@ class PlayerDeathEvent extends EntityDeathEvent{
/** @var Player */
protected $entity;
/** @var TextContainer|string */
/** @var TranslationContainer|string */
private $deathMessage;
/** @var bool */
private $keepInventory = false;
/**
* @param Item[] $drops
* @param string|TextContainer|null $deathMessage Null will cause the default vanilla message to be used
* @param Item[] $drops
* @param string|TranslationContainer|null $deathMessage Null will cause the default vanilla message to be used
*/
public function __construct(Player $entity, array $drops, int $xp, $deathMessage){
parent::__construct($entity, $drops, $xp);
@ -64,14 +63,14 @@ class PlayerDeathEvent extends EntityDeathEvent{
}
/**
* @return TextContainer|string
* @return TranslationContainer|string
*/
public function getDeathMessage(){
return $this->deathMessage;
}
/**
* @param TextContainer|string $deathMessage
* @param TranslationContainer|string $deathMessage
*/
public function setDeathMessage($deathMessage) : void{
$this->deathMessage = $deathMessage;

View File

@ -23,7 +23,7 @@ declare(strict_types=1);
namespace pocketmine\event\player;
use pocketmine\lang\TextContainer;
use pocketmine\lang\TranslationContainer;
use pocketmine\player\Player;
/**
@ -34,13 +34,13 @@ use pocketmine\player\Player;
* @see PlayerLoginEvent
*/
class PlayerJoinEvent extends PlayerEvent{
/** @var string|TextContainer */
/** @var string|TranslationContainer */
protected $joinMessage;
/**
* PlayerJoinEvent constructor.
*
* @param TextContainer|string $joinMessage
* @param TranslationContainer|string $joinMessage
*/
public function __construct(Player $player, $joinMessage){
$this->player = $player;
@ -48,14 +48,14 @@ class PlayerJoinEvent extends PlayerEvent{
}
/**
* @param string|TextContainer $joinMessage
* @param string|TranslationContainer $joinMessage
*/
public function setJoinMessage($joinMessage) : void{
$this->joinMessage = $joinMessage;
}
/**
* @return string|TextContainer
* @return string|TranslationContainer
*/
public function getJoinMessage(){
return $this->joinMessage;

View File

@ -25,7 +25,7 @@ namespace pocketmine\event\player;
use pocketmine\event\Cancellable;
use pocketmine\event\CancellableTrait;
use pocketmine\lang\TextContainer;
use pocketmine\lang\TranslationContainer;
use pocketmine\player\Player;
/**
@ -34,7 +34,7 @@ use pocketmine\player\Player;
class PlayerKickEvent extends PlayerEvent implements Cancellable{
use CancellableTrait;
/** @var TextContainer|string */
/** @var TranslationContainer|string */
protected $quitMessage;
/** @var string */
@ -43,7 +43,7 @@ class PlayerKickEvent extends PlayerEvent implements Cancellable{
/**
* PlayerKickEvent constructor.
*
* @param TextContainer|string $quitMessage
* @param TranslationContainer|string $quitMessage
*/
public function __construct(Player $player, string $reason, $quitMessage){
$this->player = $player;
@ -60,14 +60,14 @@ class PlayerKickEvent extends PlayerEvent implements Cancellable{
}
/**
* @param TextContainer|string $quitMessage
* @param TranslationContainer|string $quitMessage
*/
public function setQuitMessage($quitMessage) : void{
$this->quitMessage = $quitMessage;
}
/**
* @return TextContainer|string
* @return TranslationContainer|string
*/
public function getQuitMessage(){
return $this->quitMessage;