Added coordinates command. Displays your coordinates

This commit is contained in:
Michael Yoo 2013-04-20 14:45:35 +09:30
parent 82c72f8beb
commit 4434fe2a5b

View File

@ -34,6 +34,8 @@ class ChatAPI{
public function init(){
$this->server->api->console->register("tell", "<player> <private message ...>", array($this, "commandHandler"));
$this->server->api->console->register("me", "<action ...>", array($this, "commandHandler"));
$this->server->api->console->register("coordinates", "", array($this, "commandHandler"));
$this->server->api->ban->cmdWhitelist("coordinates");
$this->server->api->ban->cmdWhitelist("tell");
$this->server->api->ban->cmdWhitelist("me");
}
@ -41,6 +43,22 @@ class ChatAPI{
public function commandHandler($cmd, $params, $issuer, $alias){
$output = "";
switch($cmd){
case "coordinates":
if(!($issuer instanceof Player))
{//Console with player not specified
$output .= "[ERROR] Console cannot get his own position";//Print Error
}
else if($issuer instanceof Player)
{
$sender = $issuer->username;//Issued by player
$msg = "Your location is x=".$issuer->entity->x." y=".$issuer->entity->y." z=".$issuer->entity->z;
$this->sendTo(false, $msg, $sender);
}
else
{
$output .= "[ERROR] Command: Coordiates. Unknown sender.";
}
break;
case "me":
if(!($issuer instanceof Player)){
$sender = "Console";
@ -106,4 +124,4 @@ class ChatAPI{
}
$this->server->handle("server.chat", new Container($message, $whitelist, $blacklist));
}
}
}