Added base translation system

This commit is contained in:
Shoghi Cervantes
2015-04-11 01:32:08 +02:00
parent 3224cd7dc5
commit 0c041ebca3
38 changed files with 646 additions and 132 deletions

View File

@@ -23,6 +23,7 @@ namespace pocketmine\command\defaults;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\Player;
use pocketmine\utils\TextFormat;
@@ -43,7 +44,7 @@ class BanCommand extends VanillaCommand{
}
if(count($args) === 0){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return false;
}

View File

@@ -23,6 +23,7 @@ namespace pocketmine\command\defaults;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\Player;
use pocketmine\utils\TextFormat;
@@ -43,7 +44,7 @@ class BanIpCommand extends VanillaCommand{
}
if(count($args) === 0){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return false;
}
@@ -57,7 +58,7 @@ class BanIpCommand extends VanillaCommand{
if(($player = $sender->getServer()->getPlayer($value)) instanceof Player){
$this->processIPBan($player->getAddress(), $sender, $reason);
}else{
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return false;
}

View File

@@ -22,6 +22,7 @@
namespace pocketmine\command\defaults;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\Server;
use pocketmine\utils\TextFormat;
@@ -42,7 +43,7 @@ class DefaultGamemodeCommand extends VanillaCommand{
}
if(count($args) === 0){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return false;
}
@@ -51,7 +52,7 @@ class DefaultGamemodeCommand extends VanillaCommand{
if($gameMode !== -1){
$sender->getServer()->setConfigInt("gamemode", $gameMode);
$sender->sendMessage("Default game mode set to " . strtolower(Server::getGamemodeString($gameMode)));
$sender->sendMessage(new TranslationContainer("commands.defaultgamemode.success", [Server::getGamemodeString($gameMode)]));
}else{
$sender->sendMessage("Unknown game mode");
}

View File

@@ -23,6 +23,7 @@ namespace pocketmine\command\defaults;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\Player;
use pocketmine\utils\TextFormat;
@@ -43,7 +44,7 @@ class DeopCommand extends VanillaCommand{
}
if(count($args) === 0){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return false;
}

View File

@@ -22,6 +22,7 @@
namespace pocketmine\command\defaults;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\network\protocol\SetDifficultyPacket;
use pocketmine\Server;
use pocketmine\utils\TextFormat;
@@ -43,7 +44,7 @@ class DifficultyCommand extends VanillaCommand{
}
if(count($args) !== 1){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return false;
}

View File

@@ -25,6 +25,7 @@ use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\entity\Effect;
use pocketmine\entity\InstantEffect;
use pocketmine\event\TranslationContainer;
use pocketmine\utils\TextFormat;
class EffectCommand extends VanillaCommand{
@@ -33,7 +34,7 @@ class EffectCommand extends VanillaCommand{
parent::__construct(
$name,
"Adds/Removes effects on players",
"/effect <player> <effect|clear> [seconds] [amplifier]"
"%commands.effect.usage"
);
$this->setPermission("pocketmine.command.effect");
}
@@ -44,7 +45,7 @@ class EffectCommand extends VanillaCommand{
}
if(count($args) < 2){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return true;
}
@@ -61,7 +62,7 @@ class EffectCommand extends VanillaCommand{
$player->removeEffect($effect->getId());
}
$sender->sendMessage("Took all effects from " . $player->getDisplayName());
$sender->sendMessage(new TranslationContainer("commands.effect.success.removed.all", [$player->getDisplayName()]));
return true;
}
@@ -72,7 +73,7 @@ class EffectCommand extends VanillaCommand{
}
if($effect === null){
$sender->sendMessage(TextFormat::RED . "Effect {$args[1]} not found");
$sender->sendMessage(new TranslationContainer(TextFormat::RED . "%commands.effect.notFound", [(string) $args[1]]));
return true;
}
@@ -92,19 +93,30 @@ class EffectCommand extends VanillaCommand{
$amplification = (int) $args[3];
}
if(count($args) >= 5){
$v = strtolower($args[4]);
if($v === "on" or $v === "true" or $v === "t" or $v === "1"){
$effect->setVisible(false);
}
}
if($duration === 0){
if(!$player->hasEffect($effect->getId())){
$sender->sendMessage("Couldn't take ". $effect->getName() ." from ". $player->getDisplayName());
if(count($player->getEffects()) === 0){
$sender->sendMessage(new TranslationContainer("commands.effect.failure.notActive.all", [$player->getDisplayName()]));
}else{
$sender->sendMessage(new TranslationContainer("commands.effect.failure.notActive", [$effect->getName(), $player->getDisplayName()]));
}
return true;
}
$player->removeEffect($effect->getId());
$sender->sendMessage("Took ". $effect->getName() ." from ". $player->getDisplayName());
$sender->sendMessage(new TranslationContainer("commands.effect.success.removed", [$effect->getName(), $player->getDisplayName()]));
}else{
$effect->setDuration($duration)->setAmplifier($amplification);
$player->addEffect($effect);
self::broadcastCommandMessage($sender, "Given ". $effect->getName() ." (ID ". $effect->getId().") * ". $effect->getAmplifier()." to ". $player->getDisplayName() ." for ". ($effect->getDuration() / 20) ." seconds");
self::broadcastCommandMessage($sender, new TranslationContainer("%commands.effect.success", [$effect->getName(), $effect->getId(), $effect->getAmplifier(), $player->getDisplayName(), $effect->getDuration() / 20]));
}

View File

@@ -23,6 +23,7 @@ namespace pocketmine\command\defaults;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\Player;
use pocketmine\Server;
use pocketmine\utils\TextFormat;
@@ -44,7 +45,7 @@ class GamemodeCommand extends VanillaCommand{
}
if(count($args) === 0){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return false;
}
@@ -66,7 +67,7 @@ class GamemodeCommand extends VanillaCommand{
return true;
}
}elseif(!($sender instanceof Player)){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return true;
}

View File

@@ -23,6 +23,7 @@ namespace pocketmine\command\defaults;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\item\Item;
use pocketmine\Player;
use pocketmine\utils\TextFormat;
@@ -33,7 +34,7 @@ class GiveCommand extends VanillaCommand{
parent::__construct(
$name,
"Gives the specified player a certain amount of items",
"/give <player> <item[:damage]> [amount]"
"/give <player> <item[:damage]> [amount]" //No translation :(
);
$this->setPermission("pocketmine.command.give");
}
@@ -44,7 +45,7 @@ class GiveCommand extends VanillaCommand{
}
if(count($args) < 2){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return true;
}
@@ -59,13 +60,8 @@ class GiveCommand extends VanillaCommand{
}
if($player instanceof Player){
if(($player->getGamemode() & 0x01) === 0x01){
$sender->sendMessage(TextFormat::RED . "Player is in creative mode");
return true;
}
if($item->getId() == 0){
$sender->sendMessage(TextFormat::RED . "There is no item called " . $args[1] . ".");
if($item->getId() === 0){
$sender->sendMessage(new TranslationContainer(TextFormat::RED . "%commands.give.item.notFound", [$args[1]]));
return true;
}
@@ -78,8 +74,11 @@ class GiveCommand extends VanillaCommand{
return true;
}
Command::broadcastCommandMessage($sender, "Gave " . $player->getName() . " " . $item->getCount() . " of " . $item->getName() . " (" . $item->getId() . ":" . $item->getDamage() . ")");
Command::broadcastCommandMessage($sender, new TranslationContainer("%commands.give.success", [
$item->getName() . " (" . $item->getId() . ":" . $item->getDamage() . ")",
(string) $item->getCount(),
$player->getName()
]));
return true;
}
}

View File

@@ -23,6 +23,7 @@ namespace pocketmine\command\defaults;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\Player;
use pocketmine\utils\TextFormat;
@@ -43,7 +44,7 @@ class KickCommand extends VanillaCommand{
}
if(count($args) === 0){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return false;
}

View File

@@ -22,6 +22,7 @@
namespace pocketmine\command\defaults;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\Player;
@@ -31,7 +32,7 @@ class ListCommand extends VanillaCommand{
parent::__construct(
$name,
"Lists all online players",
"/list"
"%command.players.usage"
);
$this->setPermission("pocketmine.command.list");
}
@@ -51,7 +52,7 @@ class ListCommand extends VanillaCommand{
}
}
$sender->sendMessage("There are " . $onlineCount . "/" . $sender->getServer()->getMaxPlayers() . " players online:\n" . substr($online, 0, -2));
$sender->sendMessage(new TranslationContainer("%commands.players.list " . substr($online, 0, -2), [$onlineCount, $sender->getServer()->getMaxPlayers()]));
return true;
}

