Add WeaponJammedMessage packet

This commit is contained in:
tfarley 2016-08-13 19:45:55 -07:00
parent c5653013da
commit b0acc44373
2 changed files with 28 additions and 1 deletions

View file

@ -441,7 +441,7 @@ object GamePacketOpcode extends Enumeration {
// OPCODE 100
case AvatarSearchCriteriaMessage => noDecoder(opcode)
case AvatarSearchResponse => noDecoder(opcode)
case WeaponJammedMessage => noDecoder(opcode)
case WeaponJammedMessage => game.WeaponJammedMessage.decode
case LinkDeadAwarenessMsg => noDecoder(opcode)
case DroppodFreefallingMessage => noDecoder(opcode)
case AvatarFirstTimeEventMessage => game.AvatarFirstTimeEventMessage.decode

View file

@ -0,0 +1,27 @@
// 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._
/**
* Instructs client to play the weapon jammed sound when sent server to client.
*
* Appears to have the same functionality and sound regardless of guid, as long as the client has that item in inventory.
* See also [[WeaponDryFireMessage]]
*
* @param weapon_guid the weapon that is jammed
*/
final case class WeaponJammedMessage(weapon_guid : PlanetSideGUID)
extends PlanetSideGamePacket {
type Packet = WeaponJammedMessage
def opcode = GamePacketOpcode.WeaponJammedMessage
def encode = WeaponJammedMessage.encode(this)
}
object WeaponJammedMessage extends Marshallable[WeaponJammedMessage] {
implicit val codec : Codec[WeaponJammedMessage] = (
("weapon_guid" | PlanetSideGUID.codec)
).as[WeaponJammedMessage]
}