Можно ли отменить анимацию? на pm5, к примеру, возьмем анимацию смерти. Если да, то каким образом? Знаю что анимации находятся в ActorEvent, чтобы отправить пакет ActorEventPacket если не ошибаюсь.
чем не выход саму смерть предотвращать?
общей практикой является отменить смерть и телепортировать игрока куда-нибудь по своей логике
Не стал заморачиваться, просто закомментировал следуюший код в ядре:
метод startDeathAnimation в классе living
$this->endDeathAnimation
//$this->broadcastAnimation(new DeathAnimation($this));
Я предпочел его как временный вариант. Про общую практику, в следующий раз попробую это реализовать.
Знаю, не оптимальный вариант как по мне, но на время сойдет.
public function handleDataPacketSend(DataPacketSendEvent $event) : void{
if(!(($packet = $event->getPacket()) instanceof ActorEventPacket)){
return;
}
if($packet->eventId === ActorEvent::DEATH_ANIMATION){
$event->cancel();
}
}
Эта тема была автоматически закрыта через 12 часов после последнего ответа. В ней больше нельзя отвечать.