From 9e38229b0d37e1a52507325437ccef5e7eb33573 Mon Sep 17 00:00:00 2001 From: "keyboard.osh@gmail.com" Date: Sun, 28 Apr 2013 05:08:29 +0000 Subject: Added support for sending velocity and rotation in PACKET_SPAWN_MOB and PACKET_SPAWN_OBJECT git-svn-id: http://mc-server.googlecode.com/svn/trunk@1427 0a769ca7-a7f5-676a-18bf-c427514a06d6 --- source/Protocol/Protocol125.cpp | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'source/Protocol/Protocol125.cpp') diff --git a/source/Protocol/Protocol125.cpp b/source/Protocol/Protocol125.cpp index 184bd1d30..b9048bdbe 100644 --- a/source/Protocol/Protocol125.cpp +++ b/source/Protocol/Protocol125.cpp @@ -711,12 +711,14 @@ void cProtocol125::SendSpawnObject(const cEntity & a_Entity, char a_ObjectType, WriteInt ((int)(a_Entity.GetPosX() * 32)); WriteInt ((int)(a_Entity.GetPosY() * 32)); WriteInt ((int)(a_Entity.GetPosZ() * 32)); + WriteByte(a_Pitch); + WriteByte(a_Yaw); WriteInt (a_ObjectData); if (a_ObjectData != 0) { - WriteShort((short)a_Entity.GetSpeedX()); - WriteShort((short)a_Entity.GetSpeedY()); - WriteShort((short)a_Entity.GetSpeedZ()); + WriteShort((short)(a_Entity.GetSpeedX() * 400)); + WriteShort((short)(a_Entity.GetSpeedY() * 400)); + WriteShort((short)(a_Entity.GetSpeedZ() * 400)); } Flush(); } @@ -734,10 +736,12 @@ void cProtocol125::SendSpawnVehicle(const cEntity & a_Vehicle, char a_VehicleTyp WriteInt ((int)(a_Vehicle.GetPosX() * 32)); WriteInt ((int)(a_Vehicle.GetPosY() * 32)); WriteInt ((int)(a_Vehicle.GetPosZ() * 32)); + WriteByte ((BYTE)((a_Vehicle.GetPitch() / 360.f) * 256)); + WriteByte ((BYTE)((a_Vehicle.GetRotation() / 360.f) * 256)); WriteInt (1); - WriteShort(0); // TODO: SpeedX - WriteShort(0); // TODO: SpeedY - WriteShort(0); // TODO: SpeedZ + WriteShort((short)(a_Vehicle.GetSpeedX() * 400)); + WriteShort((short)(a_Vehicle.GetSpeedY() * 400)); + WriteShort((short)(a_Vehicle.GetSpeedZ() * 400)); Flush(); } -- cgit v1.2.3