Entity: add a hack to prevent client-side movement when entity is not moving

this fixes #2227.
This commit is contained in:
Dylan K. Taylor 2019-02-16 17:01:19 +00:00
parent 8f486ea65d
commit 3c93a57397

View File

@ -1164,6 +1164,9 @@ abstract class Entity extends Location implements Metadatable, EntityIds{
}
protected function updateMovement(bool $teleport = false) : void{
//TODO: hack for client-side AI interference: prevent client sided movement when motion is 0
$this->setImmobile($this->motion->x == 0 and $this->motion->y == 0 and $this->motion->z == 0);
$diffPosition = ($this->x - $this->lastX) ** 2 + ($this->y - $this->lastY) ** 2 + ($this->z - $this->lastZ) ** 2;
$diffRotation = ($this->yaw - $this->lastYaw) ** 2 + ($this->pitch - $this->lastPitch) ** 2;