View File

@@ -22,6 +22,7 @@
namespace pocketmine\command\defaults;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\Player;
use pocketmine\utils\TextFormat;
@@ -42,7 +43,7 @@ class MeCommand extends VanillaCommand{
}
if(count($args) === 0){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return false;
}

View File

@@ -23,6 +23,7 @@ namespace pocketmine\command\defaults;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\Player;
use pocketmine\utils\TextFormat;
@@ -43,7 +44,7 @@ class OpCommand extends VanillaCommand{
}
if(count($args) === 0){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return false;
}

View File

@@ -23,6 +23,7 @@ namespace pocketmine\command\defaults;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\utils\TextFormat;
class PardonCommand extends VanillaCommand{
@@ -42,7 +43,7 @@ class PardonCommand extends VanillaCommand{
}
if(count($args) !== 1){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return false;
}

View File

@@ -23,6 +23,7 @@ namespace pocketmine\command\defaults;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\utils\TextFormat;
class PardonIpCommand extends VanillaCommand{
@@ -42,7 +43,7 @@ class PardonIpCommand extends VanillaCommand{
}
if(count($args) !== 1){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return false;
}

View File

@@ -23,6 +23,7 @@ namespace pocketmine\command\defaults;
use pocketmine\block\Block;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\item\Item;
use pocketmine\level\particle\BubbleParticle;
use pocketmine\level\particle\CriticalParticle;
@@ -55,7 +56,7 @@ class ParticleCommand extends VanillaCommand{
parent::__construct(
$name,
"Adds particles to a world",
"/particle <name> <x> <y> <z> <xd> <yd> <zd> [count] [data]"
"/particle <name> <x> <y> <z> <xd> <yd> <zd> [count] [data]" //No translation, different!
);
$this->setPermission("pocketmine.command.particle");
}
@@ -66,7 +67,7 @@ class ParticleCommand extends VanillaCommand{
}
if(count($args) < 7){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return true;
}
@@ -92,12 +93,12 @@ class ParticleCommand extends VanillaCommand{
$particle = $this->getParticle($name, $pos, $xd, $yd, $zd, $data);
if($particle === null){
$sender->sendMessage(TextFormat::RED . "Unknown particle name (" . $name . ")");
$sender->sendMessage(new TranslationContainer(TextFormat::RED . "%commands.particle.notFound", [$name]));
return true;
}
$sender->sendMessage("Playing particle ". $name ." for ". $count ." times");
$sender->sendMessage(new TranslationContainer("commands.particle.success", [$name, $count]));
$random = new Random((int) (microtime(true) * 1000) + mt_rand());

View File

@@ -23,6 +23,7 @@ namespace pocketmine\command\defaults;
use pocketmine\command\CommandSender;
use pocketmine\command\ConsoleCommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\Player;
use pocketmine\utils\TextFormat;
@@ -43,7 +44,7 @@ class SayCommand extends VanillaCommand{
}
if(count($args) === 0){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return false;
}

View File

@@ -23,6 +23,7 @@ namespace pocketmine\command\defaults;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\math\Vector3;
use pocketmine\Player;
use pocketmine\utils\TextFormat;
@@ -56,7 +57,7 @@ class SetWorldSpawnCommand extends VanillaCommand{
$level = $sender->getServer()->getDefaultLevel();
$pos = new Vector3($this->getInteger($sender, $args[0]), $this->getInteger($sender, $args[1]), $this->getInteger($sender, $args[2]));
}else{
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return true;
}

View File

@@ -23,6 +23,7 @@ namespace pocketmine\command\defaults;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\level\Position;
use pocketmine\Player;
use pocketmine\utils\TextFormat;
@@ -89,7 +90,7 @@ class SpawnpointCommand extends VanillaCommand{
}
}
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return true;
}

View File

@@ -23,6 +23,7 @@ namespace pocketmine\command\defaults;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\math\Vector3;
use pocketmine\Player;
use pocketmine\utils\TextFormat;
@@ -44,7 +45,7 @@ class TeleportCommand extends VanillaCommand{
}
if(count($args) < 1 or count($args) > 4){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return true;
}
@@ -102,7 +103,7 @@ class TeleportCommand extends VanillaCommand{
return true;
}
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return true;
}

