mirror of
https://github.com/psforever/PSF-LoginServer.git
synced 2026-02-28 19:13:40 +00:00
38 lines
1.2 KiB
Scala
38 lines
1.2 KiB
Scala
// Copyright (c) 2017 PSForever
|
|
package game
|
|
|
|
import org.specs2.mutable._
|
|
import net.psforever.packet._
|
|
import net.psforever.packet.game._
|
|
import net.psforever.types.Vector3
|
|
import scodec.bits._
|
|
|
|
class WeaponFireMessageTest extends Specification {
|
|
val string = hex"34 44130029272F0B5DFD4D4EC5C00009BEF78172003FC0"
|
|
|
|
"decode" in {
|
|
PacketCoding.DecodePacket(string).require match {
|
|
case WeaponFireMessage(seq_time, weapon_guid, projectile_guid, shot_origin, unk1, unk2, unk3, unk4, unk5, unk6, unk7) =>
|
|
seq_time mustEqual 68
|
|
weapon_guid mustEqual PlanetSideGUID(76)
|
|
projectile_guid mustEqual PlanetSideGUID(40100)
|
|
shot_origin mustEqual Vector3(3675.4688f, 2726.9922f, 92.921875f)
|
|
unk1 mustEqual 0
|
|
unk2 mustEqual 64294
|
|
unk3 mustEqual 1502
|
|
unk4 mustEqual 200
|
|
unk5 mustEqual 255
|
|
unk6 mustEqual 0
|
|
unk7 mustEqual None
|
|
case _ =>
|
|
ko
|
|
}
|
|
}
|
|
|
|
"encode" in {
|
|
val msg = WeaponFireMessage(68, PlanetSideGUID(76), PlanetSideGUID(40100), Vector3(3675.4688f, 2726.9922f, 92.921875f), 0, 64294, 1502, 200, 255, 0, None)
|
|
val pkt = PacketCoding.EncodePacket(msg).require.toByteVector
|
|
|
|
pkt mustEqual string
|
|
}
|
|
}
|