qq хелп пж
я на human поставил команду и когда я ударяю по нпс то команда выполняется два раза
Ошибка кода
function cmd(EntityDamageEvent $event){
if($event instanceof EntityDamageByEntityEvent){
$d = $event->getDamager();
$entity = $event->getEntity();
if($d instanceof Player && $entity instanceof Human && $entity->getNameTag() == "§7* §bШахтер §7*"){
$event->setCancelled();
$this->getServer()->dispatchCommand($d, "sell miner");
}elseif($d instanceof Player && $entity instanceof Human && $entity->getNameTag() == "§7* §bФермер §7*"){
$event->setCancelled();
$this->getServer()->dispatchCommand($d, "sell farmer");
}elseif($d instanceof Player && $entity instanceof Human && $entity->getNameTag() == "§7* §bБанкир §7*"){
$event->setCancelled();
$this->getServer()->dispatchCommand($d, "bank");
}elseif($d instanceof Player && $entity instanceof Human && $entity->getNameTag() == "§7* §bДровосек §7*"){
$event->setCancelled();
$this->getServer()->dispatchCommand($d, "sell lesorub");
}elseif($d instanceof Player && $entity instanceof Human && $entity->getNameTag() == "§7* §bАукцион §7*"){
$event->setCancelled();
$this->getServer()->dispatchCommand($d, "auc");
}elseif($d instanceof Player && $entity instanceof Human && $entity->getNameTag() == "§7* §bКирки §7*"){
$event->setCancelled();
$this->getServer()->dispatchCommand($d, "kirka");
}
}
}
Вроде с кодом всё норм
и я про то, если использовать команду через чат — высылает только одно сообщение, а когда нпс — 2
Ну тогда хз
пон
public function onDamage(EntityDamageEvent $e){
$ent = $e->getEntity();
if($ent instanceof Human && (!$ent instanceof Player)) $e->setCancelled(true);
if($e instanceof EntityDamageByEntityEvent){
$dam = $e->getDamager()
if(!$dam instanceof Player) return;
switch($ent->getNameTag()){
case "§7* §bШахтер §7*":
$this->getServer()->dispatchCommand($dam, "sell miner");
break;
case "§7* §bФермер §7*":
$this->getServer()->dispatchCommand($dam, "sell farmer");
break;
}
}
}
1 лайк
Попрбуй так что-ли…
ок ща
пасиба
мои глаза…
пон
Лол, зачем каждый раз проверять дамажера и энтити, это же можно сделать 1 раз
4 лайка
Хз
оба говна залили. Один не лучше другого
ну у него получше получилось)