View File

@@ -22,6 +22,7 @@
namespace pocketmine\command\defaults;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\Player;
use pocketmine\utils\TextFormat;
@@ -43,7 +44,7 @@ class TellCommand extends VanillaCommand{
}
if(count($args) < 2){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return false;
}

View File

@@ -23,6 +23,7 @@ namespace pocketmine\command\defaults;
use pocketmine\command\Command;
use pocketmine\command\CommandSender;
use pocketmine\event\TranslationContainer;
use pocketmine\level\Level;
use pocketmine\utils\TextFormat;
@@ -39,7 +40,7 @@ class TimeCommand extends VanillaCommand{
public function execute(CommandSender $sender, $currentAlias, array $args){
if(count($args) < 1){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return false;
}
@@ -74,7 +75,7 @@ class TimeCommand extends VanillaCommand{
if(count($args) < 2){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return false;
}
@@ -115,7 +116,7 @@ class TimeCommand extends VanillaCommand{
}
Command::broadcastCommandMessage($sender, "Added " . $value . " to time");
}else{
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
}
return true;

View File

@@ -23,6 +23,7 @@ namespace pocketmine\command\defaults;
use pocketmine\command\CommandSender;
use pocketmine\event\TimingsHandler;
use pocketmine\event\TranslationContainer;
use pocketmine\utils\TextFormat;
class TimingsCommand extends VanillaCommand{
@@ -44,7 +45,7 @@ class TimingsCommand extends VanillaCommand{
}
if(count($args) !== 1){
$sender->sendMessage(TextFormat::RED . "Usage: " . $this->usageMessage);
$sender->sendMessage(new TranslationContainer("commands.generic.usage", [$this->usageMessage]));
return true;
}