AvatarVehicleTimerMessage

This commit is contained in:
SouNourS 2017-05-02 22:13:55 +02:00
parent 4fc55db53e
commit 87277d63dd
3 changed files with 80 additions and 1 deletions

View file

@ -421,7 +421,7 @@ object GamePacketOpcode extends Enumeration {
case 0x54 => noDecoder(HackMessage)
case 0x55 => noDecoder(DroppodLaunchResponseMessage)
case 0x56 => noDecoder(GenericObjectActionMessage)
case 0x57 => noDecoder(AvatarVehicleTimerMessage)
case 0x57 => game.AvatarVehicleTimerMessage.decode
// 0x58
case 0x58 => game.AvatarImplantMessage.decode
case 0x59 => noDecoder(UnknownMessage89)

View file

@ -0,0 +1,31 @@
// Copyright (c) 2017 PSForever
package net.psforever.packet.game
import net.psforever.packet.{GamePacketOpcode, Marshallable, PacketHelpers, PlanetSideGamePacket}
import scodec.Codec
import scodec.codecs._
/**
* @param player_guid player guid !
* @param text name of the item or vehicle name (ex : medkit, fury ...)
* @param time in seconds
* @param unk1 NA - Seems to be false when it's for medkit, true for vehicles
*/
final case class AvatarVehicleTimerMessage(player_guid : PlanetSideGUID,
text : String,
time : Long,
unk1 : Boolean
) extends PlanetSideGamePacket {
type Packet = AvatarVehicleTimerMessage
def opcode = GamePacketOpcode.AvatarVehicleTimerMessage
def encode = AvatarVehicleTimerMessage.encode(this)
}
object AvatarVehicleTimerMessage extends Marshallable[AvatarVehicleTimerMessage] {
implicit val codec : Codec[AvatarVehicleTimerMessage] = (
("player_guid" | PlanetSideGUID.codec) ::
("text" | PacketHelpers.encodedString) ::
("time" | uint32L) ::
("unk1" | bool)
).as[AvatarVehicleTimerMessage]
}