Packet: AvatarFirstTimeEventMessage (#53)

* AvatarFirstTimeEventMessage

* AvatarFirstTimeEventMessage

* AvatarFirstTimeEventMessage tests
This commit is contained in:
aphedox 2016-08-13 12:28:13 -05:00 committed by pschord
parent 10ec61c9a6
commit c5653013da
4 changed files with 52 additions and 1 deletions

View file

@ -444,7 +444,7 @@ object GamePacketOpcode extends Enumeration {
case WeaponJammedMessage => noDecoder(opcode)
case LinkDeadAwarenessMsg => noDecoder(opcode)
case DroppodFreefallingMessage => noDecoder(opcode)
case AvatarFirstTimeEventMessage => noDecoder(opcode)
case AvatarFirstTimeEventMessage => game.AvatarFirstTimeEventMessage.decode
case AggravatedDamageMessage => noDecoder(opcode)
case TriggerSoundMessage => noDecoder(opcode)
case LootItemMessage => noDecoder(opcode)

View file

@ -0,0 +1,25 @@
// Copyright (c) 2016 PSForever.net to present
package net.psforever.packet.game
import net.psforever.packet.{GamePacketOpcode, Marshallable, PacketHelpers, PlanetSideGamePacket}
import scodec.Codec
import scodec.codecs._
final case class AvatarFirstTimeEventMessage(avatar_guid : PlanetSideGUID,
object_guid : PlanetSideGUID,
unk1 : Long,
event_name : String)
extends PlanetSideGamePacket {
type Packet = AvatarFirstTimeEventMessage
def opcode = GamePacketOpcode.AvatarFirstTimeEventMessage
def encode = AvatarFirstTimeEventMessage.encode(this)
}
object AvatarFirstTimeEventMessage extends Marshallable[AvatarFirstTimeEventMessage] {
implicit val codec : Codec[AvatarFirstTimeEventMessage] = (
("avatar_guid" | PlanetSideGUID.codec) ::
("object_guid" | PlanetSideGUID.codec) ::
("unk1" | uint32L ) ::
("event_name" | PacketHelpers.encodedString)
).as[AvatarFirstTimeEventMessage]
}