mirror of
https://bitbucket.org/Ioncannon/project-meteor-server.git
synced 2025-04-24 05:37:46 +00:00
Got rid of some garbage packets. Emote packet implemented though bug with descriptions.
This commit is contained in:
parent
810edfcee4
commit
d3325676c5
22 changed files with 49 additions and 4 deletions
|
@ -80,6 +80,7 @@
|
|||
<Compile Include="packets\receive\LockTargetPacket.cs" />
|
||||
<Compile Include="packets\receive\EndScriptPacket.cs" />
|
||||
<Compile Include="packets\receive\StartScriptPacket.cs" />
|
||||
<Compile Include="packets\send\actor\ActorDoEmotePacket.cs" />
|
||||
<Compile Include="packets\send\actor\DeleteAllActorsPacket.cs" />
|
||||
<Compile Include="packets\send\actor\inventory\EquipmentChangePacket.cs" />
|
||||
<Compile Include="packets\send\actor\inventory\InventoryBeginChangePacket.cs" />
|
||||
|
|
|
@ -307,6 +307,8 @@ namespace FFXIVClassic_Lobby_Server
|
|||
break;
|
||||
//Set Target
|
||||
case 0x00CD:
|
||||
subpacket.debugPrintSubPacket();
|
||||
|
||||
SetTargetPacket setTarget = new SetTargetPacket(subpacket.data);
|
||||
player.setTarget(setTarget.actorID);
|
||||
client.queuePacket(BasePacket.createPacket(SetActorTargetAnimatedPacket.buildPacket(player.actorID, player.actorID, setTarget.actorID), true, false));
|
||||
|
@ -319,8 +321,9 @@ namespace FFXIVClassic_Lobby_Server
|
|||
//Start Script
|
||||
case 0x012D:
|
||||
subpacket.debugPrintSubPacket();
|
||||
StartScriptPacket startScript = new StartScriptPacket(subpacket.data);
|
||||
client.queuePacket(new BasePacket("./packets/script/bed.bin"));
|
||||
//StartScriptPacket startScript = new StartScriptPacket(subpacket.data);
|
||||
//client.queuePacket(new BasePacket("./packets/script/bed.bin"));
|
||||
client.queuePacket(BasePacket.createPacket(ActorDoEmotePacket.buildPacket(player.actorID, player.getTargetedActor(), 137), true, false));
|
||||
break;
|
||||
//Script Result
|
||||
case 0x012E:
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -18,8 +18,8 @@ namespace FFXIVClassic_Map_Server.dataobjects
|
|||
public uint characterID = 0;
|
||||
public uint actorID = 0;
|
||||
|
||||
private uint currentTarget = 0;
|
||||
private uint currentLockedTarget = 0;
|
||||
private uint currentTarget = 0xC0000000;
|
||||
private uint currentLockedTarget = 0xC0000000;
|
||||
|
||||
private uint currentZoneID = 0;
|
||||
|
||||
|
@ -121,5 +121,10 @@ namespace FFXIVClassic_Map_Server.dataobjects
|
|||
{
|
||||
currentLockedTarget = actorID;
|
||||
}
|
||||
|
||||
public uint getTargetedActor()
|
||||
{
|
||||
return currentTarget;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,36 @@
|
|||
using FFXIVClassic_Lobby_Server.packets;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace FFXIVClassic_Map_Server.packets.send.actor
|
||||
{
|
||||
class ActorDoEmotePacket
|
||||
{
|
||||
public const ushort OPCODE = 0x00E1;
|
||||
public const uint PACKET_SIZE = 0x30;
|
||||
|
||||
public static SubPacket buildPacket(uint playerActorID, uint targetActorID, uint emoteID)
|
||||
{
|
||||
byte[] data = new byte[PACKET_SIZE - 0x20];
|
||||
|
||||
using (MemoryStream mem = new MemoryStream(data))
|
||||
{
|
||||
using (BinaryWriter binWriter = new BinaryWriter(mem))
|
||||
{
|
||||
uint realAnimID = 0x5000000 | ((emoteID - 100) << 12);
|
||||
uint realDescID = 20000 + ((emoteID - 1) * 10) + (targetActorID == playerActorID || targetActorID == 0xC0000000 ? (uint)2 : (uint)1);
|
||||
binWriter.Write((UInt32)realAnimID);
|
||||
binWriter.Write((UInt32)targetActorID);
|
||||
binWriter.Write((UInt32)realDescID);
|
||||
}
|
||||
}
|
||||
|
||||
SubPacket packet = new SubPacket(OPCODE, playerActorID, targetActorID, data);
|
||||
return packet;
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Reference in a new issue