Actor speed packet done, actor position packet implemented.

This commit is contained in:
Filip Maj 2015-10-06 23:53:14 -04:00
parent 327dfc656b
commit f0c914844e
3 changed files with 105 additions and 6 deletions

View file

@ -13,16 +13,21 @@ namespace FFXIVClassic_Map_Server.packets.send.actor
public const ushort OPCODE = 0x00CE;
public const uint PACKET_SIZE = 0x48;
public const uint SPAWNTYPE_NORMAL = 1;
public const uint SPAWNTYPE_WARP1 = 2;
public const uint SPAWNTYPE_FADEIN = 0;
public const uint SPAWNTYPE_PLAYERWAKE = 1;
public const uint SPAWNTYPE_WARP_DUTY = 2;
public const uint SPAWNTYPE_WARP2 = 3;
public const uint SPAWNTYPE_WARP3 = 4;
public const uint SPAWNTYPE_WARP_YELLOW = 5;
public const uint SPAWNTYPE_WARP_DUTY2 = 6;
public const uint SPAWNTYPE_WARP_LIGHT = 7;
public const float INNPOS_X = 157.550003f;
public const float INNPOS_Y = 000.000000f;
public const float INNPOS_Z = 165.050003f;
public const float INNPOS_ROT = -1.530000f;
public static SubPacket buildPacket(uint playerActorID, uint actorID, float x, float y, float z, float rotation)
public static SubPacket buildPacket(uint sourceActorID, uint targetActorID, float x, float y, float z, float rotation, uint spawnType)
{
byte[] data = new byte[PACKET_SIZE-0x20];
@ -31,15 +36,19 @@ namespace FFXIVClassic_Map_Server.packets.send.actor
using (BinaryWriter binWriter = new BinaryWriter(mem))
{
binWriter.Write((Int32)0);
binWriter.Write((Int32)0);
binWriter.Write((Int32)sourceActorID);
binWriter.Write((Single)x);
binWriter.Write((Single)y);
binWriter.Write((Single)z);
binWriter.Write((Single)rotation);
binWriter.BaseStream.Seek(0x24, SeekOrigin.Begin);
binWriter.Write((UInt32)spawnType);
}
}
return new SubPacket(OPCODE, playerActorID, actorID, data);
return new SubPacket(OPCODE, sourceActorID, targetActorID, data);
}
}