本文整理汇总了C#中PacketWriter.WriteByteArray方法的典型用法代码示例。如果您正苦于以下问题:C# PacketWriter.WriteByteArray方法的具体用法?C# PacketWriter.WriteByteArray怎么用?C# PacketWriter.WriteByteArray使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PacketWriter
的用法示例。
在下文中一共展示了PacketWriter.WriteByteArray方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CreateBuff
/// <summary>
/// Create 'SuccessResponse' packet
/// </summary>
/// <returns></returns>
public byte[] CreateBuff()
{
byte[] block = new byte[0x0D]; // Create our null byte array
PacketWriter PW = new PacketWriter(block); // Initialize the writer
PW.WriteByteArray(0, EngineUtils.PacketUtils.calcPacket(block.Length, _header)); // Write the packet header
PW.WriteString(5, EngineEnum.PacketEnum.PacketCommand.success_0); // Write the success string cmd
return block;
}
示例2: CreateBuff
/// <summary>
/// Create 'ErrorMessage' packet
/// </summary>
/// <returns></returns>
public byte[] CreateBuff()
{
byte[] packet_base = new byte[0x09]; // Create our null byte array
PacketWriter PW = new PacketWriter(packet_base); // Initialize the writer
PW.WriteByteArray(0, EngineUtils.PacketUtils.calcPacket(packet_base.Length, (Int16)EngineEnum.HeadersEnum.Send.TM_SC.TM_SC_RESULT)); // Write the packet header
PW.WriteInt16(7, (Int16)msgerrorid); // Write the message error id
return packet_base;
}
示例3: CreateBuff
/// <summary>
/// Create 'BalanceInfo' packet
/// </summary>
/// <returns></returns>
public byte[] CreateBuff()
{
byte[] block = new byte[0x2D]; // Create our null byte array
PacketWriter PW = new PacketWriter(block); // Initialize the writer
PW.WriteByteArray(0, EngineUtils.PacketUtils.calcPacket(block.Length, 0x82F)); // Write the packet header
PW.WriteString(5, EngineEnum.PacketEnum.PacketCommand.success_0); // Writer the success string cmd
PW.WriteUInt32(29, (UInt32)_rupees); // Write the rupees number
PW.WriteUInt32(33, (UInt32)_coins); // Write the coins number
PW.WriteUInt32(37, (UInt32)_gpotatos); // Write the gpotatos number
PW.WriteUInt32(41, (UInt32)_trickpoints); // Write the trickpoints number
return block;
}
示例4: CreateBuff
/// <summary>
/// Create 'PlayerCharacterList' packet
/// </summary>
/// <returns></returns>
public byte[] CreateBuff()
{
byte[] block = new byte[0x120]; // Create our null byte array
PacketWriter PW = new PacketWriter(block); // Initialize the writer
PW.WriteByteArray(0, EngineUtils.PacketUtils.calcPacket(block.Length, 0x90E)); // Write the packet header
PW.WriteString(5, EngineEnum.PacketEnum.PacketCommand.success_0); // Write the success string cmd
PW.WriteString(30, charname); // Write the character name, you can use some html code like: <#ff0000> and <glow>
PW.WriteInt32(73, lastlogin ? 1 : 0); // Push the player in the account creation tab
PW.WriteUInt32(75, 0); // I don't know yet what is it
PW.WriteUInt32(79, (UInt32)chartype); // Write the selected character
PW.WriteUInt32(83, 0); // I don't know yet what is it
return block;
}
示例5: CreateBuff
/// <summary>
/// Returns 'Login' packet buffer
/// </summary>
/// <returns></returns>
public byte[] CreateBuff()
{
byte[] packet_base = new byte[0x2F]; // Create our null byte array
PacketWriter PW = new PacketWriter(packet_base); // Initialize the writer
PW.WriteByteArray(0, EngineUtils.PacketUtils.calcPacket(packet_base.Length, 1009)); // Write the packet header
PW.WriteSByte(5, 1); // I don't know yet what is it
if (sessionkey.Length > 17 || sessionkey.Length < 17) // Session is and will always be 17 lenght long,
{ // so if its not.. you did something wrong.
Error.Invoke("Session key: '" + sessionkey + "' is too long, can't connect player."); // Optional
return null; // Returns null. Packet failed to create
}
else
{
PW.WriteString(9, sessionkey); // Write the player's auth key
PW.WriteInt32(42, 700); // I don't know yet what is it - idle time?
PW.WriteSByte(46, 1); // I don't know yet what is it
}
return packet_base;
}
示例6: CreateBuff
// Still no multi channel handle
/// <summary>
/// Create 'ChannelList' buffer
/// </summary>
/// <returns></returns>
public byte[] CreateBuff()
{
byte[] block = new byte[0x40]; // Create our null byte array
PacketWriter PW = new PacketWriter(block); // Initialize the reader
PW.WriteByteArray(0, EngineUtils.PacketUtils.calcPacket(block.Length, 0x7D6)); // Write the packet header
PW.WriteString(5, EngineEnum.PacketEnum.PacketCommand.success_0); // Write the success string cmd
PW.WriteUInt16(29, 1); // I don't know yet what is this
PW.WriteUInt16(31, 1); // I don't know yet what is this
PW.WriteString(32, channelname); // Write channel name
PW.WriteUInt32(44, 5); // I don't know yet what is this - multichannel
PW.WriteUInt32(48, 6); // I don't know yet what is this - multichannel
PW.WriteUInt32(52, 7); // I don't know yet what is this - multichannel
PW.WriteUInt32(56, 9); // I don't know yet what is this - multichannel
PW.WriteUInt32(60, 10); // I don't know yet what is this - multichannel
if (channelname.Length > 11) // Channel name can't contains over 11 letters
{
Error.Invoke("Channel name is too long");
return null;
}
return block;
}
示例7: WritePacket
public void WritePacket(PacketWriter writer)
{
writer.WriteByteArray(Key);
writer.WriteInt32(ScramblerVersion);
}
示例8: WritePacket
public void WritePacket(PacketWriter writer)
{
writer.WriteByteArray(Key);
writer.WriteInt32(Unknown1);
}
示例9: WritePacket
public void WritePacket(PacketWriter writer)
{
writer.WriteInt32((int)FailureReason);
if (Fingerprint != null)
writer.WriteString(Fingerprint.ToJson());
writer.WriteString(HostName);
writer.WriteString(RackcdnUrl);
writer.WriteString(iTunesUrl);
writer.WriteString(Unknown1);
writer.WriteString(Unknown2);
writer.WriteByte(Unknown3);
writer.WriteByteArray(CompressedFingerprintJson);
writer.WriteString(Unknown4);
}