mirror of
https://github.com/2revoemag/PSF-BotServer.git
synced 2026-07-15 00:14:40 +00:00
ReleaseAvatarRequestMessage
This commit is contained in:
parent
63b89e4c98
commit
ae68231fda
4 changed files with 50 additions and 2 deletions
|
|
@ -522,7 +522,7 @@ object GamePacketOpcode extends Enumeration {
|
||||||
case 0xa9 => game.AvatarGrenadeStateMessage.decode
|
case 0xa9 => game.AvatarGrenadeStateMessage.decode
|
||||||
case 0xaa => noDecoder(UnknownMessage170)
|
case 0xaa => noDecoder(UnknownMessage170)
|
||||||
case 0xab => noDecoder(UnknownMessage171)
|
case 0xab => noDecoder(UnknownMessage171)
|
||||||
case 0xac => noDecoder(ReleaseAvatarRequestMessage)
|
case 0xac => game.ReleaseAvatarRequestMessage.decode
|
||||||
case 0xad => noDecoder(AvatarDeadStateMessage)
|
case 0xad => noDecoder(AvatarDeadStateMessage)
|
||||||
case 0xae => noDecoder(CSAssistMessage)
|
case 0xae => noDecoder(CSAssistMessage)
|
||||||
case 0xaf => noDecoder(CSAssistCommentMessage)
|
case 0xaf => noDecoder(CSAssistCommentMessage)
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,7 @@ final case class ControlPacket(opcode : ControlPacketOpcode.Value,
|
||||||
|
|
||||||
object PacketCoding {
|
object PacketCoding {
|
||||||
/// A lower bound on the packet size
|
/// A lower bound on the packet size
|
||||||
final val PLANETSIDE_MIN_PACKET_SIZE = 2
|
final val PLANETSIDE_MIN_PACKET_SIZE = 1
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Given a full and complete planetside packet as it would be sent on the wire, attempt to
|
* Given a full and complete planetside packet as it would be sent on the wire, attempt to
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,21 @@
|
||||||
|
// Copyright (c) 2017 PSForever
|
||||||
|
package net.psforever.packet.game
|
||||||
|
|
||||||
|
import net.psforever.packet.{GamePacketOpcode, Marshallable, PacketHelpers, PlanetSideGamePacket}
|
||||||
|
import scodec.Codec
|
||||||
|
|
||||||
|
|
||||||
|
/** Packet send by client when clic on button after death
|
||||||
|
* https://streamable.com/4r16m
|
||||||
|
*/
|
||||||
|
|
||||||
|
final case class ReleaseAvatarRequestMessage()
|
||||||
|
extends PlanetSideGamePacket {
|
||||||
|
type Packet = ReleaseAvatarRequestMessage
|
||||||
|
def opcode = GamePacketOpcode.ReleaseAvatarRequestMessage
|
||||||
|
def encode = ReleaseAvatarRequestMessage.encode(this)
|
||||||
|
}
|
||||||
|
|
||||||
|
object ReleaseAvatarRequestMessage extends Marshallable[ReleaseAvatarRequestMessage] {
|
||||||
|
implicit val codec : Codec[ReleaseAvatarRequestMessage] = PacketHelpers.emptyCodec(ReleaseAvatarRequestMessage())
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,27 @@
|
||||||
|
// Copyright (c) 2017 PSForever
|
||||||
|
package game
|
||||||
|
|
||||||
|
import org.specs2.mutable._
|
||||||
|
import net.psforever.packet._
|
||||||
|
import net.psforever.packet.game._
|
||||||
|
import scodec.bits.HexStringSyntax
|
||||||
|
|
||||||
|
class ReleaseAvatarRequestMessageTest extends Specification {
|
||||||
|
val string = hex"ac"
|
||||||
|
|
||||||
|
"decode" in {
|
||||||
|
PacketCoding.DecodePacket(string).require match {
|
||||||
|
case ReleaseAvatarRequestMessage() =>
|
||||||
|
ok
|
||||||
|
case _ =>
|
||||||
|
ko
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
"encode" in {
|
||||||
|
val msg = ReleaseAvatarRequestMessage()
|
||||||
|
val pkt = PacketCoding.EncodePacket(msg).require.toByteVector
|
||||||
|
|
||||||
|
pkt mustEqual string
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue