Как сделать что бы при вводе комманды появлялся НПС а не Крипер как на скрине

шаурма

где нормальный ответ :confused:

А причем здесь тот код что ты показал на скрине

я хз может тут в чем то дело?

Нет, этот код при тапе на крипера телепортирует на арену

понятно, но даже эта херня не раьотает :confused:

Меняй Крипера (Creeper) на Хьюмана (Human)

Deniska: “где менять?”

А он код целиком не скинул…

ну так


как сделать что бы телепорт на арену работал? выход с арены работает а вход нет

чихуахуа

В nametag крипера должно быть название арены после пробела, тоесть “Creeper arenaname”

ListClass.php (6,5 КБ)
если что вот файл

А нет там говноплаг, не будет так работать

так я в другом файле уже изменил с крипера на хуман, и в этом файле тоже

<?php namespace Ar2K18\KitPvp;

use pocketmine\plugin\PluginBase;
use pocketmine\scheduler\PluginTask;
use pocketmine\{Player, Server};
use pocketmine\entity\{Entity, Human, Effect, Creeper, Villager};
use pocketmine\event\Listener;
use pocketmine\event\entity\{EntityDamageEvent, EntityDamageByEntityEvent};
use pocketmine\event\player\{PlayerChatEvent, PlayerQuitEvent, PlayerDropItemEvent, PlayerInteractEvent};
use pocketmine\event\inventory\InventoryTransactionEvent;
use pocketmine\inventory\{Inventory, PlayerInventory};
use pocketmine\level\Level;
use pocketmine\level\particle\RedstoneParticle;
use pocketmine\math\Vector3;

class ListClass extends PluginBase implements Listener {
	
	private $main;
	
	public function __construct(MainClass $main) {
		$this->main = $main;
	}
	
	public function onDamage(EntityDamageEvent $e) {
		if($e instanceof EntityDamageByEntityEvent) {
			$da = $e->getDamager();
			$en = $e->getEntity();
			if($da instanceof Player) {
				if($en instanceof Creeper) {
					if($this->main->arenas->exists($en->getNameTag())) {
						$e->setCancelled();
						$this->main->tpArena($da, $en->getNameTag());
					}
				}
				if($en instanceof Human) {
					if($en->getNameTag() == "§l§aВыбор набора") {
						$e->setCancelled();
						$this->main->kitstat[strtolower($da->getName())] = 'ok';
						$da->sendMessage($this->main->pr."§fДля выбора набора, введите его §bназвание §fв чат. Доступные наборы:\n §l§c• §astart §8(300$)\n §c• §agold §8(550$)\n §c• §apro §8(900$)\n §c• §adiamond §8(1400$)\n§fЧтобы отменить выбор набора, введите §b«0»");
					}
					if($en->getNameTag() == "§l§cВыход с арены") {
						if(isset($this->main->players[strtolower($da->getName())])) {
							$da->sendMessage($this->main->pr."§fВы вышли с арены.");
							$this->main->kickArena($da);
						} else $da->sendMessage($this->main->pr."§fВы не в игре!");
					}
				}
				if($en instanceof Player and isset($this->main->players[strtolower($en->getName())])) {
					$en->setNameTag("§b".$en->getName()." §8| §f".$en->getHealth()."§c❤");
					
					if($en->getHealth() <= $e->getFinalDamage()) {
						$e->setCancelled();
						$s = $this->main->xp[strtolower($en->getName())];
						$en->addTitle("§l§cВы умерли", "§l§8Вы продержались §f".$s." §8секунд");
						$this->main->stats->setNested(strtolower($en->getName()).".deaths", $this->main->stats->getAll()[strtolower($en->getName())]['deaths'] + 1);
						$this->main->stats->setNested(strtolower($da->getName()).".kills", $this->main->stats->getAll()[strtolower($da->getName())]['kills'] + 1);
						$this->main->stats->save();
						$this->main->eco->addMoney($da, 100);
						$this->main->eco->addMoney($en, $s * 2);
						$this->main->kickArena($en);
					}
				}
			}
		}
	}
	
