Плагин на авторизацию пароль при отправки в чат должен исчезать но он отпровляетя

пароль при отправки в чат должен исчезать но он отпровляетя

<?php

namespace PluGPluS;

use pocketmine\plugin\PluginBase;
use pocketmine\event\Listener;
use pocketmine\event\player\PlayerMoveEvent;
use pocketmine\event\player\PlayerChatEvent;
use pocketmine\event\player\PlayerJoinEvent;
use pocketmine\event\player\PlayerInteractEvent;
use pocketmine\event\player\PlayerToggleSprintEvent;
use pocketmine\event\player\PlayerDropItemEvent;
use pocketmine\event\player\PlayerCommandPreprocessEvent;
use pocketmine\command\CommandSender;
use pocketmine\command\Command;
use pocketmine\event\block\BlockBreakEvent;
use pocketmine\utils\Config;
use pocketmine\Server;
use pocketmine\Player;
use pocketmine\event\player\PlayerQuitEvent;
use pocketmine\scheduler\PluginTask;

class AuthPlus extends PluginBase implements Listener {

public $pass, $can;

public function onEnable() {
	$this->getServer()->getPluginManager()->registerEvents($this, $this);
	@mkdir($this->getDataFolder());
     $this->pass = new Config($this->getDataFolder()."passwords.yml", Config::YAML);
		
}

public function onCommand(CommandSender $sender, Command $cmd, $label, array $args) {
	switch($cmd->getName()) {
	case "cp":
		if(isset($args[0])) {
		if((strlen($args[0]) > 5)) {
			$this->pass->setNested("players.".strtolower($sender->getName()).".password", $args[0]);
				$this->pass->save();
				$sender->sendMessage("§l§7[§cAuthPlus§7]§r §eВы успешно изменили свой пароль на §3".$args[0]);
		} else {
			$sender->sendMessage("§l§7[§cAuthPlus§7]§r §eПароль слишком короткий! Пароль должен состоять не менее из 6 символов!");
		}
		} else {
 				$sender->sendMessage("§l§7[§cAuthPlus§7]§r §eИспользование: §3/cp [новый пароль]");
		}
	break;
	case "getpass":
		if($sender->isOp){
		if(isset($args[0])) {
		if(isset($this->pass->get("players")[$args[0]])) {
			$sender->sendMessage("§l§7[§cAuthPlus§7]§r §eПароль игрока §a".$args[0].": §b".$this->pass->getNested("players.".$args[0].".password"));
		} else {
			$sender->sendMessage("§l§7[§cAuthPlus§7]§r §eТакого игрока нет, либо вы ввели не верный ник!");
		}
	} else {
		$sender->sendMessage("§l§7[§cAuthPlus§7]§r §eИспользование: §3/getpass [ник]");
	}
	} else {
		$sender->sendMessage("§l§7[§cAuthPlus§7]§r §eТы не создатель");
	}
	}
}

public function onQuit(PlayerQuitEvent $event) {
	$this->can[$event->getPlayer()->getName()] = false;
}

public function onJoin(PlayerJoinEvent $event) {
	$player = $event->getPlayer();
		if($this->can[$player->getName()] == false) {
		if(isset($this->pass->get("players")[strtolower($player->getName())])) {
		if($this->pass->getNested("players.".strtolower($player->getName()).".ip") == $player->getAddress()) {
		   	$player->sendMessage("§l§7[§cАвторизация§7]§r §eВы уже заходили с данного IP адреса. Можете играть");
		   $this->can[$player->getName()] = true;
		} else {
			$player->sendMessage("§l§7[§cАвторизация§7]§r §eНапишите пароль в чат, который вы писали при регистрации");
		}
	} else {
			$player->sendMessage("§l§7[§cРегистрация§7]§r §eНапишите пароль в чат, чтобы зарегистрироваться на сервере!");
		}
	}
}



public function onChat(PlayerChatEvent $event) {
	$player = $event->getPlayer();
	$msg = $event->getMessage();
	if($this->can[$player->getName()] == true && $msg == $this->pass->getNested("players.".strtolower($player->getName()).".password")){
		$player->sendMessage("§l§7[§cПароль§7]§r §eНельзя писать свой пароль в чат");
	}
	if($this->can[$player->getName()] == false) {
		 if(isset($this->pass->get("players")[strtolower($player->getName())])) {
			if($msg == $this->pass->getNested("players.".strtolower($player->getName()).".password")) {
			$player->sendMessage("§l§7[§cАвторизация§7]§r §eВы успешно авторизировались
 Удачной игры");
			$event->setCancelled();
			$this->pass->setNested("players.".strtolower($player->getName()).".ip", $player->getAddress());
			 $this->can[$player->getName()] = true;
			$this->pass->save();
		} else {
			$player->sendMessage("§l§7[§cАвторизация§7]§r §eВы ввели не верный пароль! Попробуйте еще раз!");
			$event->setCancelled();	
		}
	} elseif(strlen($msg) > 5) {
			$player->sendMessage("§l§7[§cРегистрация§7]§r §eВы успешно зарегистрировались!\n§c§l»§r §eВаш пароль: §b".$msg);
			$this->pass->setNested("players.".strtolower($player->getName()).".password", $msg);
			$event->setCancelled();
			$this->pass->setNested("players.".strtolower($player->getName()).".ip", $player->getAddress());
			$this->can[$player->getName()] = true;
			$this->pass->save();
		} else {
			$player->sendMessage("§l§7[§cРегистрация§7]§r §eВаш пароль слишком короткий. Пароль должен состоять не менее из 6 символов!");
			$event->setCancelled();
		}
	}
}

public function onDrop(PlayerDropItemEvent $event) {
	$p = $event->getPlayer();
		if($this->can[$p->getName()] == false) {
			 if(isset($this->pass->get("players")[strtolower($p->getName())]))  {
				$event->setCancelled();
				$p->sendTip("§l§c» §eСначала авторизируйся введя пароль в чат!");
			} else {
 				$event->setCancelled();
				$p->sendTip("§l§c» §eСначала зарегистрируйся введя пароль в чат!");
			}
		}
	}

public function onMove(PlayerMoveEvent $event) {
	$p = $event->getPlayer();
		if($this->can[$p->getName()] == false) {
			 if(isset($this->pass->get("players")[strtolower($p->getName())]))  {
				$event->setCancelled();
				$p->sendTip("§l§c» §eСначала авторизируйся введя пароль в чат!");
			} else {
 				$event->setCancelled();
				$p->sendTip("§l§c» §eСначала зарегистрируйся введя пароль в чат!");
			}
		}
	}
	
public function onCmd(PlayerCommandPreprocessEvent $event) {
		$player = $event->getPlayer();
		$msgs = $event->getMessage();
		if($this->can[$player->getName()] == false) {
			$pos = strpos($msgs[0], "/");
			if($pos !== false) {
				$event->setCancelled();
				 if(isset($this->pass->get("players")[strtolower($player->getName())])) {
					$player->sendMessage("§l§7[§cАвторизация§7]§r §eСначала авторизируйся введя пароль в чат!");
			} else {
 					$player->sendMessage("§l§7[§cРегистрация§7]§r §eСначала зарегистрируйся введя пароль в чат!");
		$event->setCancelled();
				}
			}
		}
	}
	
	public function onInteract(PlayerInteractEvent $event) {
		$player = $event->getPlayer();
		if($this->can[$player->getName()] == false) {
			$event->setCancelled();
			 if(isset($this->pass->get("players")[strtolower($player->getName())])) {
				$player->sendTip("§l§c» §eСначала авторизируйся введя пароль в чат!");
			}else {
				$player->sendTip("§l§c» §eСначала зарегистрируйся введя пароль в чат!");
			$event->setCancelled();
			}
		}
	}
	
	public function onBreakBlock(BlockBreakEvent $event) {
		$player = $event->getPlayer();
		if($this->can[$player->getName()] == false) {
			$event->setCancelled();
			 if(isset($this->pass->get("players")[strtolower($player->getName())])) {
				$player->sendTip("§l§c» §eСначала авторизируйся введя пароль в чат!");
			} else {
				$player->sendTip("§l§c» §eСначала зарегистрируйся введя пароль в чат!");
			 $event->setCancelled();
			}
		}
	}
	
	public function onSprint(PlayerToggleSprintEvent $event) {
		$player = $event->getPlayer();
		if($this->can[$player->getName()] == false) {
			$event->setCancelled();
			 if(isset($this->pass->get("players")[strtolower($player->getName())])) {
				$player->sendTip("§l§c» §eСначала авторизируйся введя пароль в чат!");
			} else {
				$player->sendTip("§l§c» §eСначала зарегистрируйся введя пароль в чат!");
$event->setCancelled();
			}
		}
	}
}

точнеее как сделать чтоб он не отображался в чате

отмени событие и прекрати выполнение кода дальше

if ($this->can[$player->getName()] == true && $msg == $this->pass->getNested("players.".strtolower($player->getName()).".password")) {
    $player->sendMessage("§l§7[§cПароль§7]§r §eНельзя писать свой пароль в чат");
    $event->setCancelled();
    return false;
}

попробуй

Это такая фича, если пароль забыл, игроки подскажут

5 лайков

Это лучшее что придумало 1.1 комьюнити

Эта тема была автоматически закрыта через 12 часов после последнего ответа. В ней больше нельзя отвечать.