Fixed chunk loading and movement

This commit is contained in:
Dylan K. Taylor 2016-10-04 12:42:05 +01:00
parent dd0c5efb56
commit 401de97719
5 changed files with 20 additions and 24 deletions

View File

@ -32,14 +32,15 @@ class AdventureSettingsPacket extends DataPacket{
public $globalPermission; public $globalPermission;
public function decode(){ public function decode(){
$this->flags = $this->getUnsignedVarInt();
$this->userPermission = $this->getUnsignedVarInt();
} }
public function encode(){ public function encode(){
$this->reset(); $this->reset();
$this->putInt($this->flags); $this->putUnsignedVarInt($this->flags);
$this->putInt($this->userPermission); $this->putUnsignedVarInt($this->userPermission); //TODO: verify this
$this->putInt($this->globalPermission); //$this->putInt($this->globalPermission);
} }
} }

View File

@ -34,7 +34,7 @@ class ChunkRadiusUpdatedPacket extends DataPacket{
public function encode(){ public function encode(){
$this->reset(); $this->reset();
$this->putInt($this->radius); $this->putVarInt($this->radius);
} }
} }

View File

@ -41,11 +41,10 @@ class FullChunkDataPacket extends DataPacket{
public function encode(){ public function encode(){
$this->reset(); $this->reset();
$this->putInt($this->chunkX); $this->putVarInt($this->chunkX);
$this->putInt($this->chunkZ); $this->putVarInt($this->chunkZ);
$this->putByte($this->order); $this->putByte($this->order);
$this->putInt(strlen($this->data)); $this->putString($this->data);
$this->put($this->data);
} }
} }

View File

@ -47,26 +47,22 @@ class MovePlayerPacket extends DataPacket{
} }
public function decode(){ public function decode(){
$this->eid = $this->getLong(); $this->eid = $this->getEntityId(); //EntityRuntimeID
$this->x = $this->getFloat(); $this->getVector3f($this->x, $this->y, $this->z);
$this->y = $this->getFloat(); $this->pitch = $this->getLFloat();
$this->z = $this->getFloat(); $this->yaw = $this->getLFloat();
$this->yaw = $this->getFloat(); $this->bodyYaw = $this->getLFloat();
$this->bodyYaw = $this->getFloat();
$this->pitch = $this->getFloat();
$this->mode = $this->getByte(); $this->mode = $this->getByte();
$this->onGround = $this->getByte() > 0; $this->onGround = $this->getByte() > 0;
} }
public function encode(){ public function encode(){
$this->reset(); $this->reset();
$this->putLong($this->eid); $this->putEntityId($this->eid); //EntityRuntimeID
$this->putFloat($this->x); $this->putVector3f($this->x, $this->y, $this->z);
$this->putFloat($this->y); $this->putLFloat($this->pitch);
$this->putFloat($this->z); $this->putLFloat($this->yaw);
$this->putFloat($this->yaw); $this->putLFloat($this->bodyYaw); //TODO
$this->putFloat($this->bodyYaw); //TODO
$this->putFloat($this->pitch);
$this->putByte($this->mode); $this->putByte($this->mode);
$this->putByte($this->onGround > 0); $this->putByte($this->onGround > 0);
} }

View File

@ -30,7 +30,7 @@ class RequestChunkRadiusPacket extends DataPacket{
public $radius; public $radius;
public function decode(){ public function decode(){
$this->radius = $this->getInt(); $this->radius = $this->getVarInt();
} }
public function encode(){ public function encode(){