Figured out all main actor states and implemented the stuff properly. Implemented the chocobo/goobbue appearance stuff. Formatted CharaWork a bit.

This commit is contained in:
Filip Maj 2016-01-02 16:47:35 -05:00
parent b04310ef32
commit 7aeb33d884
6 changed files with 96 additions and 20 deletions

View file

@ -9,20 +9,31 @@ namespace FFXIVClassic_Map_Server.packets.send.actor
{
class SetActorStatePacket
{
public const ushort OPCODE = 0x0134;
public const int MAIN_STATE_PASSIVE = 0;
public const int MAIN_STATE_DEAD = 1;
public const int MAIN_STATE_ACTIVE = 2;
public const int MAIN_STATE_DEAD2 = 3;
public const int MAIN_STATE_SITTING_OBJECT = 11;
public const int MAIN_STATE_SITTING_FLOOR = 13;
public const int MAIN_STATE_MOUNTED = 15;
public const int MAIN_STATE_UNKNOWN1 = 0x0E;
public const int MAIN_STATE_UNKNOWN2 = 0x1E;
public const int MAIN_STATE_UNKNOWN3 = 0x1F;
public const int MAIN_STATE_UNKNOWN4 = 0x20;
//What is this for?
public const int SUB_STATE_PLAYER = 0xBF;
public const int SUB_STATE_MONSTER = 0x03;
public const ushort OPCODE = 0x134;
public const uint PACKET_SIZE = 0x28;
public const int STATE_NONE = 0x0000;
public const int STATE_DEAD = 0x0303;
public const int STATE_PASSIVE = 0xBF00;
public const int STATE_ACTIVE = 0xBF02;
public static SubPacket buildPacket(uint playerActorID, uint targetID, uint state)
{
ulong combined = 0;
combined |= state;
public static SubPacket buildPacket(uint playerActorID, uint targetID, uint mainState, uint subState)
{
uint combined = (mainState & 0xFF) | ((subState & 0xFF) << 8);
return new SubPacket(OPCODE, playerActorID, targetID, BitConverter.GetBytes(combined));
}
}