本文整理汇总了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)) {
//.........这里部分代码省略.........