本文整理匯總了PHP中pocketmine\command\CommandSender::getAddress方法的典型用法代碼示例。如果您正苦於以下問題:PHP CommandSender::getAddress方法的具體用法?PHP CommandSender::getAddress怎麽用?PHP CommandSender::getAddress使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類pocketmine\command\CommandSender
的用法示例。
在下文中一共展示了CommandSender::getAddress方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: onCommand
public function onCommand(CommandSender $player, Command $command, $label, array $args)
{
// 연속으로 7회 이상틀리면 밴 처리(이메일 전송포함)
if ($player instanceof Player) {
if (isset($this->wrongauth[$player->getAddress()])) {
if ($this->wrongauth[$player->getAddress()] >= 7) {
$this->getServer()->blockAddress($player->getAddress(), 400);
}
}
}
switch (strtolower($command->getName())) {
case $this->get("login"):
if ($this->getConfig()->get("servermode", null) == "slave") {
// 커스텀패킷이 작동하고 있고, 슬레이브모드면 일단 모든걸 중지 후
// 마스터서버로의 데이터가 오고 인증이 재기되기까지 대기
if ($this->checkCustomPacket) {
$this->api_custompacket->onCommand($player, $command, $label, $args);
return true;
}
}
if (!isset($this->needAuth[$player->getName()])) {
$this->message($player, $this->get("already-logined"));
return true;
}
if ($this->db->getEmail($player)) {
if (!isset($args[0])) {
$this->loginMessage($player);
return true;
}
$email = $this->db->getEmail($player);
if ($email != false) {
$data = $this->db->getUserData($email);
if ($data == false) {
$this->message($player, $this->get("this-account-cant-use"));
return true;
}
if ($data["password"] != $args[0]) {
$this->alert($player, $this->get("login-is-failed"));
if ($player instanceof Player) {
if (isset($this->wrongauth[$player->getAddress()])) {
$this->wrongauth[$player->getAddress()]++;
} else {
$this->wrongauth[$player->getAddress()] = 1;
}
}
$this->deauthenticatePlayer($player);
} else {
$this->authenticatePlayer($player);
}
}
} else {
$this->registerMessage($player);
return true;
}
break;
case $this->get("logout"):
if ($this->getConfig()->get("servermode", null) == "slave") {
// 커스텀패킷이 작동하고 있고, 슬레이브모드면 일단 모든걸 중지 후
// 마스터서버로의 데이터가 오고 인증이 재기되기까지 대기
if ($this->checkCustomPacket) {
$this->api_custompacket->onCommand($player, $command, $label, $args);
return;
}
}
$this->db->logout($this->db->getEmail($player));
$this->message($player, $this->get("logout-complete"));
break;
case $this->get("register"):
if ($this->getConfig()->get("servermode", null) == "slave") {
// 커스텀패킷이 작동하고 있고, 슬레이브모드면 일단 모든걸 중지 후
// 마스터서버로의 데이터가 오고 인증이 재기되기까지 대기
if ($this->checkCustomPacket) {
$this->api_custompacket->onCommand($player, $command, $label, $args);
return true;
}
}
// 가입 <이메일또는 코드> <원하는암호>
if (!isset($this->needAuth[$player->getName()])) {
$this->message($player, $this->get("already-logined"));
return true;
}
if (!isset($args[1])) {
$this->message($player, $this->get("you-need-a-register"));
return true;
}
$temp = $args;
array_shift($temp);
$password = implode($temp);
unset($temp);
if ($password > 50) {
$this->message($player, $this->get("you-need-a-register"));
return true;
}
if (!$this->db->checkAuthReady($player->getName())) {
if (strlen($password) < $this->getConfig()->get("minPasswordLength", 5)) {
$this->message($player, $this->get("too-short-password"));
return true;
}
} else {
if (!$this->db->checkAuthReadyKey($player->getName(), $password)) {
//.........這裏部分代碼省略.........