mirror of
				https://bitbucket.org/Ioncannon/project-meteor-server.git
				synced 2025-05-20 08:26:59 -04:00 
			
		
		
		
	Implemented the SetIdleAnimation packet, and a placeholder for packet 0x132 used to login.
This commit is contained in:
		| @@ -122,6 +122,7 @@ | ||||
|     <Compile Include="packets\send\actor\ActorDoEmotePacket.cs" /> | ||||
|     <Compile Include="packets\send\actor\ActorInstantiatePacket.cs" /> | ||||
|     <Compile Include="packets\send\actor\DeleteAllActorsPacket.cs" /> | ||||
|     <Compile Include="packets\send\actor\_0x132Packet.cs" /> | ||||
|     <Compile Include="packets\send\actor\SetActorIsZoningPacket.cs" /> | ||||
|     <Compile Include="packets\send\actor\DoBattleActionPacket.cs" /> | ||||
|     <Compile Include="packets\send\actor\inventory\EquipmentChangePacket.cs" /> | ||||
| @@ -134,6 +135,7 @@ | ||||
|     <Compile Include="packets\send\actor\inventory\EquipmentSetupPacket.cs" /> | ||||
|     <Compile Include="packets\send\actor\RemoveActorPacket.cs" /> | ||||
|     <Compile Include="packets\send\actor\SetActorIconPacket.cs" /> | ||||
|     <Compile Include="packets\send\actor\SetActorIdleAnimationPacket.cs" /> | ||||
|     <Compile Include="packets\send\actor\SetActorStatusPacket.cs" /> | ||||
|     <Compile Include="packets\send\actor\_0xFPacket.cs" /> | ||||
|     <Compile Include="packets\send\events\EndEventPacket.cs" /> | ||||
|   | ||||
| @@ -0,0 +1,32 @@ | ||||
| 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 SetActorIdleAnimationPacket | ||||
|     {         | ||||
|         public const ushort OPCODE = 0x144; | ||||
|         public const uint PACKET_SIZE = 0x28; | ||||
|  | ||||
|         public static SubPacket buildPacket(uint playerActorID, uint targetID, uint idleAnimationId) | ||||
|         { | ||||
|             byte[] data = new byte[PACKET_SIZE - 0x20]; | ||||
|  | ||||
|             using (MemoryStream mem = new MemoryStream(data)) | ||||
|             { | ||||
|                 using (BinaryWriter binWriter = new BinaryWriter(mem)) | ||||
|                 { | ||||
|                    binWriter.Seek(0x6, SeekOrigin.Begin); | ||||
|                    binWriter.Write((UInt16)(idleAnimationId&0xFFFF)); | ||||
|                 } | ||||
|             } | ||||
|  | ||||
|             return new SubPacket(OPCODE, playerActorID, targetID, data); | ||||
|         } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										32
									
								
								FFXIVClassic Map Server/packets/send/Actor/_0x132Packet.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								FFXIVClassic Map Server/packets/send/Actor/_0x132Packet.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | ||||
| 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 _0x132Packet | ||||
|     { | ||||
|         public const ushort OPCODE = 0x132; | ||||
|         public const uint PACKET_SIZE = 0x48; | ||||
|  | ||||
|         public static SubPacket buildPacket(uint playerActorID, ushort number, string function) | ||||
|         { | ||||
|             byte[] data = new byte[PACKET_SIZE - 0x20]; | ||||
|  | ||||
|             using (MemoryStream mem = new MemoryStream(data)) | ||||
|             { | ||||
|                 using (BinaryWriter binWriter = new BinaryWriter(mem)) | ||||
|                 { | ||||
|                     binWriter.Write((UInt16)number); | ||||
|                     binWriter.Write(Encoding.ASCII.GetBytes(function), 0, Encoding.ASCII.GetByteCount(function) >= 0x20 ? 0x20 : Encoding.ASCII.GetByteCount(function)); | ||||
|                 } | ||||
|             } | ||||
|  | ||||
|             return new SubPacket(OPCODE, playerActorID, playerActorID, data); | ||||
|         } | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user