當前位置: 首頁>>代碼示例>>PHP>>正文


PHP CommandSender::getAddress方法代碼示例

本文整理匯總了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)) {
//.........這裏部分代碼省略.........
開發者ID:nesgohood,項目名稱:PMMP-Plugins,代碼行數:101,代碼來源:EmailAuth.php


注:本文中的pocketmine\command\CommandSender::getAddress方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。