Merge remote-tracking branch 'origin/master' into Faster-Network

This commit is contained in:
Shoghi Cervantes 2014-01-22 23:13:43 +01:00
commit 9f4b5a40e1
65 changed files with 1585 additions and 102 deletions

View File

@ -7,7 +7,7 @@ before_script:
- pecl install channel://pecl.php.net/pthreads-0.0.44
script:
- php src/tests/ServerSuiteTest.php
- php src/tests/ServerSuiteTest.php --no-wizard
notifications:
email: false

View File

@ -336,11 +336,15 @@ class BlockAPI{
$item = $player->getSlot($player->slot);
if($this->server->api->dhandle("player.block.touch", array("type" => "break", "player" => $player, "target" => $target, "item" => $item)) === false){
return $this->cancelAction($target, $player, false);
if($this->server->api->dhandle("player.block.break.bypass", array("player" => $player, "target" => $target, "item" => $item)) !== true){
return $this->cancelAction($target, $player, false);
}
}
if((!$target->isBreakable($item, $player) and $this->server->api->dhandle("player.block.break.invalid", array("player" => $player, "target" => $target, "item" => $item)) !== true) or ($player->gamemode & 0x02) === 0x02 or (($player->lastBreak - $player->getLag() / 1000) + $target->getBreakTime($item, $player) - 0.1) >= microtime(true)){
return $this->cancelAction($target, $player, false);
if($this->server->api->dhandle("player.block.break.bypass", array("player" => $player, "target" => $target, "item" => $item)) !== true){
return $this->cancelAction($target, $player, false);
}
}
$player->lastBreak = microtime(true);
@ -375,12 +379,16 @@ class BlockAPI{
$item = $player->getSlot($player->slot);
if($target->getID() === AIR and $this->server->api->dhandle("player.block.place.invalid", array("player" => $player, "block" => $block, "target" => $target, "item" => $item)) !== true){ //If no block exists or not allowed in CREATIVE
$this->cancelAction($target, $player);
return $this->cancelAction($block, $player);
if($this->server->api->dhandle("player.block.place.bypass", array("player" => $player, "block" => $block, "target" => $target, "item" => $item)) !== true){
$this->cancelAction($target, $player);
return $this->cancelAction($block, $player);
}
}
if($this->server->api->dhandle("player.block.touch", array("type" => "place", "player" => $player, "block" => $block, "target" => $target, "item" => $item)) === false){
return $this->cancelAction($block, $player);
if($this->server->api->dhandle("player.block.place.bypass", array("player" => $player, "block" => $block, "target" => $target, "item" => $item)) !== true){
return $this->cancelAction($block, $player);
}
}
$this->blockUpdate($target, BLOCK_UPDATE_TOUCH);
@ -391,7 +399,9 @@ class BlockAPI{
}
if(($player->gamemode & 0x02) === 0x02){ //Adventure mode!!
return $this->cancelAction($block, $player, false);
if($this->server->api->dhandle("player.block.place.bypass", array("player" => $player, "block" => $block, "target" => $target, "item" => $item)) !== true){
return $this->cancelAction($block, $player, false);
}
}
if($block->y > 127 or $block->y < 0){
@ -422,7 +432,7 @@ class BlockAPI{
if($target->isReplaceable === true){
$block = $target;
$hand->position($block);
$face = -1;
//$face = -1;
}
if($hand->isSolid === true and $player->entity->inBlock($block)){

View File

@ -237,4 +237,9 @@ class LevelAPI{
}
}
}
public function getAll()
{
return $this->levels;
}
}

View File

@ -402,7 +402,7 @@ class PlayerAPI{
public function spawnToAllPlayers(Player $player){
foreach($this->getAll() as $p){
if($p !== $player and ($p->entity instanceof Entity)){
if($p !== $player and ($p->entity instanceof Entity) and ($player->entity instanceof Entity)){
$player->entity->spawn($p);
if($p->level !== $player->level){
$p->dataPacket(MC_MOVE_ENTITY_POSROT, array(

View File

@ -143,7 +143,7 @@ class ServerAPI{
$this->server = new PocketMinecraftServer($this->getProperty("server-name"), $this->getProperty("gamemode"), ($seed = $this->getProperty("level-seed")) != "" ? (int) $seed:false, $this->getProperty("server-port"), ($ip = $this->getProperty("server-ip")) != "" ? $ip:"0.0.0.0");
$this->server->api = $this;
self::$serverRequest = $this->server;
console("[INFO] This server is running PocketMine-MP version ".($version->isDev() ? FORMAT_YELLOW:"").MAJOR_VERSION.FORMAT_RESET." (MCPE: ".CURRENT_MINECRAFT_VERSION.") (API ".CURRENT_API_VERSION.")", true, true, 0);
console("[INFO] This server is running PocketMine-MP version ".($version->isDev() ? FORMAT_YELLOW:"").MAJOR_VERSION.FORMAT_RESET." \"".CODENAME."\" (MCPE: ".CURRENT_MINECRAFT_VERSION.") (API ".CURRENT_API_VERSION.")", true, true, 0);
console("[INFO] PocketMine-MP is distibuted under the LGPL License", true, true, 0);
if($this->getProperty("upnp-forwarding") === true){

View File

@ -44,6 +44,7 @@ class Player{
private $startAction = false;
private $isSleeping = false;
public $data;
/** @var \Entity */
public $entity = false;
public $auth = false;
public $CID;
@ -78,6 +79,8 @@ class Player{
private $chunkCount = array();
private $received = array();
public $realmsData = array();
/** @var \Level */
public $level;
public function __get($name){
if(isset($this->{$name})){
@ -1297,7 +1300,11 @@ class Player{
if($u !== false){
$u->close("logged in from another location");
}
if(!isset($this->CID) or $this->CID == null){
console("[DEBUG] Player ".$this->username." does not have a CID", true, true, 2);
$this->CID = Utils::readLong(Utils::getRandomBytes(8, false));
}
$this->server->api->player->add($this->CID);
if($this->server->api->handle("player.join", $this) === false){
$this->close("join cancelled", false);
@ -1484,7 +1491,7 @@ class Player{
$data["eid"] = $this->eid;
$data["player"] = $this;
if($data["slot"] === 0){
if($data["slot"] === 0x28 or $data["slot"] === 0){ //0 for 0.8.0 compatibility
$data["slot"] = -1;
$data["item"] = BlockAPI::getItem(AIR, 0, 0);
if($this->server->handle("player.equipment.change", $data) !== false){

View File

@ -1,13 +1,13 @@
#!/bin/bash
COMPILER_VERSION="0.14"
PHP_VERSION="5.5.7"
PHP_VERSION="5.5.8"
ZEND_VM="GOTO"
LIBEDIT_VERSION="0.3"
ZLIB_VERSION="1.2.8"
PTHREADS_VERSION="0.0.45"
CURL_VERSION="curl-7_33_0"
CURL_VERSION="curl-7_34_0"
echo "[PocketMine] PHP installer and compiler for Linux & Mac"
DIR="$(pwd)"
@ -20,6 +20,7 @@ type automake >> "$DIR/install.log" 2>&1 || { echo >&2 "[ERROR] Please install \
type libtool >> "$DIR/install.log" 2>&1 || { echo >&2 "[ERROR] Please install \"libtool\""; read -p "Press [Enter] to continue..."; exit 1; }
type m4 >> "$DIR/install.log" 2>&1 || { echo >&2 "[ERROR] Please install \"m4\""; read -p "Press [Enter] to continue..."; exit 1; }
type wget >> "$DIR/install.log" 2>&1 || { echo >&2 "[ERROR] Please install \"wget\""; read -p "Press [Enter] to continue..."; exit 1; }
type getconf >> "$DIR/install.log" 2>&1 || { echo >&2 "[ERROR] Please install \"getconf\""; read -p "Press [Enter] to continue..."; exit 1; }
export CC="gcc"
COMPILE_FOR_ANDROID=no
@ -77,9 +78,12 @@ elif [ "$1" == "crosscompile" ]; then
exit 1
fi
else
echo "[INFO] Compiling for current machine"
if [ $(uname -m) == "x86_64" ]; then
CFLAGS="-mx32 $CFLAGS"
if [ `getconf LONG_BIT` = "64" ]; then
echo "[INFO] Compiling for current machine using 64-bit"
CFLAGS="-m64 $CFLAGS"
else
echo "[INFO] Compiling for current machine using 32-bit"
CFLAGS="-m32 $CFLAGS"
fi
fi
@ -280,5 +284,5 @@ mv php5/bin/php bin/php
rm -r -f php5/ >> "$DIR/install.log" 2>&1
date >> "$DIR/install.log" 2>&1
echo " done!"
echo "[PocketMine] You should start the server now using \"./start.sh\""
echo "[PocketMine] If it doesn't works, please send the \"install.log\" file to the Bug Tracker"
echo "[PocketMine] You should start the server now using \"./start.sh.\""
echo "[PocketMine] If it doesn't work, please send the \"install.log\" file to the Bug Tracker."

View File

@ -59,9 +59,10 @@ set_include_path(get_include_path() . PATH_SEPARATOR . FILE_PATH);
ini_set("memory_limit", "128M"); //Default
define("LOG", true);
define("START_TIME", microtime(true));
define("MAJOR_VERSION", "Alpha_1.3.11dev");
define("CURRENT_MINECRAFT_VERSION", "v0.8.0 alpha");
define("CURRENT_API_VERSION", 11);
define("MAJOR_VERSION", "Alpha_1.3.12dev");
define("CODENAME", "変梃(Henteko)マインカート(Minecart)");
define("CURRENT_MINECRAFT_VERSION", "v0.8.1 alpha");
define("CURRENT_API_VERSION", 12);
define("CURRENT_PHP_VERSION", "5.5");
$gitsha1 = false;
if(file_exists(FILE_PATH.".git/refs/heads/master")){ //Found Git information!

View File

@ -94,4 +94,10 @@ foreach($inc as $s){
$sha1sum ^= sha1_file($s, true);
}
/***REM_END***/
define("SOURCE_SHA1SUM", bin2hex($sha1sum));
define("SOURCE_SHA1SUM", bin2hex($sha1sum));
/***REM_START***/
if(!file_exists(DATA_PATH."server.properties") and arg("no-wizard", false) != true){
$installer = new Installer();
}
/***REM_END***/

287
src/installer/Installer.php Normal file
View File

@ -0,0 +1,287 @@
<?php
/**
*
* ____ _ _ __ __ _ __ __ ____
* | _ \ ___ ___| | _____| |_| \/ (_)_ __ ___ | \/ | _ \
* | |_) / _ \ / __| |/ / _ \ __| |\/| | | '_ \ / _ \_____| |\/| | |_) |
* | __/ (_) | (__| < __/ |_| | | | | | | | __/_____| | | | __/
* |_| \___/ \___|_|\_\___|\__|_| |_|_|_| |_|\___| |_| |_|_|
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* @author PocketMine Team
* @link http://www.pocketmine.net/
*
*
*/
/***REM_START***/
class Installer{
const DEFAULT_NAME = "Minecraft: PE Server";
const DEFAULT_PORT = 19132;
const DEFAULT_MEMORY = 128;
const DEFAULT_PLAYERS = 20;
const DEFAULT_GAMEMODE = SURVIVAL;
private $lang, $config;
public function __construct(){
echo "[*] PocketMine-MP set-up wizard\n";
echo "[*] Please select a language:\n";
foreach(InstallerLang::$languages as $short => $native){
echo " $native => $short\n";
}
do{
echo "[?] Language (en): ";
$lang = strtolower($this->getInput("en"));
if(!isset(InstallerLang::$languages[$lang])){
echo "[!] Couldn't find the language\n";
$lang = false;
}
}while($lang == false);
$this->lang = new InstallerLang($lang);
echo "[*] ".$this->lang->language_has_been_selected."\n";
echo "[?] ".$this->lang->skip_installer." (y/N): ";
if(strtolower($this->getInput()) === "y"){
return;
}
echo "\n";
$this->welcome();
$this->generateBaseConfig();
$this->generateUserFiles();
$this->networkFunctions();
$this->endWizard();
}
private function welcome(){
echo $this->lang->welcome_to_pocketmine."\n";
echo <<<LICENSE
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
LICENSE;
echo "\n[?] ".$this->lang->accept_license." (y/N): ";
if(strtolower($this->getInput("n")) != "y"){
echo "[!] ".$this->lang->you_have_to_accept_the_license."\n";
sleep(5);
exit(0);
}
echo "[*] ".$this->lang->setting_up_server_now."\n";
echo "[*] ".$this->lang->default_values_info."\n";
echo "[*] ".$this->lang->server_properties."\n";
}
private function generateBaseConfig(){
$config = new Config(DATA_PATH . "server.properties", CONFIG_PROPERTIES);
echo "[?] ".$this->lang->name_your_server." (".self::DEFAULT_NAME."): ";
$config->set("server-name", $this->getInput(self::DEFAULT_NAME));
echo "[*] ".$this->lang->port_warning."\n";
do{
echo "[?] ".$this->lang->server_port." (".self::DEFAULT_PORT."): ";
$port = (int) $this->getInput(self::DEFAULT_PORT);
if($port <= 0 or $port > 65535){
echo "[!] ".$this->lang->invalid_port."\n";
}
}while($port <= 0 or $port > 65535);
$config->set("server-port", $port);
echo "[*] ".$this->lang->ram_warning."\n";
echo "[?] ".$this->lang->server_ram." (".self::DEFAULT_MEMORY."): ";
$config->set("gamemode", ((int) $this->getInput(self::DEFAULT_MEMORY))."M");
echo "[*] ".$this->lang->gamemode_info."\n";
do{
echo "[?] ".$this->lang->default_gamemode.": (".self::DEFAULT_GAMEMODE."): ";
$gamemode = (int) $this->getInput(self::DEFAULT_GAMEMODE);
}while($gamemode < 0 or $gamemode > 3);
$config->set("gamemode", $gamemode);
echo "[?] ".$this->lang->max_players." (".self::DEFAULT_PLAYERS."): ";
$config->set("max-players", (int) $this->getInput(self::DEFAULT_PLAYERS));
echo "[*] ".$this->lang->spawn_protection_info."\n";
echo "[?] ".$this->lang->spawn_protection." (Y/n): ";
if(strtolower($this->getInput("y")) == "n"){
$config->set("spawn-protection", -1);
}else{
$config->set("spawn-protection", 16);
}
$config->save();
}
private function generateUserFiles(){
echo "[*] ".$this->lang->op_info."\n";
echo "[?] ".$this->lang->op_who.": ";
$op = strtolower($this->getInput(""));
if($op === ""){
echo "[!] ".$this->lang->op_warning."\n";
}else{
$ops = new Config(DATA_PATH."ops.txt", CONFIG_LIST);
$ops->set($op, true);
$ops->save();
}
echo "[*] ".$this->lang->whitelist_info."\n";
echo "[?] ".$this->lang->whitelist_enable." (y/N): ";
$config = new Config(DATA_PATH . "server.properties", CONFIG_PROPERTIES);
if(strtolower($this->getInput("n")) === "y"){
echo "[!] ".$this->lang->whitelist_warning."\n";
$config->set("white-list", true);
}else{
$config->set("white-list", false);
}
$config->save();
}
private function networkFunctions(){
$config = new Config(DATA_PATH . "server.properties", CONFIG_PROPERTIES);
echo "[!] ".$this->lang->query_warning1."\n";
echo "[!] ".$this->lang->query_warning2."\n";
echo "[?] ".$this->lang->query_disable." (y/N): ";
if(strtolower($this->getInput("n")) === "y"){
$config->set("enable-query", false);
}else{
$config->set("enable-query", true);
}
echo "[*] ".$this->lang->rcon_info."\n";
echo "[?] ".$this->lang->rcon_enable." (y/N): ";
if(strtolower($this->getInput("n")) === "y"){
$config->set("enable-rcon", true);
$password = substr(base64_encode(Utils::getRandomBytes(20, false)), 3, 10);
$config->set("rcon.password", $password);
echo "[*] ".$this->lang->rcon_password.": ".$password."\n";
}else{
$config->set("enable-rcon", false);
}
echo "[*] ".$this->lang->usage_info."\n";
echo "[?] ".$this->lang->usage_disable." (y/N): ";
if(strtolower($this->getInput("n")) === "y"){
$config->set("send-usage", false);
}else{
$config->set("send-usage", true);
}
$config->save();
echo "[*] ".$this->lang->ip_get."\n";
$externalIP = Utils::getIP();
$internalIP = gethostbyname(trim(`hostname`));
echo "[!] ".$this->lang->get("ip_warning", array("{{EXTERNAL_IP}}", "{{INTERNAL_IP}}"), array($externalIP, $internalIP))."\n";
echo "[!] ".$this->lang->ip_confirm;
$this->getInput();
}
private function endWizard(){
echo "[*] ".$this->lang->you_have_finished."\n";
echo "[*] ".$this->lang->pocketmine_plugins."\n";
echo "[*] ".$this->lang->pocketmine_will_start."\n\n\n";
sleep(4);
}
private function getInput($default = ""){
$input = trim(fgets(STDIN));
return $input === "" ? $default:$input;
}
}
class InstallerLang{
public static $languages = array(
"en" => "English",
"es" => "Español",
"zh" => "中文",
"ru" => "Pyccĸий",
"ja" => "日本語",
"de" => "Deutsch",
//"vi" => "Tiếng Việt",
"ko" => "한국어",
"fr" => "Français",
"it" => "Italiano",
//"lv" => "Latviešu",
"nl" => "Nederlands",
//"pt" => "Português",
//"sv" => "Svenska",
"fi" => "Suomi",
"tr" => "Türkçe",
//"et" => "Eesti",
);
private $texts = array();
private $lang;
private $langfile;
public function __construct($lang = ""){
if(file_exists(FILE_PATH."src/lang/Installer/".$lang.".ini")){
$this->lang = $lang;
$this->langfile = FILE_PATH."src/lang/Installer/".$lang.".ini";
}else{
$l = glob(FILE_PATH."src/lang/Installer/".$lang."_*.ini");
if(count($l) > 0){
$files = array();
foreach($l as $file){
$files[$file] = filesize($file);
}
arsort($files);
reset($files);
$l = key($files);
$l = substr($l, strrpos($l, "/") + 1, -4);
$this->lang = isset(self::$languages[$l]) ? $l:$lang;
$this->langfile = FILE_PATH."src/lang/Installer/".$l.".ini";
}else{
$this->lang = "en";
$this->langfile = FILE_PATH."src/lang/Installer/en.ini";
}
}
$this->loadLang(FILE_PATH."src/lang/Installer/en.ini", "en");
if($this->lang !== "en"){
$this->loadLang($this->langfile, $this->lang);
}
}
public function getLang(){
return ($this->lang);
}
public function loadLang($langfile, $lang = "en"){
$this->texts[$lang] = array();
$texts = explode("\n", str_replace(array("\r", "\/\/"), array("", "//"), file_get_contents($langfile)));
foreach($texts as $line){
$line = trim($line);
if($line === ""){
continue;
}
$line = explode("=", $line);
$this->texts[$lang][array_shift($line)] = str_replace(array("\\n", "\\N",), "\n", implode("=", $line));
}
}
public function get($name, $search = array(), $replace = array()){
if(!isset($this->texts[$this->lang][$name])){
if($this->lang !== "en" and isset($this->texts["en"][$name])){
return $this->texts["en"][$name];
}else{
return $name;
}
}elseif(count($search) > 0){
return str_replace($search, $replace, $this->texts[$this->lang][$name]);
}else{
return $this->texts[$this->lang][$name];
}
}
public function __get($name){
return $this->get($name);
}
}
/***REM_END***/

View File

@ -0,0 +1,6 @@

View File

@ -0,0 +1,6 @@

View File

@ -0,0 +1,6 @@

View File

@ -0,0 +1,45 @@
language_has_been_selected=Englisch haben Sie richtig ausgewählt.
skip_installer=Möchten Sie den Setup-Assistenten überspringen?
welcome_to_pocketmine=Willkommen auf PocketMine-MP!\nBevor Sie die Einrichtung Ihres neuen Server starten, müssen Sie die Lizenz akzeptieren. \nPocketMine-MP ist unter der LGPL-Lizenz, \ndamit Sie die LIZENZ in diesem Ordner lesen oder öffnen können.
accept_license=Akzeptieren Sie die Lizenz?
you_have_to_accept_the_license=Sie müssen die LGPL Lizenz akzeptieren, um weiterhin PocketMine-MP zu nutzen
setting_up_server_now=Sie werden jetzt Ihren Server einrichten.
default_values_info=Wenn Sie nicht den Standardwert ändern möchten, drücken Sie einfach Enter.
server_properties=Sie können sie später in der server.properties Datei bearbeiten.
name_your_server=Geben Sie einen Namen für Ihren Server ein
port_warning=Ändern Sie den Standard-Port-Wert nicht, wenn dies Ihr erster Server ist.
server_port=Server-Port
invalid_port=Ungültiger Server-Port
ram_warning=Der RAM ist die maximale Speichermenge die PocketMine-MP verwenden kann. Ein Wert zwischen 128 bis 256 MB wird empfohlen
server_ram=Server RAM in MB
gamemode_info=Wählen Sie zwischen Kreativ (1) oder Überleben (0)
default_gamemode=Standard Spielmodus
max_players=Max. Online-Spieler
spawn_protection_info=Der Spawn-Schutz verbietet Platzierung/Zerstörung der Blöcke in der Einstiegszone, was aber nicht für OPs gilt
spawn_protection=Aktiviere Spawn-Schutz?
op_info=Ein OP ist der Admin Spieler des Servers. OPs können mehr Befehle ausführen als normale Spieler
op_who=OP Spieler Name (z.B. dein Spiel-Name)
op_warning=Sie werden in der Lage sein einen OP Benutzer später mit /op <player> hinzuzufügen
whitelist_info=Nur die Spieler auf der white-list können zu ihrem Spiel verbinden.
whitelist_enable=Möchten Sie die white-list aktivieren?
whitelist_warning=Sie müssen die Spieler zur white-list hinzufügen
query_warning1=Query ist ein Protokoll das von verschiedenen Tools verwendet wird, um Informationen von Ihrem Server und eingeloggten Spieler zu nehmen.
query_warning2=Wenn Sie es deaktivieren, werden Sie nicht in der Lage sein, Server-Listen zu verwenden.
query_disable=Wollen Sie Query deaktivieren?
rcon_info=RCON ist ein Protokoll für eine Remote-Verbindung mit der Server-Konsole, mit der Benutzung eines Passworts.
rcon_enable=Wollen Sie RCON aktivieren?
rcon_password=RCON Passwort (Sie können es später ändern)
usage_info=Die anonymen Nutzungsdaten ermöglichen es uns, globale Statistiken für PocketMine-MP und seine Plugins zu berechnen. Sie können sie auf stats.pocketmine.net ansehen
usage_disable=Wollen Sie die anonyme Nutzung deaktivieren?
ip_get=Bekomme deine externe IP und interne IP
ip_warning=Ihre externe IP ist {{EXTERNAL_IP}}. Evtl. musst Du einen port-forward auf deine interne IP {{INTERNAL_IP}} machen
ip_confirm=Achten Sie darauf, wenn Sie den Port forwarden müssen und Sie es überspringen, dass keine externen Spieler beitreten können. [Drücke Enter]
you_have_finished=Sie haben den Setup-Assistenten korrekt beendet
pocketmine_will_start=PocketMine-MP wird nun gestartet. Tippe /help um die Liste der verfügbaren Befehle anzuzeigen.
pocketmine_plugins=Überprüfen Sie das Plugin Repository um neue Features, Minispiele, oder einen erweiterten Schutz für Ihren Server hinzuzufügen

View File

@ -0,0 +1,6 @@

45
src/lang/Installer/en.ini Normal file
View File

@ -0,0 +1,45 @@
language_has_been_selected=English has been correctly selected.
skip_installer=Do you want to skip the set-up wizard?
welcome_to_pocketmine=Welcome to PocketMine-MP!\nBefore starting setting up your new server you have to accept the license.\nPocketMine-MP is licensed under the LGPL License,\nthat you can read opening the LICENSE file on this folder.
accept_license=Do you accept the License?
you_have_to_accept_the_license=You have to accept the LGPL license to continue using PocketMine-MP
setting_up_server_now=You are going to set up your server now.
default_values_info=If you don't want to change the default value, just press Enter.
server_properties=You can edit them later on the server.properties file.
name_your_server=Give a name to your server
port_warning=Do not change the default port value if this is your first server.
server_port=Server port
invalid_port=Invalid server port
ram_warning=The RAM is the maximum amount of memory PocketMine-MP will use. A value of 128-256 MB is recommended
server_ram=Server RAM in MB
gamemode_info=Choose between Creative (1) or Survival (0)
default_gamemode=Default Game mode
max_players=Max. online players
spawn_protection_info=The spawn protection disallows placing/breaking blocks in the spawn zone except for OPs
spawn_protection=Enable spawn protection?
op_info=An OP is the player admin of the server. OPs can run more commands than normal players
op_who=OP player name (example, your game name)
op_warning=You will be able to add an OP user later using /op <player>
whitelist_info=The white-list only allows players in it to join.
whitelist_enable=Do you want to enable the white-list?
whitelist_warning=You will have to add the players to the white-list
query_warning1=Query is a protocol used by diferent tools to get information of your server and players logged in.
query_warning2=If you disable it, you won't be able to use server lists.
query_disable=Do you want to disable Query?
rcon_info=RCON is a protocol to remote connect with the server console using a password.
rcon_enable=Do you want to enable RCON?
rcon_password=RCON password (you can change it later)
usage_info=The anonymous usage data allows us to calculate global statistics for PocketMine-MP and its plugins. You can view them on stats.pocketmine.net
usage_disable=Do you want to disable the anonymous usage?
ip_get=Getting your external IP and internal IP
ip_warning=Your external IP is {{EXTERNAL_IP}}. You may have to port-forward to your internal IP {{INTERNAL_IP}}
ip_confirm=Be sure to check it, if you have to forward and you skip that, no external players will be able to join. [Press Enter]
you_have_finished=You have finished the set-up wizard correctly
pocketmine_will_start=PocketMine-MP will now start. Type /help to view the list of available commands.
pocketmine_plugins=Check the Plugin Repository to add new features, minigames, or advanced protection to your server

View File

@ -0,0 +1,45 @@
language_has_been_selected=English has been correctly selected.
skip_installer=Do you want to skip the set-up wizard?
welcome_to_pocketmine=Welcome to PocketMine-MP!\nBefore starting setting up your new server you have to accept the license.\nPocketMine-MP is licensed under the LGPL License,\nthat you can read opening the LICENSE file on this folder.
accept_license=Do you accept the License?
you_have_to_accept_the_license=You have to accept the LGPL license to continue using PocketMine-MP
setting_up_server_now=You are going to set up your server now.
default_values_info=If you don't want to change the default value, just press Enter.
server_properties=You can edit them later on the server.properties file.
name_your_server=Give a name to your server
port_warning=Do not change the default port value if this is your first server.
server_port=Server port
invalid_port=Invalid server port
ram_warning=The RAM is the maximum amount of memory PocketMine-MP will use. A value of 128-256 MB is recommended
server_ram=Server RAM in MB
gamemode_info=Choose between Creative (1) or Survival (0)
default_gamemode=Default Game mode
max_players=Max. online players
spawn_protection_info=The spawn protection disallows placing/breaking blocks in the spawn zone except for OPs
spawn_protection=Enable spawn protection?
op_info=An OP is the player admin of the server. OPs can run more commands than normal players
op_who=OP player name (example, your game name)
op_warning=You will be able to add an OP user later using /op <player>
whitelist_info=The white-list only allows players in it to join.
whitelist_enable=Do you want to enable the white-list?
whitelist_warning=You will have to add the players to the white-list
query_warning1=Query is a protocol used by diferent tools to get information of your server and players logged in.
query_warning2=If you disable it, you won't be able to use server lists.
query_disable=Do you want to disable Query?
rcon_info=RCON is a protocol to remote connect with the server console using a password.
rcon_enable=Do you want to enable RCON?
rcon_password=RCON password (you can change it later)
usage_info=The anonymous usage data allows us to calculate global statistics for PocketMine-MP and its plugins. You can view them on stats.pocketmine.net
usage_disable=Do you want to disable the anonymous usage?
ip_get=Getting your external IP and internal IP
ip_warning=Your external IP is {{EXTERNAL_IP}}. You may have to port-forward to your internal IP {{INTERNAL_IP}}
ip_confirm=Be sure to check it, if you have to forward and you skip that, no external players will be able to join. [Press Enter]
you_have_finished=You have finished the set-up wizard correctly
pocketmine_will_start=PocketMine-MP will now start. Type /help to view the list of available commands.
pocketmine_plugins=Check the Plugin Repository to add new features, minigames, or advanced protection to your server

View File

@ -0,0 +1,45 @@
language_has_been_selected=English has been correctly selected.
skip_installer=Do you want to skip the set-up wizard?
welcome_to_pocketmine=Welcome to PocketMine-MP!\nBefore starting setting up your new server you have to accept the license.\nPocketMine-MP is licensed under the LGPL License,\nthat you can read opening the LICENSE file on this folder.
accept_license=Do you accept the License?
you_have_to_accept_the_license=You have to accept the LGPL license to continue using PocketMine-MP
setting_up_server_now=You are going to set up your server now.
default_values_info=If you don't want to change the default value, just press Enter.
server_properties=You can edit them later on the server.properties file.
name_your_server=Give a name to your server
port_warning=Do not change the default port value if this is your first server.
server_port=Server port
invalid_port=Invalid server port
ram_warning=The RAM is the maximum amount of memory PocketMine-MP will use. A value of 128-256 MB is recommended
server_ram=Server RAM in MB
gamemode_info=Choose between Creative (1) or Survival (0)
default_gamemode=Default Game mode
max_players=Max. online players
spawn_protection_info=The spawn protection disallows placing/breaking blocks in the spawn zone except for OPs
spawn_protection=Enable spawn protection?
op_info=An OP is the player admin of the server. OPs can run more commands than normal players
op_who=OP player name (example, your game name)
op_warning=You will be able to add an OP user later using /op <player>
whitelist_info=The white-list only allows players in it to join.
whitelist_enable=Do you want to enable the white-list?
whitelist_warning=You will have to add the players to the white-list
query_warning1=Query is a protocol used by diferent tools to get information of your server and players logged in.
query_warning2=If you disable it, you won't be able to use server lists.
query_disable=Do you want to disable Query?
rcon_info=RCON is a protocol to remote connect with the server console using a password.
rcon_enable=Do you want to enable RCON?
rcon_password=RCON password (you can change it later)
usage_info=The anonymous usage data allows us to calculate global statistics for PocketMine-MP and its plugins. You can view them on stats.pocketmine.net
usage_disable=Do you want to disable the anonymous usage?
ip_get=Getting your external IP and internal IP
ip_warning=Your external IP is {{EXTERNAL_IP}}. You may have to port-forward to your internal IP {{INTERNAL_IP}}
ip_confirm=Be sure to check it, if you have to forward and you skip that, no external players will be able to join. [Press Enter]
you_have_finished=You have finished the set-up wizard correctly
pocketmine_will_start=PocketMine-MP will now start. Type /help to view the list of available commands.
pocketmine_plugins=Check the Plugin Repository to add new features, minigames, or advanced protection to your server

View File

@ -0,0 +1,45 @@
language_has_been_selected=English has been correctly selected.
skip_installer=Do you want to skip the set-up wizard?
welcome_to_pocketmine=Welcome to PocketMine-MP!\nBefore starting setting up your new server you have to accept the license.\nPocketMine-MP is licensed under the LGPL License,\nthat you can read opening the LICENSE file on this folder.
accept_license=Do you accept the License?
you_have_to_accept_the_license=You have to accept the LGPL license to continue using PocketMine-MP
setting_up_server_now=You are going to set up your server now.
default_values_info=If you don't want to change the default value, just press Enter.
server_properties=You can edit them later on the server.properties file.
name_your_server=Give a name to your server
port_warning=Do not change the default port value if this is your first server.
server_port=Server port
invalid_port=Invalid server port
ram_warning=The RAM is the maximum amount of memory PocketMine-MP will use. A value of 128-256 MB is recommended
server_ram=Server RAM in MB
gamemode_info=Choose between Creative (1) or Survival (0)
default_gamemode=Default Game mode
max_players=Max. online players
spawn_protection_info=The spawn protection disallows placing/breaking blocks in the spawn zone except for OPs
spawn_protection=Enable spawn protection?
op_info=An OP is the player admin of the server. OPs can run more commands than normal players
op_who=OP player name (example, your game name)
op_warning=You will be able to add an OP user later using /op <player>
whitelist_info=The white-list only allows players in it to join.
whitelist_enable=Do you want to enable the white-list?
whitelist_warning=You will have to add the players to the white-list
query_warning1=Query is a protocol used by diferent tools to get information of your server and players logged in.
query_warning2=If you disable it, you won't be able to use server lists.
query_disable=Do you want to disable Query?
rcon_info=RCON is a protocol to remote connect with the server console using a password.
rcon_enable=Do you want to enable RCON?
rcon_password=RCON password (you can change it later)
usage_info=The anonymous usage data allows us to calculate global statistics for PocketMine-MP and its plugins. You can view them on stats.pocketmine.net
usage_disable=Do you want to disable the anonymous usage?
ip_get=Getting your external IP and internal IP
ip_warning=Your external IP is {{EXTERNAL_IP}}. You may have to port-forward to your internal IP {{INTERNAL_IP}}
ip_confirm=Be sure to check it, if you have to forward and you skip that, no external players will be able to join. [Press Enter]
you_have_finished=You have finished the set-up wizard correctly
pocketmine_will_start=PocketMine-MP will now start. Type /help to view the list of available commands.
pocketmine_plugins=Check the Plugin Repository to add new features, minigames, or advanced protection to your server

View File

@ -0,0 +1,6 @@

View File

@ -0,0 +1,45 @@
language_has_been_selected=English has been correctly selected.
skip_installer=Do you want to skip the set-up wizard?
welcome_to_pocketmine=Welcome to PocketMine-MP!\nBefore starting setting up your new server you have to accept the license.\nPocketMine-MP is licensed under the LGPL License,\nthat you can read opening the LICENSE file on this folder.
accept_license=Do you accept the License?
you_have_to_accept_the_license=You have to accept the LGPL license to continue using PocketMine-MP
setting_up_server_now=You are going to set up your server now.
default_values_info=If you don't want to change the default value, just press Enter.
server_properties=You can edit them later on the server.properties file.
name_your_server=Give a name to your server
port_warning=Do not change the default port value if this is your first server.
server_port=Server port
invalid_port=Invalid server port
ram_warning=The RAM is the maximum amount of memory PocketMine-MP will use. A value of 128-256 MB is recommended
server_ram=Server RAM in MB
gamemode_info=Choose between Creative (1) or Survival (0)
default_gamemode=Default Game mode
max_players=Max. online players
spawn_protection_info=The spawn protection disallows placing/breaking blocks in the spawn zone except for OPs
spawn_protection=Enable spawn protection?
op_info=An OP is the player admin of the server. OPs can run more commands than normal players
op_who=OP player name (example, your game name)
op_warning=You will be able to add an OP user later using /op <player>
whitelist_info=The white-list only allows players in it to join.
whitelist_enable=Do you want to enable the white-list?
whitelist_warning=You will have to add the players to the white-list
query_warning1=Query is a protocol used by diferent tools to get information of your server and players logged in.
query_warning2=If you disable it, you won't be able to use server lists.
query_disable=Do you want to disable Query?
rcon_info=RCON is a protocol to remote connect with the server console using a password.
rcon_enable=Do you want to enable RCON?
rcon_password=RCON password (you can change it later)
usage_info=The anonymous usage data allows us to calculate global statistics for PocketMine-MP and its plugins. You can view them on stats.pocketmine.net
usage_disable=Do you want to disable the anonymous usage?
ip_get=Getting your external IP and internal IP
ip_warning=Your external IP is {{EXTERNAL_IP}}. You may have to port-forward to your internal IP {{INTERNAL_IP}}
ip_confirm=Be sure to check it, if you have to forward and you skip that, no external players will be able to join. [Press Enter]
you_have_finished=You have finished the set-up wizard correctly
pocketmine_will_start=PocketMine-MP will now start. Type /help to view the list of available commands.
pocketmine_plugins=Check the Plugin Repository to add new features, minigames, or advanced protection to your server

View File

@ -0,0 +1,45 @@
language_has_been_selected=Español sido seleccionado correctamente.
skip_installer=Quieres saltarte el asistente de configuración?
welcome_to_pocketmine=Bienvenido a PocketMine-MP!\nAntes de comenzar a configurar tu nuevo servidor, tienes que aceptar la licencia.\nPocketMine-MP está licenciado con la licencia LGPL,\nque puedes leer abriendo el archivo LICENSE en esta carpeta.
accept_license=¿Aceptas la Licencia?
you_have_to_accept_the_license=Tienes que aceptar la licencia LGPL antes de continuar usando PocketMine-MP
setting_up_server_now=La configuración del servidor va a comenzar.
default_values_info=Si no quieres cambiar el valor por defecto, pulsa Enter.
server_properties=Puedes editar todo despues en el fichero server.properties.
name_your_server=Nombre del servidor
port_warning=No cambies el puerto por defecto si este es tu primer servidor.
server_port=Puerto del servidor
invalid_port=Puerto inválido
ram_warning=La RAM esla máxima memoria que PocketMine-MP usará. Es recomendado usar un valor de 128-256 MB
server_ram=RAM del servidor en MB
gamemode_info=Elige entre Creativo (1) o Supervivencia (0)
default_gamemode=Modo de juego por defecto
max_players=Límite de jugadores
spawn_protection_info=La protección del inicio bloquea poner/romper bloques en la zona de inicio, excepto los OPs
spawn_protection=¿Activar protección de inicio?
op_info=Un OP es el jugador administrador del servidor. Los OPs pueden usar más comandos que los jugadores normales
op_who=Jugador OP (por ejemplo, tu nombre de jugador)
op_warning=Podrás añadir mas OPs después usando /op <jugador>
whitelist_info=La lista blanca permite entrar únicamente a los jugadores en ella.
whitelist_enable=¿Quieres activar la lista blanca?
whitelist_warning=Tendrás que añadir los jugadores a la lista blanca
query_warning1=Query es un protocolo usado por diferentes herramientas para conseguir informacion de tu servidor y los jugadores conectados.
query_warning2=Si lo desactivas, no podrás usar listas de servidores.
query_disable=¿Quieres desactivar Query?
rcon_info=RCON es un protocolo que permite conectarte a la consola del servidor usando una contraseña.
rcon_enable=¿Queres activar RCON?
rcon_password=Contraseña RCON (puedes cambiarla después)
usage_info=Los datos de uso anónimos nos permiten calcular estadísticas globales para PocketMine-MP y sus plugins. Puedes verlas en stats.pocketmine.net
usage_disable=¿Quieres desactivar las datos de uso anónimos?
ip_get=Obteniendo tu IP externa e IP interna
ip_warning=Tu IP externa es {{EXTERNAL_IP}}. Quizás debas redireccionar el puerto a tu IP interna {{INTERNAL_IP}}
ip_confirm=Asegúrate de comprobarlo, ya que si debes hacerlo y lo saltas, ningún jugador externo podra entrar. [Pulsa Enter]
you_have_finished=Has completado el asistente de configuración correctamente
pocketmine_will_start=PocketMine-MP se iniciará ahora. Escribe /help para ver la lista de los comandos disponibles.
pocketmine_plugins=Ves al Repositorio de Plugins para añadir nuevas funcionalidades, minijuegos o protección avanzada a tu servidor

View File

@ -0,0 +1,45 @@
language_has_been_selected=Español sido seleccionado correctamente.
skip_installer=Quieres saltarte el asistente de configuración?
welcome_to_pocketmine=Bienvenido a PocketMine-MP!\nAntes de comenzar a configurar tu nuevo servidor, tienes que aceptar la licencia.\nPocketMine-MP está licenciado con la licencia LGPL,\nque puedes leer abriendo el archivo LICENSE en esta carpeta.
accept_license=¿Aceptas la Licencia?
you_have_to_accept_the_license=Tienes que aceptar la licencia LGPL antes de continuar usando PocketMine-MP
setting_up_server_now=La configuración del servidor va a comenzar.
default_values_info=Si no quieres cambiar el valor por defecto, pulsa Enter.
server_properties=Puedes editar todo despues en el fichero server.properties.
name_your_server=Nombre del servidor
port_warning=No cambies el puerto por defecto si este es tu primer servidor.
server_port=Puerto del servidor
invalid_port=Puerto inválido
ram_warning=La RAM esla máxima memoria que PocketMine-MP usará. Es recomendado usar un valor de 128-256 MB
server_ram=RAM del servidor en MB
gamemode_info=Elige entre Creativo (1) o Supervivencia (0)
default_gamemode=Modo de juego por defecto
max_players=Límite de jugadores
spawn_protection_info=La protección del inicio bloquea poner/romper bloques en la zona de inicio, excepto los OPs
spawn_protection=¿Activar protección de inicio?
op_info=Un OP es el jugador administrador del servidor. Los OPs pueden usar más comandos que los jugadores normales
op_who=Jugador OP (por ejemplo, tu nombre de jugador)
op_warning=Podrás añadir mas OPs después usando /op <jugador>
whitelist_info=La lista blanca permite entrar únicamente a los jugadores en ella.
whitelist_enable=¿Quieres activar la lista blanca?
whitelist_warning=Tendrás que añadir los jugadores a la lista blanca
query_warning1=Query es un protocolo usado por diferentes herramientas para conseguir informacion de tu servidor y los jugadores conectados.
query_warning2=Si lo desactivas, no podrás usar listas de servidores.
query_disable=¿Quieres desactivar Query?
rcon_info=RCON es un protocolo que permite conectarte a la consola del servidor usando una contraseña.
rcon_enable=¿Queres activar RCON?
rcon_password=Contraseña RCON (puedes cambiarla después)
usage_info=Los datos de uso anónimos nos permiten calcular estadísticas globales para PocketMine-MP y sus plugins. Puedes verlas en stats.pocketmine.net
usage_disable=¿Quieres desactivar las datos de uso anónimos?
ip_get=Obteniendo tu IP externa e IP interna
ip_warning=Tu IP externa es {{EXTERNAL_IP}}. Quizás debas redireccionar el puerto a tu IP interna {{INTERNAL_IP}}
ip_confirm=Asegúrate de comprobarlo, ya que si debes hacerlo y lo saltas, ningún jugador externo podra entrar. [Pulsa Enter]
you_have_finished=Has completado el asistente de configuración correctamente
pocketmine_will_start=PocketMine-MP se iniciará ahora. Escribe /help para ver la lista de los comandos disponibles.
pocketmine_plugins=Ves al Repositorio de Plugins para añadir nuevas funcionalidades, minijuegos o protección avanzada a tu servidor

View File

@ -0,0 +1,45 @@
language_has_been_selected=Español seleccionado.
skip_installer=Deseas omitir el asistente de configuración?
welcome_to_pocketmine=¡Bienvenido a PocketMine-MP!\nAntes de empezar a configurar tu nuevo servidor necesitas aceptar la licensia.\nLa licensia de PocketMine-MP esta bajo la licensia LGPL,\n que puedes leer abriendo el archivo "License" en esta carpeta.
accept_license=Aceptas la licensia?
you_have_to_accept_the_license=Debes aceptar la licensia de LPGL para continuar utilizando PocketMine-MP
setting_up_server_now=Empezemos con la configuración.
default_values_info=Si no quieres cambiar los valores predeterminados pulsa Enter.
server_properties=Puedes editarlos despues editando el archivo "server.properties".
name_your_server=Escribe el nombre de tu servidor
port_warning=No cambies el puerto predeterminado si este es tu primer servidor.
server_port=Puerto del servidor
invalid_port=Puerto invalido
ram_warning=La RAM es la máxima memoria que PocketMine-MP usará. Se recomienda utilizar un mínimo de 128 MB
server_ram=RAM del servidor en MB
gamemode_info=Escoge entre Creativo (1) o Survival (0)
default_gamemode=Modo de juego predeterminado
max_players=Límite de jugadores
spawn_protection_info=La protección del inicio impide poner/romper bloques en la zona de aparición, a excepción de los OPs
spawn_protection=Activar la protección del spawn?
op_info=Un OP es el administrador del servidor. Los OPs pueden ejecutar más comandos que los usuarios normales
op_who=OP nombre del jugador (Por ejemplo: Tu nombre de Minecraft)
op_warning=Podrás añadir más usuarios a la lista de OPs después, utilizando el comando /op <player>
whitelist_info=La lista blanca (white-list) permite hacer una lista de invitados, solo los usuarios en la lista podrán entrar a tu servidor.
whitelist_enable=¿Deseas activar la lista blanca?
whitelist_warning=Tendrás que añadir usuarios a la lista blanca
query_warning1=Query es un protocolo usado por diferentes herramientas para conseguir informacion de tu servidor y los jugadores conectados.
query_warning2=Si lo desactivas, no podrás registrar tu servidor en una lista de servidores.
query_disable=¿Quieres desactivar Query?
rcon_info=RCON es un protocolo que te permite conectarte a la consola de tu servidor usando una contraseña.
rcon_enable=¿Queres activar RCON?
rcon_password=Contraseña para RCON (puedes cambiarla después)
usage_info=Los datos de uso anónimos nos permiten calcular estadísticas globales para PocketMine-MP y sus plugins. Puedes verlas en stats.pocketmine.net
usage_disable=¿Quieres desactivar las datos de uso anónimos?
ip_get=Obteniendo tu IP externa e IP interna
ip_warning=Tu IP externa es {{EXTERNAL_IP}}. Quizás debas redireccionar el puerto a tu IP interna: {{INTERNAL_IP}}
ip_confirm=Asegúrate de que este bien, ya que si debes hacerlo y lo saltas, ningún jugador podrá entrar si esta fuera de tu red WIFI. [Pulsa Enter]
you_have_finished=Has completado el asistente de configuración correctamente
pocketmine_will_start=PocketMine-MP se iniciará ahora. Escribe /help para ver la lista de los comandos disponibles.
pocketmine_plugins=Ve al Repositorio de Plugins para añadir nuevas funciones, minijuegos o protección avanzada a tu servidor

View File

@ -0,0 +1,6 @@

View File

@ -0,0 +1,7 @@
default_gamemode=Normaali Peli Tila

View File

@ -0,0 +1,45 @@
language_has_been_selected=Français a été correctement sélectionné.
skip_installer=Voulez-vous passer l'assistant d'installation?
welcome_to_pocketmine=Bienvenue sur PocketMine-MP!\nAvant de commencer à paramétrer votre nouveau serveur, vous devez accepter la license d'utilisation.\nPocketMine-MP est sous licence LGPL,\nvous pouvez la lire en ouvrant le fichier LICENSE dans ce dossier.
accept_license=Acceptez-vous la Licence?
you_have_to_accept_the_license=Vous devez accepter la licence LGPL pour continuer à utiliser PocketMine-MP
setting_up_server_now=Vous êtes maintenant prêt à paramétrer votre serveur.
default_values_info=Si vous ne voulez pas changer la valeur par défaut, pressez juste Enter.
server_properties=Vous pouvez éditer cela plus tard dans le fichier server.properties.
name_your_server=Donnez un nom à votre serveur
port_warning=Ne changez pas la valeur par défaut du port si c'est votre premier serveur.
server_port=Port du serveur
invalid_port=Port du serveur invalide
ram_warning=La RAM est au maximum de sa capacité par rapport à la mémoire utilisée par PocketMine-MP. Une valeur de 128-256 MB est recommandée
server_ram=RAM du serveur en MB
gamemode_info=Choisir entre Créatif (1) ou Survie (1)
default_gamemode=Mode de jeu par défaut
max_players=Joueurs max. en ligne
spawn_protection_info=La protection de spawn désactive le placement/cassement de blocs dans la zone de spawn excepté pour les OPs
spawn_protection=Activer la protection de spawn?
op_info=Un OP est un administrateur du serveur. Les OPs peuvent exécuter plus de commandes que les joueurs normaux
op_who=Nom de joueur OP (exemple, votre nom de jeu)
op_warning=Vous serez en mesure d'ajouter un OP plus tard en utilisant /op <player>
whitelist_info=La white-list autorise seulement les joueurs présents sur celle-ci.
whitelist_enable=Voulez-vous activer la white-list?
whitelist_warning=Vous devrez ajouter les joueurs à la white-list
query_warning1=Query est un protocole utilisé par différents outils pour avoir des informations sur votre serveur et les joueurs connectés.
query_warning2=Si vous le désactivez, vous ne pourrez pas utiliser les listes du serveur.
query_disable=Voulez-vous désactiver Query?
rcon_info=RCON est un protocole pour se connecter à distance à la console du serveur par un mot de passe.
rcon_enable=Voulez-vous activer RCON?
rcon_password=Mot de passe RCON (vous pouvez le changer plus tard)
usage_info=Les données d'utilisation anonyme vous permettent de calculer les statistiques globales de PocketMine-MP et ses plugins. Vous pouvez les voir sur stats.pocketmine.net
usage_disable=Voulez-vous désactiver l'utilisation anonyme?
ip_get=Obtention de votre IP externe et IP interne
ip_warning=Votre IP externe est {{EXTERNAL_IP}}. Vous pourriez avoir à transmettre au port votre IP interne {{INTERNAL_IP}}
ip_confirm=Vérifiez-le bien, si vous avancez et sautez cette étape, les joueurs extérieurs ne pourront pas rejoindre votre serveur. [Tapez Enter]
you_have_finished=Vous avez correctement terminé l'assistant d'installation
pocketmine_will_start=PocketMine-MP démarre. Tapez /help pour voir la liste des commandes disponibles.
pocketmine_plugins=Vérification du répertoire de plugin pour ajouter des nouvelles caractéristiques, mini-jeux, ou une protection avancée de votre serveur

View File

@ -0,0 +1,6 @@

View File

@ -0,0 +1,6 @@

View File

@ -0,0 +1,6 @@

View File

@ -0,0 +1,45 @@
language_has_been_selected=Italiano selezionato correttamente.
skip_installer=Vuoi evitare il programma di installazione?
welcome_to_pocketmine=Benvenuto in PocketMine-MP!\nPrima di iniziare a impostare il tuo nuovo server devi accettare la licenza.\nPocketMine-MP è distribuito sotto licenza LGPL,\nche potrai leggere aprendo il file LICNESE in questa cartella.
accept_license=Accetti i termini della licenza?
you_have_to_accept_the_license=Devi accettare i termini della licenza LGPL per continuare ad usare PocketMine-MP
setting_up_server_now=Stai per iniziare ad impostare il tuo server.
default_values_info=Se non vuoi cambiare i valori proposti, premi Invio.
server_properties=Potrai modificarli in seguito nel file server.properties.
name_your_server=Dai un nome al tuo server
port_warning=Non cambiare la porta predefinita se questo è il tuo primo server.
server_port=Porta del server
invalid_port=Porta del server non valida
ram_warning=La RAM è la massima quantità di memoria che PocketMine-MP potrà usare. Un valore di 128-256 MB è raccomandata
server_ram=RAM del server in MB
gamemode_info=Scegli tra Creative (1) o Survival (0)
default_gamemode=Modalità di gioco predefinita
max_players=Players massimi
spawn_protection_info=La protezione dello spawn non permette di piazzare/rompere blocchi nella zona di spawn, ad eccezione degli Operatori
spawn_protection=Abilitare la protezione dello spawn?
op_info=Un Operatore (OP) è un player amministratore del server. Gli operatori possono usare più comandi dei players normali
op_who=Nome del player OP (ad esempio, il tuo nome in gioco)
op_warning=Sarà possibile aggiungere un player OP più tardi con /op <player>
whitelist_info=La white-list permette solo ad i players in lista di entrare.
whitelist_enable=Vuoi abilitare la white-list?
whitelist_warning=Dovrai aggiungere i players in white-list
query_warning1=Query è un protocollo usato da differenti programmi per ottenere informazioni dal tuo server e dai player che ci entrano.
query_warning2=Se lo disabiliti, non sarai in grado di usare le liste server.
query_disable=Vuoi disabilitare Query?
rcon_info=RCON è un protocollo per connessioni remote con la console del server grazie all'utilizzo di una password.
rcon_enable=Vuoi abilitare RCON?
rcon_password=Password RCON (potrai cambiarla più tardi)
usage_info=L'invio anonimo dei dati di utilizzo ci aiuta a calcolare statistiche generali per PocketMine-MP ed i suoi plugins. Puoi vederle su stats.pocketmine.net
usage_disable=Vuoi disabilitare l'invio anonimo dei dati di utilizzo?
ip_get=Ottengo il tuo indirizzo IP interno ed esterno
ip_warning=Il tuo indirizzo IP è {{EXTERNAL_IP}}. Potresti dover redirigere le porte al tuo IP interno: {{INTERNAL_IP}}
ip_confirm=Sii sicuro di farlo, se devi redirigere le porte e non lo fai, nessun player esterno sarà in grado di entrare. [Premi Invio]
you_have_finished=Hai completato l'installazione con successo
pocketmine_will_start=Ora PocketMine-MP si avvierà. Digita /help per visualizzare la lista dei comandi disponibili.
pocketmine_plugins=Controlla il Repository dei Plugins per aggiungere nuove funzionalità, minigiochi, o protezioni avanzate al tuo server

View File

@ -0,0 +1,45 @@
language_has_been_selected=日本語に設定されました
skip_installer=セットアップウィザードをスキップしますか?
welcome_to_pocketmine=PocketMine-MPをインストールして頂きありがとうございますサーバのセットアップを開始するにはライセンスに同意する必要があります。PocketMine-MPはLGPLライセンスに基づいて認可されており、これについてはこのフォルダ内のLICENSEファイルから確認することができます。
accept_license=ライセンスに同意しますか?
you_have_to_accept_the_license=PocketMine-MPを使用するにはLGPLライセンスに同意する必要があります
setting_up_server_now=サーバのセットアップを開始します
default_values_info=設定を変更しない場合は、Enterキーを押してください。
server_properties=それらの設定は後からでもserver.propertiesファイルから変更できます
name_your_server=あなたのサーバに名前を付けてください
port_warning=これが初めてのサーバの場合は、ポート番号をデフォルトから変更しないでください
server_port=サーバポート
invalid_port=不適切なサーバポートです
ram_warning=RAMはPocketMine-MPが使用し得るメモリの最大値を示しています。128-256MBの範囲内で指定することを推奨します。
server_ram=RAMの単位はMBです
gamemode_info=クリエイティブモード(1)、またはサバイバルモード(0)を選択してください
default_gamemode=デフォルトのゲームモード
max_players=最大プレイヤー数
spawn_protection_info=スポーンプロテクションは、OPでないプレイヤーによるスポーン地点付近でのブロックの設置/破壊を制限します
spawn_protection=スポーンプロテクションを有効にしますか?
op_info=OPとはそのサーバの管理権限を指します。OPを持ったプレイヤーは他のプレイヤーよりも多くのコマンドを使用できます。
op_who=OPプレイヤー名(例: あなたのゲーム内での名前)
op_warning=後から/op <プレイヤー名>コマンドを実行してOPプレイヤーを追加することもできます
whitelist_info=ホワイトリストはこのサーバに入ることのできるプレイヤーを制限します。
whitelist_enable=ホワイトリストを有効にしますか?
whitelist_warning=プレイヤーをホワイトリストに追加してください
query_warning1=クエリは他のツールによりあなたのサーバやプレイヤーの情報を取得するためのプロトコルです。
query_warning2=それを無効にした場合、サーバリストを使用できなくなる可能性があります。
query_disable=クエリを無効にしますか?
rcon_info=RCONはパスワードを用いてサーバコンソールからリモート接続するためのプロトコルです。
rcon_enable=RCONを有効にしますか
rcon_password=RCONパスワード(後から変更できます)
usage_info=世界中で使われているPocketMine-MPやそのプラグインの統計を算出するために匿名の使用データが送信されます。統計はこちらから確認できます。stats.pocketmine.net
usage_disable=匿名の使用データの送信を拒否しますか?
ip_get=グローバルIPとプライベートIPの取得
ip_warning=あなたのグローバルIPは{{EXTERNAL_IP}}です。プライベートIP{{INTERNAL_IP}}をポート解放してください。
ip_confirm=必ずポート解放ができているか確認してください。ポートが解放できていなかった場合、他のプレイヤーがサーバに入れなくなる恐れがあります。[Enterキーを押してください]
you_have_finished=セットアップは正しく終了しました
pocketmine_will_start=PocketMine_MPを起動します。/helpと入力すれば使用可能なコマンド一覧を表示できます。
pocketmine_plugins=拡張機能や管理システム、ミニゲームなどを追加できるプラグインリポジトリも確認してみてください

View File

@ -0,0 +1,45 @@
language_has_been_selected=한국어가 언어로 선택되었습니다.
skip_installer=설치 마법사를 건너뛰겠습니까?
welcome_to_pocketmine=PocketMine-MP에 오신 것을 환영합니다!\n서버 설치를 시작하기 전, 약관에 동의해야 합니다. \nPocketMine-MP는 GNU 약소 일반 공중 사용 허가서(LGPL) 하에 배포되고 있습니다. \n이 폴더에서 약관을 읽을 수 있습니다.
accept_license=약관에 동의하십니까?
you_have_to_accept_the_license=GNU 약소 일반 공중 사용 허가서(LGPL)에 동의해야 PocketMine-MP를 사용할 수 있습니다
setting_up_server_now=서버 설정을 시작합니다.
default_values_info=기본값을 수정하고 싶지 않으면, 엔터를 누르십시오.
server_properties=이 설정들은 server.properties 파일에서 세부적으로 변경할 수 있습니다.
name_your_server=당신의 서버 이름을 입력하십시오
port_warning=만약 당신이 서버를 처음 설정한다면 포트 값을 변경하지 마십시오.
server_port=서버 포트
invalid_port=서버 포트가 잘못 입력되었습니다
ram_warning=RAM 값은 PocketMine-MP에 할당할 메모리의 크기입니다. 128~256MB를 권장합니다.
server_ram=서버 RAM (MB)
gamemode_info=크리에이티브 (1) 또는 서바이벌 (0) 게임모드 중 하나를 고르십시오
default_gamemode=기본 게임 모드
max_players=최대 동시 접속 인원 수
spawn_protection_info=스폰 보호는 OP를 제외한 유저들이 스폰 지역 근처에서 블럭을 놓거나 부수는것을 방지합니다
spawn_protection=스폰 지역 보호를 사용하겠습니까?
op_info=OP는 서버 관리자를 뜻합니다. OP는 일반 플레이어보다 훨씬 많은 명령어들을 사용할 수 있습니다
op_who=OP 권한을 줄 플레이어 이름(예: 당신의 닉네임)
op_warning=또는 이후에 /op <플레이어 이름> 을 입력해 그 유저에게 OP 권한을 줄 수도 있습니다
whitelist_info=화이트리스트를 사용하면 허용된 플레이어들만 서버에 접속할 수 있습니다.
whitelist_enable=화이트리스트를 사용하겠습니까?
whitelist_warning=당신은 접속을 허용할 플레이어들의 이름을 적어야 합니다
query_warning1=쿼리 (Query)는 당신의 서버와 현재 접속한 플레이어들의 정보를 알 수 있게 해주는 여러가지 기능이 담긴 프로토콜입니다.
query_warning2=쿼리를 사용하지 않으면, 당신은 서버 리스트를 사용할 수 없게 됩니다.
query_disable=쿼리를 사용하지 않겠습니까?
rcon_info=RCON은 비밀 번호를 사용하여 서버 명령창에 원격으로 접소갈 수 있는 프로토콜입니다.
rcon_enable=RCON 을 사용하시겠습니까?
rcon_password=RCON 비밀번호 설정 (나중에 server.properties 에서 변경이 가능합니다.)
usage_info=익명 사용 통계 전송을 허용하면 PocketMine-MP가 세계의 서버 상황과 플러그인들을 통계화하는 데 사용할 수 있습니다. 당신은 stats.pocketmine.net에서 이를 확인할 수 있습니다
usage_disable=익명 사용 통계 전송을 사용하지 않으시겠습니까?
ip_get=내/외부 IP 주소 얻기
ip_warning=당신의 외부 IP는 {{EXTERNAL_IP}}입니다. 당신의 내부 IP {{INTERNAL_IP}}로 포트포워딩이 필요할 수 있습니다
ip_confirm=신중하게 확인하세요. 만약 포트 포워딩이 필요하지만 하지 않을 경우 외부에서 플레이어들이 접속할 수 없게 됩니다. [계속 하시려면 엔터를 누르세요]
you_have_finished=PocketMine-MP의 설치가 모두 완료되었습니다.
pocketmine_will_start=PocketMine-MP 서버를 구동합니다. /help로 사용 가능한 모든 명령어의 목록을 보시기 바랍니다.
pocketmine_plugins=플러그인 저장소에서 새로운 기능을 추가하세요. 새로운 기능, 미니게임을 추가하거나 고급 기능으로 당신의 서버를 보호할 수 있습니다

View File

@ -0,0 +1,6 @@

View File

@ -0,0 +1,6 @@

View File

@ -0,0 +1,6 @@

View File

@ -0,0 +1,45 @@
language_has_been_selected=Nederlands is nu geselecteerd.
skip_installer=Wil je de set-up help overslaan?
welcome_to_pocketmine=Welkom op de PocketMine-MP!\nVoordat je je nieuwe server klaarmaakt, moet je onze gebruikersovereenkomst accepteren.\nPocketMine-MP is gelicenseerd onder LGPL License,\nwat je kunt lezen door de LICENSE file in deze map te openen.
accept_license=Accepteer je de gebruikersvoorwaarden?
you_have_to_accept_the_license=Je moet de LGPL gebruikersvoorwaarden accepteren voordat je verder gaat met het gebruiken van de services van PocketMine-MP
setting_up_server_now=Je gaat nu een server klaarmaken voor gebruik.
default_values_info=Druk op Enter als je de gebruikelijke waarde niet wilt veranderen.
server_properties=Je kunt ze later veranderen in het server.properties bestand.
name_your_server=Geef een naam aan je server
port_warning=Verander de gebruikelijke poort niet als dit je eerste server is.
server_port=Server poort
invalid_port=Ongeldige server poort
ram_warning=De RAM is het maximale aantal memory wat PocketMine-MP zal gebruiken. Een aantal tussen de 128 en de 256 MB is aanbevolen
server_ram=Server RAM in MB
gamemode_info=Kies tussen Creative (1) of Survival (0)
default_gamemode=Gebruikelijke spelmodus
max_players=Maximale online spelers
spawn_protection_info=De spawnbeveiliging verbiedt het plaatsen/slopen van blokken in het spawn gebied behalve voor OP's
spawn_protection=Wil je spawnbeveiliging aanzetten?
op_info=Een OP is de beheerder van de server. OP's kunnen meer commando's gebruiken dan normale spelers
op_who=OP speler naam (voorbeeld: je username)
op_warning=Je kunt later meerdere OP's toevoegen met het commando /op <player>
whitelist_info=De whitelist laat alleen de spelers die in de lijst staan op de server.
whitelist_enable=Wil je de white-list aanzetten?
whitelist_warning=Je moet wel spelers aan de whitelist toevoegen.
query_warning1=Query is een protocol dat gebruikt wordt door verschillende programma's om informatie te verkrijgen van je server en welke spelers ingelogd zijn.
query_warning2=Als je het uitzet, zul je geen mogelijkheid hebben om server lijsten te gebruiken.
query_disable=Wil je Query uitschakelen?
rcon_info=RCON is een protocol om je server op afstand te beheren via de server console door middel van een wachtwoord.
rcon_enable=Wil je RCON aanzetten?
rcon_password=RCON wachtwoord (deze kun je later veranderen)
usage_info=De anonieme gebruikersdata laat ons toe om de globale statistieken voor PocketMine-ML te zien en zijn plugins. Je kunt de statistieken zien op stats.pocketmine.net
usage_disable=Wil je anonieme data uitschakelen?
ip_get=Je externe IP en interne IP verkrijgen
ip_warning=Je externe IP is {{EXTERNAL_IP}}. Het is mogelijk dat je moet port-forwarden naar je interne IP:{{INTERNAL_IP}}
ip_confirm=Wees niet bang om het te controleren, als je moet port-forwarden en je slaat dit over, kunnen externe spelers niet op de server.
you_have_finished=Je hebt de set-up help volledig beëindigd.
pocketmine_will_start=PocketMine-MP zal nu starten. Type /help om een lijst met alle beschikbare commando's te zien.
pocketmine_plugins=Check de Plugin Opslag om nieuwe features, minigames of geavanceerde spawnbeveiliging toe te voegen aan je server

View File

@ -0,0 +1,6 @@

View File

@ -0,0 +1,6 @@

View File

@ -0,0 +1,6 @@

View File

@ -0,0 +1,45 @@
language_has_been_selected=Английский был выбран правильно.
skip_installer=Вы хотите пропустить мастер настройки?
welcome_to_pocketmine=Добро пожаловать в PocketMine-MP!\nПеред началом установки нового сервера, вы должны согласиться с лицензией. \nPocketMine-MP лицензировано на условиях LGPL лицензии, \nс которой вы можете ознакомиться, открыв файл LICENSE в этой папке.
accept_license=Принимаете ли вы лицензию?
you_have_to_accept_the_license=Вы должны принять LGPL лицензию, чтобы продолжить использование PocketMine-MP
setting_up_server_now=Теперь вы можете настроить сервер.
default_values_info=Если вы не хотите изменять стандартное значение, просто нажмите Enter.
server_properties=Вы можете редактировать их позже в файле server.properties.
name_your_server=Дайте имя вашему серверу
port_warning=Не изменяйте значение порта по умолчанию, если это ваш первый сервер.
server_port=Порт сервера
invalid_port=Неверный порт сервера
ram_warning=RAM - максимальный объем памяти, котооый будет использовать PocketMine-MP, рекомендуемое значение 128-256 МБ
server_ram=Оперативная память сервера в МБ
gamemode_info=Выберите между Креативом-(1), или Выживанием (0)
default_gamemode=Режим игры по умолчанию
max_players=Максимум онлайн игроков
spawn_protection_info=Защита спавна запрещает размещение/разрушение блоков на спавне, за исключением операторов
spawn_protection=Включить защиту спавна?
op_info=Оператор - Администратор сервера, который может использовать больше команд, чем обычный игрок
op_who=Имя оператора (К примеру ваш ник в игре)
op_warning=Вы можете добавить оператора позже используя команду /op <player>
whitelist_info=White-list позволяет присоединиться только игрокам в этом списке.
whitelist_enable=Вы хотите включить white-list?
whitelist_warning=Вам придётся добавить игроков в white-list
query_warning1=Query это протокол, используемый разными инструментами, чтобы получить информацию о вашем сервере и о зашедших игроках.
query_warning2=Если вы отключите его, вы не сможете использовать списки серверов.
query_disable=Вы хотите отключить Query?
rcon_info=RCON - это протокол для удаленного управления сервером через консоль, с использованием пароля.
rcon_enable=Вы хотите включить RCON?
rcon_password=RCON пароль (вы сможете изменить его позже)
usage_info=Сбор анонимных данных о использовании поможет нам проанализировать глобальную статистику для PocketMine-MP и плагинов. Статистика доступна по адресу stats.pocketmine.net
usage_disable=Вы хотите отключить сбор анонимных данных о использовании?
ip_get=Получение вашего внешнего и внутреннего IP адреса
ip_warning=Ваш внешний IP адрес: {{EXTERNAL_IP}}. Возможно вам необходимо открыть порты к вашему внутреннему IP адресу: {{INTERNAL_IP}}
ip_confirm=Убедитесь в том, что вы открыли порты, в противном случае игроки вне вашей локальной сети не смогут подключится. [Нажмите Enter]
you_have_finished=Вы закончили работу с мастером установки
pocketmine_will_start=PocketMine-MP сейчас запустится. Введите /help для просмотра доступных вам команд.
pocketmine_plugins=Посетите репозиторий плагинов для получения новых функций, мини-игр, или повышения защиты вашего сервера

View File

@ -0,0 +1,6 @@

View File

@ -0,0 +1,6 @@

View File

@ -0,0 +1,6 @@

View File

@ -0,0 +1,12 @@
language_has_been_selected=İngilizce seçildi.
skip_installer=Kurulum yazılımını atlamak istiyormusunuz?
accept_license=Lisansı kabul ediyormusunuz?
you_have_to_accept_the_license=PocketMine-MP'yi kullanabilmeniz için LGPL lisansını kabul etmeniz gereklidir
setting_up_server_now=Sunucunuz şimdi kurulacak, Devam edilsin mi?
invalid_port=Yanlış sunucu port'u

View File

@ -0,0 +1,6 @@

View File

@ -0,0 +1,46 @@
language_has_been_selected=您现在选择了简体中文.
skip_installer=您想跳过安装向导吗?
welcome_to_pocketmine=欢迎来到PocketMine-MP!\n在开始使用您的新服务器之前您需要接受以下协议\nPocketMine-MP使用了LGPL协议,\n你可以在这个文件夹中找到LICENCE文件.
accept_license=您接受协议内容吗?
you_have_to_accept_the_license=您接受了LGPL协议来继续使用PocketMine-MP
setting_up_server_now=你现在要开始设置您的服务器了
default_values_info=如果您希望留住默认设置请直接按下回车键.
server_properties=您以后可以在server.properties中修改设置.
name_your_server=命名您的服务器:
port_warning=尽量不要改变端口如果这是您第一次设置服务器.
server_port=服务器端口:
invalid_port=不正确的服务器端口.
ram_warning=RAM是PocketMine-MP可用的最大内存. 推荐范围: 128-256 MB
server_ram=分配给服务器的内存(MB):
gamemode_info=选择模式: (1)生存模式 或 (2)创造模式
default_gamemode=默认游戏模式
max_players=最大在线人数
spawn_protection_info=出生点保护可以在出生点范围内保护所有方块不被摆放/破坏.
spawn_protection=启用出生点保护?
op_info=OP是一个服务器的管理员, 可以执行比普通玩家更多的命令.
op_who=OP的用户名是什么?
op_warning=你可以执行\"/op <用户名>\"来添加OP.
whitelist_info=白名单可以只允许在其列表内的玩家加入.
whitelist_enable=您想启用白名单吗?
whitelist_warning=你可以用\"/whitelist add <用户名>\"把别人加入白名单.
query_warning1=请求是一个用于不同的程序的协议用来获取您服务器数据和登录的玩家.
query_warning2=如果您禁止了它, 您将不能使用服务器列表.
query_disable=您希望禁用Query请求吗?
rcon_info=RCON是一个用来远程连接到服务器控制台的协议(需要密码).
rcon_enable=您希望启用RCON吗?
rcon_password=RCON密码 (您也以后更改它) :
usage_info=匿名数据让我们可以获得全球的PocketMine-MP和它的插件的统计信息. 您可以在 stats.pocketmine.net 查看统计信息.
usage_disable=您希望禁用匿名数据吗?
ip_get=获得你的外部IP和内部IP
ip_warning=您的外部IP是 {{EXTERNAL_IP}} . 您可能需要端口转发到您的内网IP {{INTERNAL_IP}} .
ip_confirm=请确认您检查了它, 如果您直接进入下一步并跳过这一步, 没有外部的玩家可以加入. [按\"回车\"键]
you_have_finished=您已经成功完成了服务器设置向导.
pocketmine_will_start=PocketMine-MP现在开始运行. 输入 \"/help\" 来看所有可用的命令.
pocketmine_plugins=请查看插件源来添加新的功能, 迷你游戏或者对服务器的高级保护.

View File

@ -0,0 +1,45 @@
language_has_been_selected={crwdns106:0}{crwdne106:0}
skip_installer={crwdns107:0}{crwdne107:0}
welcome_to_pocketmine={crwdns108:0}{crwdne108:0}
accept_license={crwdns109:0}{crwdne109:0}
you_have_to_accept_the_license={crwdns110:0}{crwdne110:0}
setting_up_server_now={crwdns111:0}{crwdne111:0}
default_values_info={crwdns112:0}{crwdne112:0}
server_properties={crwdns113:0}{crwdne113:0}
name_your_server={crwdns114:0}{crwdne114:0}
port_warning={crwdns115:0}{crwdne115:0}
server_port={crwdns116:0}{crwdne116:0}
invalid_port={crwdns117:0}{crwdne117:0}
ram_warning={crwdns118:0}{crwdne118:0}
server_ram={crwdns119:0}{crwdne119:0}
gamemode_info={crwdns120:0}{crwdne120:0}
default_gamemode={crwdns121:0}{crwdne121:0}
max_players={crwdns122:0}{crwdne122:0}
spawn_protection_info={crwdns123:0}{crwdne123:0}
spawn_protection={crwdns124:0}{crwdne124:0}
op_info={crwdns125:0}{crwdne125:0}
op_who={crwdns126:0}{crwdne126:0}
op_warning={crwdns127:0}{crwdne127:0}
whitelist_info={crwdns128:0}{crwdne128:0}
whitelist_enable={crwdns129:0}{crwdne129:0}
whitelist_warning={crwdns130:0}{crwdne130:0}
query_warning1={crwdns131:0}{crwdne131:0}
query_warning2={crwdns132:0}{crwdne132:0}
query_disable={crwdns133:0}{crwdne133:0}
rcon_info={crwdns134:0}{crwdne134:0}
rcon_enable={crwdns135:0}{crwdne135:0}
rcon_password={crwdns136:0}{crwdne136:0}
usage_info={crwdns137:0}{crwdne137:0}
usage_disable={crwdns138:0}{crwdne138:0}
ip_get={crwdns139:0}{crwdne139:0}
ip_warning={crwdns140:0}{{EXTERNAL_IP}}{crwdnd140:0}{{INTERNAL_IP}}{crwdne140:0}
ip_confirm={crwdns141:0}{crwdne141:0}
you_have_finished={crwdns142:0}{crwdne142:0}
pocketmine_will_start={crwdns143:0}{crwdne143:0}
pocketmine_plugins={crwdns144:0}{crwdne144:0}

View File

@ -20,12 +20,22 @@
*/
class DoorBlock extends TransparentBlock{
public function __construct($id, $meta = 0, $name = "Unknown"){
/**
* @param int $id
* @param int $meta
* @param string $name
*/
public function __construct($id, $meta = 0, $name = "Unknown"){
parent::__construct($id, $meta, $name);
$this->isSolid = false;
}
public function onUpdate($type){
/**
* @param int $type
*
* @return bool|int
*/
public function onUpdate($type){
if($type === BLOCK_UPDATE_NORMAL){
if($this->getSide(0)->getID() === AIR){ //Replace with common break method
$this->level->setBlock($this, new AirBlock(), false);
@ -38,7 +48,19 @@ class DoorBlock extends TransparentBlock{
return false;
}
public function place(Item $item, Player $player, Block $block, Block $target, $face, $fx, $fy, $fz){
/**
* @param Item $item
* @param Player $player
* @param Block $block
* @param Block $target
* @param integer $face
* @param integer $fx
* @param integer $fy
* @param integer $fz
*
* @return boolean
*/
public function place(Item $item, Player $player, Block $block, Block $target, $face, $fx, $fy, $fz){
if($face === 1){
$blockUp = $this->getSide(1);
$blockDown = $this->getSide(0);
@ -66,8 +88,14 @@ class DoorBlock extends TransparentBlock{
}
return false;
}
public function onBreak(Item $item, Player $player){
/**
* @param Item $item
* @param Player $player
*
* @return boolean
*/
public function onBreak(Item $item, Player $player){
if(($this->meta & 0x08) === 0x08){
$down = $this->getSide(0);
if($down->getID() === $this->id){
@ -82,8 +110,14 @@ class DoorBlock extends TransparentBlock{
$this->level->setBlock($this, new AirBlock(), true, false, true);
return true;
}
public function onActivate(Item $item, Player $player){
/**
* @param Item $item
* @param Player $player
*
* @return boolean
*/
public function onActivate(Item $item, Player $player){
if(($this->meta & 0x08) === 0x08){ //Top
$down = $this->getSide(0);
if($down->getID() === $this->id){

View File

@ -20,12 +20,29 @@
*/
class FallableBlock extends SolidBlock{
public function __construct($id, $meta = 0, $name = "Unknown"){
/**
* @param int $id
* @param int $meta
* @param string $name
*/
public function __construct($id, $meta = 0, $name = "Unknown"){
parent::__construct($id, $meta, $name);
$this->hasPhysics = true;
}
public function place(Item $item, Player $player, Block $block, Block $target, $face, $fx, $fy, $fz){
/**
* @param Item $item
* @param Player $player
* @param Block $block
* @param Block $target
* @param int $face
* @param int $fx
* @param int $fy
* @param int $fz
*
* @return mixed
*/
public function place(Item $item, Player $player, Block $block, Block $target, $face, $fx, $fy, $fz){
$ret = $this->level->setBlock($this, $this, true, false, true);
ServerAPI::request()->api->block->blockUpdate(clone $this, BLOCK_UPDATE_NORMAL);
return $ret;

View File

@ -20,7 +20,12 @@
*/
class FlowableBlock extends TransparentBlock{
public function __construct($id, $meta = 0, $name = "Unknown"){
/**
* @param int $id
* @param int $meta
* @param string $name
*/
public function __construct($id, $meta = 0, $name = "Unknown"){
parent::__construct($id, $meta, $name);
$this->isFlowable = true;
$this->isFullBlock = false;

View File

@ -21,22 +21,57 @@
class GenericBlock extends Block{
public function __construct($id, $meta = 0, $name = "Unknown"){
/**
* @param int $id
* @param int $meta
* @param string $name
*/
public function __construct($id, $meta = 0, $name = "Unknown"){
parent::__construct($id, $meta, $name);
}
public function place(Item $item, Player $player, Block $block, Block $target, $face, $fx, $fy, $fz){
}
/**
* @param Item $item
* @param Player $player
* @param Block $block
* @param Block $target
* @param integer $face
* @param integer $fx
* @param integer $fy
* @param integer $fz
*
* @return mixed
*/
public function place(Item $item, Player $player, Block $block, Block $target, $face, $fx, $fy, $fz){
return $this->level->setBlock($this, $this, true, false, true);
}
public function isBreakable(Item $item, Player $player){
/**
* @param Item $item
* @param Player $player
*
* @return boolean
*/
public function isBreakable(Item $item, Player $player){
return ($this->breakable);
}
public function onBreak(Item $item, Player $player){
/**
* @param Item $item
* @param Player $player
*
* @return mixed
*/
public function onBreak(Item $item, Player $player){
return $this->level->setBlock($this, new AirBlock(), true, false, true);
}
public function onUpdate($type){
/**
* @param integer $type
*
* @return boolean
*/
public function onUpdate($type){
if($this->hasPhysics === true and $type === BLOCK_UPDATE_NORMAL){
$down = $this->getSide(0);
if($down->getID() === AIR or ($down instanceof LiquidBlock)){
@ -57,7 +92,13 @@ class GenericBlock extends Block{
return false;
}
public function onActivate(Item $item, Player $player){
/**
* @param Item $item
* @param Player $player
*
* @return boolean
*/
public function onActivate(Item $item, Player $player){
return $this->isActivable;
}
}

View File

@ -20,7 +20,12 @@
*/
class LiquidBlock extends TransparentBlock{
public function __construct($id, $meta = 0, $name = "Unknown"){
/**
* @param int $id
* @param int $meta
* @param string $name
*/
public function __construct($id, $meta = 0, $name = "Unknown"){
parent::__construct($id, $meta, $name);
$this->isLiquid = true;
$this->breakable = false;

View File

@ -20,7 +20,12 @@
*/
class SolidBlock extends GenericBlock{
public function __construct($id, $meta = 0, $name = "Unknown"){
/**
* @param int $id
* @param int $meta
* @param string $name
*/
public function __construct($id, $meta = 0, $name = "Unknown"){
parent::__construct($id, $meta, $name);
$this->isSolid = true;
$this->isFullBlock = true;

View File

@ -20,7 +20,12 @@
*/
class StairBlock extends TransparentBlock{
public function __construct($id, $meta = 0, $name = "Unknown"){
/**
* @param int $id
* @param int $meta
* @param string $name
*/
public function __construct($id, $meta = 0, $name = "Unknown"){
parent::__construct($id, $meta, $name);
if(($this->meta & 0x04) === 0x04){
$this->isFullBlock = true;
@ -30,7 +35,19 @@ class StairBlock extends TransparentBlock{
$this->hardness = 30;
}
public function place(Item $item, Player $player, Block $block, Block $target, $face, $fx, $fy, $fz){
/**
* @param Item $item
* @param Player $player
* @param Block $block
* @param Block $target
* @param int $face
* @param int $fx
* @param int $fy
* @param int $fz
*
* @return bool|mixed
*/
public function place(Item $item, Player $player, Block $block, Block $target, $face, $fx, $fy, $fz){
$faces = array(
0 => 0,
1 => 2,
@ -44,8 +61,14 @@ class StairBlock extends TransparentBlock{
$this->level->setBlock($block, $this, true, false, true);
return true;
}
public function getDrops(Item $item, Player $player){
/**
* @param Item $item
* @param Player $player
*
* @return array
*/
public function getDrops(Item $item, Player $player){
if($item->isPickaxe() >= 1){
return array(
array($this->id, 0, 1),

View File

@ -20,7 +20,12 @@
*/
class TransparentBlock extends GenericBlock{
public function __construct($id, $meta = 0, $name = "Unknown"){
/**
* @param int $id
* @param int $meta
* @param string $name
*/
public function __construct($id, $meta = 0, $name = "Unknown"){
parent::__construct($id, $meta, $name);
$this->isActivable = false;
$this->breakable = true;

View File

@ -45,11 +45,11 @@ class LadderBlock extends TransparentBlock{
public function onUpdate($type){
if($type === BLOCK_UPDATE_NORMAL){
if($this->getSide(0)->getID() === AIR){ //Replace with common break method
/*if($this->getSide(0)->getID() === AIR){ //Replace with common break method
ServerAPI::request()->api->entity->drop($this, BlockAPI::getItem(LADDER, 0, 1));
$this->level->setBlock($this, new AirBlock(), true, true, true);
return BLOCK_UPDATE_NORMAL;
}
}*/
}
return false;
}

View File

@ -113,6 +113,10 @@ class LavaBlock extends LiquidBlock{
if($sb instanceof LavaBlock){
$tlevel = $sb->meta & 0x07;
if($tlevel != 0x00){
for ($s = 0; $s <= 5; $s++) {
$ssb = $sb->getSide($s);
ServerAPI::request()->api->block->scheduleBlockUpdate(new Position($ssb, 0, 0, $this->level), 40, BLOCK_UPDATE_NORMAL);
}
$this->level->setBlock($sb, new AirBlock(), false, false, true);
}
}
@ -120,6 +124,10 @@ class LavaBlock extends LiquidBlock{
if($b instanceof LavaBlock){
$tlevel = $b->meta & 0x07;
if($tlevel != 0x00){
for ($s = 0; $s <= 5; $s++) {
$ssb = $sb->getSide($s);
ServerAPI::request()->api->block->scheduleBlockUpdate(new Position($ssb, 0, 0, $this->level), 40, BLOCK_UPDATE_NORMAL);
}
$this->level->setBlock($b, new AirBlock(), false, false, true);
}
}

View File

@ -119,6 +119,10 @@ class WaterBlock extends LiquidBlock{
if($sb instanceof WaterBlock){
$tlevel = $sb->meta & 0x07;
if($tlevel != 0x00){
for ($s = 0; $s <= 5; $s++) {
$ssb = $sb->getSide($s);
ServerAPI::request()->api->block->scheduleBlockUpdate(new Position($ssb, 0, 0, $this->level), 10, BLOCK_UPDATE_NORMAL);
}
$this->level->setBlock($sb, new AirBlock(), false, false, true);
}
}
@ -126,6 +130,10 @@ class WaterBlock extends LiquidBlock{
if($b instanceof WaterBlock){
$tlevel = $b->meta & 0x07;
if($tlevel != 0x00){
for ($s = 0; $s <= 5; $s++) {
$ssb = $sb->getSide($s);
ServerAPI::request()->api->block->scheduleBlockUpdate(new Position($ssb, 0, 0, $this->level), 10, BLOCK_UPDATE_NORMAL);
}
$this->level->setBlock($b, new AirBlock(), false, false, true);
}
}

View File

@ -193,8 +193,10 @@ class CustomPacketHandler{
case MC_SET_TIME:
if($this->c === false){
$this->data["time"] = Utils::readInt($this->get(4));
$this->data["started"] = ord($this->get(1)) & 0x80 > 0;
}else{
$this->raw .= Utils::writeInt($this->data["time"])."\x80";
$this->raw .= chr((isset($this->data["started"]) and $this->data["started"] == true) ? 0x80:0x00);
}
break;
case MC_START_GAME:

View File

@ -28,11 +28,29 @@ define("CONFIG_YAML", 2); // .yml, .yaml
define("CONFIG_SERIALIZED", 4); // .sl
define("CONFIG_LIST", 5); // .txt, .list
/**
* Class Config
*
* Config Class for simple config manipulation of multiple formats.
*/
class Config{
private $config;
private $file;
private $correct;
private $type = CONFIG_DETECT;
/**
* @var array
*/
private $config;
/**
* @var string
*/
private $file;
/**
* @var boolean
*/
private $correct;
/**
* @var integer
*/
private $type = CONFIG_DETECT;
public static $formats = array(
"properties" => CONFIG_PROPERTIES,
"cnf" => CONFIG_CNF,
@ -49,7 +67,14 @@ class Config{
"txt" => CONFIG_LIST,
"list" => CONFIG_LIST,
);
public function __construct($file, $type = CONFIG_DETECT, $default = array(), &$correct = null){
/**
* @param string $file
* @param int $type
* @param array $default
* @param null|boolean $correct
*/
public function __construct($file, $type = CONFIG_DETECT, $default = array(), &$correct = null){
$this->load($file, $type, $default);
$correct = $this->check();
}
@ -61,8 +86,15 @@ class Config{
$this->load($this->file);
$correct = $this->check();
}
public function load($file, $type = CONFIG_DETECT, $default = array()){
/**
* @param string $file
* @param int $type
* @param array $default
*
* @return boolean
*/
public function load($file, $type = CONFIG_DETECT, $default = array()){
$this->correct = true;
$this->type = (int) $type;
$this->file = $file;
@ -118,12 +150,18 @@ class Config{
}
return true;
}
public function check(){
/**
* @return boolean
*/
public function check(){
return $this->correct === true;
}
public function save(){
/**
* @return boolean
*/
public function save(){
if($this->correct === true){
switch($this->type){
case CONFIG_PROPERTIES:
@ -149,41 +187,70 @@ class Config{
return false;
}
}
public function &__get($k){
/**
* @param $k
*
* @return boolean|mixed
*/
public function &__get($k){
return $this->get($k);
}
public function __set($k, $v){
return $this->set($k, $v);
/**
* @param $k
* @param $v
*/
public function __set($k, $v){
$this->set($k, $v);
}
public function __isset($k){
/**
* @param $k
*
* @return boolean
*/
public function __isset($k){
return $this->exists($k);
}
public function __unset($k){
return $this->remove($k);
/**
* @param $k
*/
public function __unset($k){
$this->remove($k);
}
public function &get($k){
/**
* @param $k
*
* @return boolean|mixed
*/
public function &get($k){
if(isset($this->correct) and ($this->correct === false or !isset($this->config[$k]))){
$false = false;
return $false;
}
return $this->config[$k];
}
public function set($k, $v = true){
/**
* @param $k
* @param bool $v
*/
public function set($k, $v = true){
$this->config[$k] = $v;
}
public function setAll($v){
/**
* @param array $v
*/
public function setAll($v){
$this->config = $v;
}
/**
* @param mixed $k
* @param $k
* @param bool $lowercase If set, searches Config in single-case / lowercase.
*
* @return boolean
@ -197,16 +264,30 @@ class Config{
return isset($this->config[$k]);
endif;
}
public function remove($k){
/**
* @param $k
*/
public function remove($k){
unset($this->config[$k]);
}
public function getAll($keys = false){
/**
* @param bool $keys
*
* @return array
*/
public function getAll($keys = false){
return ($keys === true ? array_keys($this->config):$this->config);
}
private function fillDefaults($default, &$data){
/**
* @param $default
* @param $data
*
* @return integer
*/
private function fillDefaults($default, &$data){
$changed = 0;
foreach($default as $k => $v){
if(is_array($v)){
@ -222,7 +303,10 @@ class Config{
return $changed;
}
private function parseList($content){
/**
* @param $content
*/
private function parseList($content){
foreach(explode("\n", trim(str_replace("\r\n", "\n", $content))) as $v){
$v = trim($v);
if($v == ""){
@ -231,8 +315,11 @@ class Config{
$this->config[$v] = true;
}
}
private function writeProperties(){
/**
* @return string
*/
private function writeProperties(){
$content = "#Properties Config file\r\n#".date("D M j H:i:s T Y")."\r\n";
foreach($this->config as $k => $v){
if(is_bool($v) === true){
@ -244,8 +331,11 @@ class Config{
}
return $content;
}
private function parseProperties($content){
/**
* @param $content
*/
private function parseProperties($content){
if(preg_match_all('/([a-zA-Z0-9\-_\.]*)=([^\r\n]*)/u', $content, $matches) > 0){ //false or 0 matches
foreach($matches[1] as $i => $k){
$v = trim($matches[2][$i]);

View File

@ -28,7 +28,7 @@ class Utils{
public static $ip = false;
public static function isOnline(){
return ((@fsockopen("google.com", 80) !== false or @fsockopen("www.linux.org", 80) !== false or @fsockopen("www.php.net", 80) !== false) ? true:false);
return ((@fsockopen("google.com", 80, $e = null, $n = null, 2) !== false or @fsockopen("www.linux.org", 80, $e = null, $n = null, 2) !== false or @fsockopen("www.php.net", 80, $e = null, $n = null, 2) !== false) ? true:false);
}
public static function getIP($force = false){

View File

@ -130,6 +130,9 @@ class Entity extends Position{
if($this->type === OBJECT_PAINTING){
$this->isStatic = true;
}elseif($this->type === OBJECT_PRIMEDTNT){
if(!isset($this->data["fuse"])){
$this->data["fuse"] = 0;
}
$this->setHealth(10000000, "generic");
$this->server->schedule(5, array($this, "updateFuse"), array(), true);
$this->update();
@ -239,7 +242,7 @@ class Entity extends Position{
$time = microtime(true);
if($this->class === ENTITY_PLAYER and ($this->player instanceof Player) and $this->player->spawned === true and $this->player->blocked !== true){
foreach($this->server->api->entity->getRadius($this, 1.5, ENTITY_ITEM) as $item){
if($item->spawntime > 0 and ($time - $item->spawntime) >= 0.6){
if($item->closed === false and $item->spawntime > 0 and ($time - $item->spawntime) >= 0.6){
if((($this->player->gamemode & 0x01) === 1 or $this->player->hasSpace($item->type, $item->meta, $item->stack) === true) and $this->server->api->dhandle("player.pickup", array(
"eid" => $this->player->eid,
"player" => $this->player,

View File

@ -21,7 +21,7 @@
class Level{
public $entities, $tiles, $blockUpdates, $nextSave, $players = array(), $level;
private $time, $startCheck, $startTime, $server, $name, $usedChunks, $changedBlocks, $changedCount;
private $time, $startCheck, $startTime, $server, $name, $usedChunks, $changedBlocks, $changedCount, $stopTime;
public function __construct(PMFLevel $level, Config $entities, Config $tiles, Config $blockUpdates, $name){
$this->server = ServerAPI::request();
@ -33,6 +33,7 @@ class Level{
$this->startTime = $this->time = (int) $this->level->getData("time");
$this->nextSave = $this->startCheck = microtime(true);
$this->nextSave += 90;
$this->stopTime = false;
$this->server->schedule(15, array($this, "checkThings"), array(), true);
$this->server->schedule(20 * 13, array($this, "checkTime"), array(), true);
$this->name = $name;
@ -70,11 +71,16 @@ class Level{
return false;
}
$now = microtime(true);
$time = $this->startTime + ($now - $this->startCheck) * 20;
if($this->stopTime == true){
}else{
$time = $this->startTime + ($now - $this->startCheck) * 20;
}
if($this->server->api->dhandle("time.change", array("level" => $this, "time" => $time)) !== false){
$this->time = $time;
$this->server->api->player->broadcastPacket($this->players, MC_SET_TIME, array(
"time" => (int) $this->time,
"started" => $this->stopTime == false,
));
}
}
@ -169,8 +175,8 @@ class Level{
$entities[] = array(
"id" => $entity->type,
"TileX" => $entity->x,
"TileX" => $entity->y,
"TileX" => $entity->z,
"TileY" => $entity->y,
"TileZ" => $entity->z,
"Health" => $entity->health,
"Motive" => $entity->data["Motive"],
"Pos" => array(
@ -470,6 +476,18 @@ class Level{
$this->checkTime();
}
public function stopTime(){
$this->stopTime = true;
$this->startCheck = 0;
$this->checkTime();
}
public function startTime(){
$this->stopTime = false;
$this->startCheck = microtime(true);
$this->checkTime();
}
public function getSeed(){
if(!isset($this->level)){
return false;
@ -490,4 +508,4 @@ class Level{
}
return $this->server->api->block->scheduleBlockUpdate($pos, $delay, $type);
}
}
}

View File

@ -3,13 +3,13 @@ TITLE PocketMine-MP server software for Minecraft: Pocket Edition
cd /d %~dp0
if exist bin\php\php.exe (
if exist bin\mintty.exe (
start "" bin\mintty.exe -o Columns=88 -o Rows=32 -o AllowBlinking=0 -o FontQuality=3 -o CursorType=0 -o CursorBlinks=1 -h error -t "PocketMine-MP" -i bin/pocketmine.ico -w max bin\php\php.exe -d enable_dl=On PocketMine-MP.php --enable-ansi %*
start "" bin\mintty.exe -o Columns=88 -o Rows=32 -o AllowBlinking=0 -o FontQuality=3 -o Font="DejaVu Sans Mono" -o FontHeight=10 -o CursorType=0 -o CursorBlinks=1 -h error -t "PocketMine-MP" -i bin/pocketmine.ico -w max bin\php\php.exe -d enable_dl=On PocketMine-MP.php --enable-ansi %*
) else (
bin\php\php.exe -d enable_dl=On PocketMine-MP.php %*
)
) else (
if exist bin\mintty.exe (
start "" bin\mintty.exe -o Columns=88 -o Rows=32 -o AllowBlinking=0 -o FontQuality=3 -o CursorType=0 -o CursorBlinks=1 -h error -t "PocketMine-MP" -i bin/pocketmine.ico -w max php -d enable_dl=On PocketMine-MP.php --enable-ansi %*
start "" bin\mintty.exe -o Columns=88 -o Rows=32 -o AllowBlinking=0 -o FontQuality=3 -o Font="DejaVu Sans Mono" -o FontHeight=10 -o CursorType=0 -o CursorBlinks=1 -h error -t "PocketMine-MP" -i bin/pocketmine.ico -w max php -d enable_dl=On PocketMine-MP.php --enable-ansi %*
) else (
php -d enable_dl=On PocketMine-MP.php %*
)