Fix player burn time in creative

This commit is contained in:
Dylan K. Taylor 2017-01-06 20:00:19 +00:00
parent aaf549a469
commit 86dc8c48b9
2 changed files with 13 additions and 5 deletions

View File

@ -1235,6 +1235,10 @@ class Player extends Human implements CommandSender, InventoryHolder, ChunkLoade
return $this->gamemode === Player::SPECTATOR;
}
public function isFireProof() : bool{
return $this->isCreative();
}
public function getDrops(){
if(!$this->isCreative()){
return parent::getDrops();

View File

@ -251,7 +251,6 @@ abstract class Entity extends Location implements Metadatable{
public $noDamageTicks;
protected $justCreated;
protected $fireProof;
private $invulnerable;
/** @var AttributeMap */
@ -937,10 +936,11 @@ abstract class Entity extends Location implements Metadatable{
}
if($this->fireTicks > 0){
if($this->fireProof){
$this->fireTicks -= 4 * $tickDiff;
if($this->fireTicks < 0){
$this->fireTicks = 0;
if($this->isFireProof()){
if($this->fireTicks > 1){
$this->fireTicks = 1;
}else{
$this->fireTicks -= 1;
}
}else{
if(!$this->hasEffect(Effect::FIRE_RESISTANCE) and (($this->fireTicks % 20) === 0 or $tickDiff > 20)){
@ -1066,6 +1066,10 @@ abstract class Entity extends Location implements Metadatable{
}
}
public function isFireProof() : bool{
return false;
}
public function getDirection(){
$rotation = ($this->yaw - 90) % 360;
if($rotation < 0){