[12:43:59] [Server thread/CRITICAL]: “Невозможно обработать событие ‘pocketmine\event\player\PlayerJoinEvent’ в ‘NPC v1.0.0’: Call to undefined method pocketmine\entity\Item::getName() в NPC\Main”
[12:43:59] [Server thread/CRITICAL]: Error: “Call to undefined method pocketmine\entity\Item::getName()” (EXCEPTION) in “NPC/src/NPC/Main” at line 78
public function onJoin(PlayerJoinEvent $event){
$player = $event->getPlayer();
foreach($event->getPlayer()->getLevel()->getEntities() as $entity){
if(!$entity instanceof Player){
if($entity->getName() == null){
if($this->getServer()->getDefaultLevel() > $player->getLevel()->getName()){
$this->onRemoveEntity();
$this->onSpawnEntity($player, $this->cache->get("name"));
}
}
}
}
}
Litecore
хкхкхмхмх исправь гкод сначало и куда блоков открытия и закрытия
$player = $event->getPlayer();
foreach($player->getLevel()->getEntities() as $entity) {
if($entity instanceof Player or $entity instanceof Item)
return;
if(!$this->getServer()->getDefaultLevel() > $player->getLevel()->getFolderName())
return;
$this->onRemoveEntity();
$this->onSpawnEntity($player, $this->cache->get("name"));
return;
}
хотя у меня в ядре не было функции getName(), попробуй через getFolderName()
но ошибка связана с классом Item.php в строке 78
elizy
5
Пхпхпх, ясно, ты читать даже ошибки не можешь 

ты в курсе что что return выходит из цикла? Это значит что при первом же нахождении игрока среди сущностей итерация прекратится
зачем?
С нпа, я не знать что с ним не так
elizy
8
да потому что он тупой, и не понимает ничего
Замени код что ты скинул, на этот
$player = $event->getPlayer();
foreach($event->getPlayer()->getLevel()->getEntities() as $entity){
if(!$entity instanceof Player and !$entity instanceof \pocketmine\entity\Item){
if($entity->getName() == null){
if($this->getServer()->getDefaultLevel() > $player->getLevel()->getName()){
$this->onRemoveEntity();
$this->onSpawnEntity($player, $this->cache->get("name"));
}
}
}
}
}
Твои знания php меня пугают
В итоге сам скинул еще более гкод, к тому же еще и не рабочий 

Geralt
12
if (!($entity instanceof Living)) сделай просто и все ибо getName() только Living имеют (ну в аквамарине я посмотрел в остальных хз)
я как минимум сделал читабельность кода куда лучше, чем с этими
{
{
{
{
{
а потом пошло
}
}
}
}
}
или просто я с форумом с ума сошёл… До этого у меня код лучше был
Geralt
15
не позорься и не оправдывайся
1 лайк
оправдываться перед кем? перед всеми вами , да зачем на это
если говорю так это и есть.
или у тебя есть какие-то другие доказательства который опровергают, то что, я сказал?
Ты чё реально не понимаешь что твой код стал читабельным, но нерабочим?
1 лайк