fixed non-living entities lingering for a second after being kill()ed

only living entities should have death animation time
This commit is contained in:
Dylan K. Taylor 2017-10-19 20:51:50 +01:00
parent 0a19a2611a
commit a245615531
3 changed files with 8 additions and 3 deletions

View File

@ -1649,7 +1649,7 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{
if(!$this->isAlive() and $this->spawned){
$this->deadTicks += $tickDiff;
if($this->deadTicks >= 20){
if($this->deadTicks >= $this->maxDeadTicks){
$this->despawnFromAll();
}
return true;

View File

@ -382,6 +382,8 @@ abstract class Entity extends Location implements Metadatable, EntityIds{
/** @var int */
public $deadTicks = 0;
/** @var int */
protected $maxDeadTicks = 0;
/** @var int */
protected $age = 0;
/** @var float */
@ -1260,13 +1262,13 @@ abstract class Entity extends Location implements Metadatable, EntityIds{
if(!$this->isAlive()){
$this->deadTicks += $tickDiff;
if($this->deadTicks >= 20){
if($this->deadTicks >= $this->maxDeadTicks){
$this->despawnFromAll();
if(!$this->isPlayer){
$this->close();
}
}
return $this->deadTicks < 20;
return $this->deadTicks < $this->maxDeadTicks;
}

View File

@ -50,6 +50,9 @@ abstract class Living extends Entity implements Damageable{
protected $attackTime = 0;
/** @var int */
protected $maxDeadTicks = 20;
protected $invisible = false;
protected $jumpVelocity = 0.42;