	public function onChat(PlayerChatEvent $e) {
		$p = $e->getPlayer();
		if(isset($this->main->kitstat[strtolower($e->getPlayer()->getName())])) {
			$e->setCancelled();
			
			switch(strtolower($e->getMessage())) {
				case '0':
				  $p->sendMessage($this->main->pr."§fВы вышли из режима выбора кита.");
				  $this->main->kitstat[strtolower($p->getName())] = null;
				break;
				case 'start':
				  if($this->main->eco->myMoney($p) >= 300) {
				  	$p->sendMessage($this->main->pr."§fВы успешно купили набор §bstart§f!");
				  	$this->main->eco->reduceMoney($p, 300);
				  	$this->main->kit[strtolower($p->getName())] = 'start';
				  	$this->main->kitstat[strtolower($p->getName())] = null;
				  } else $p->sendMessage($this->main->pr."§fНедостаточно денег!");
				break;
				case 'gold':
				  if($this->main->eco->myMoney($p) >= 550) {
				  	$p->sendMessage($this->main->pr."§fВы успешно купили набор §bgold§f!");
				  	$this->main->eco->reduceMoney($p, 550);
				  	$this->main->kit[strtolower($p->getName())] = 'gold';
				  	$this->main->kitstat[strtolower($p->getName())] = null;
				  } else $p->sendMessage($this->main->pr."§fНедостаточно денег!");
				break;
				case 'pro':
				  if($this->main->eco->myMoney($p) >= 900) {
				  	$p->sendMessage($this->main->pr."§fВы успешно купили набор §bpro§f!");
				  	$this->main->eco->reduceMoney($p, 900);
				  	$this->main->kit[strtolower($p->getName())] = 'pro';
				  	$this->main->kitstat[strtolower($p->getName())] = null;
				  } else $p->sendMessage($this->main->pr."§fНедостаточно денег!");
				break;
				case 'diamond':
				  if($this->main->eco->myMoney($p) >= 1400) {
				  	$p->sendMessage($this->main->pr."§fВы успешно купили набор §bdiamond§f!");
				  	$this->main->eco->reduceMoney($p, 1400);
				  	$this->main->kit[strtolower($p->getName())] = 'diamond';
				  	$this->main->kitstat[strtolower($p->getName())] = null;
				  } else $p->sendMessage($this->main->pr."§fНедостаточно денег!");
				break;
			}
			
		}
	}
	
	public function onQuit(PlayerQuitEvent $e) {
		if(isset($this->main->players[strtolower($e->getPlayer()->getName())])) {
			$p = $e->getPlayer();
			$this->main->kickArena($p);
		}
	}
	
	public function onDrop(PlayerDropItemEvent $e) {
		if(isset($this->main->players[strtolower($e->getPlayer()->getName())])) $e->setCancelled();
	}
	
	public function onTap(PlayerInteractEvent $e) {
		if($e->getItem()->getId() == 399 and $e->getItem()->getCustomName() == "§l§cВыход") {
			if(isset($this->main->players[strtolower($e->getPlayer()->getName())])) {
				$p = $e->getPlayer();
				$p->sendMessage($this->main->pr."§fВы вышли с арены.");
				$this->main->kickArena($p);
			}
		}
		
		/*if($e->getItem()->getId() == 369 and $e->getItem()->getCustomName() == "§l§aСила\n§8200$") {
			$p = $e->getPlayer();
			if($this->main->eco->myMoney($p) >= 200) {
				$effect = $p->addEffect(Effect::getEffect(5));
				$effect->setAmplifier(1);
				$effect->setDuration(99999);
			} else $p->sendMessage($this->main->pr."§fНедостаточно денег!");
		}*/
	}
	
	public function onTrans(InventoryTransactionEvent $e) {
		$p = null;
		$transactions = $e->getTransaction()->getTransactions();
		foreach($transactions as $transaction) {
			if($transaction->getInventory() instanceof PlayerInventory) $p = $transaction->getInventory()->getHolder();
		}
		if(isset($p)) {
			if(isset($this->main->players[strtolower($p->getName())])) $e->setCancelled();
		}
	}
	
}

можно пожалуйста для НПС? (Human или Player че то там)

что это уообще ты за код скинул не работает ничегг