mirror of
https://github.com/psforever/PSF-LoginServer.git
synced 2026-04-23 13:25:25 +00:00
Experience for KDA [Prep-work] (#1024)
* extensive modifications to source entry shorthand * moving 11 files changes 55 other files * added score card classes; upgraded packet classes * I decided to import over everything * proliferation of in-game activity messages, especially for spawning activity; removed defaults for activities; fixed (most?) building tests * upkeep on the LLU's managing service, as well as the facility hack management service, in response to a potential bug * a facility that changes faction affiliation while it is the destination of an LLU delivery will cancel that LLU delivery * fixed crash due to boomer trigger overriding position of ace, without the ace being properly cleaned up on the client of the bomber; fixed issue with the boomer trigger going missing * flipped the first two FDU deployable settings so they match the correct fire modes; corrected a stack overflow situation with the sourcing entities * action, but no response * condensed parameters on avatar class * as always, fixing tests * quickly, loose ends tied
This commit is contained in:
parent
40cf783f18
commit
779054fef9
153 changed files with 3772 additions and 2100 deletions
|
|
@ -6,6 +6,7 @@ import net.psforever.objects.avatar.Avatar
|
|||
import net.psforever.objects.ballistics._
|
||||
import net.psforever.objects.definition.ProjectileDefinition
|
||||
import net.psforever.objects.serverobject.mblocker.Locker
|
||||
import net.psforever.objects.sourcing.{ObjectSource, PlayerSource, SourceEntry, VehicleSource}
|
||||
import net.psforever.objects.vital.base.{DamageResolution, DamageType}
|
||||
import net.psforever.objects.vital.interaction.DamageInteraction
|
||||
import net.psforever.objects.vital.projectile.ProjectileReason
|
||||
|
|
@ -13,8 +14,8 @@ import net.psforever.types.{PlanetSideGUID, _}
|
|||
import org.specs2.mutable.Specification
|
||||
|
||||
class ProjectileTest extends Specification {
|
||||
val player = Player(Avatar(0, "TestCharacter", PlanetSideEmpire.TR, CharacterSex.Male, 0, CharacterVoice.Mute))
|
||||
val fury = Vehicle(GlobalDefinitions.fury)
|
||||
val player: Player = Player(Avatar(0, "TestCharacter", PlanetSideEmpire.TR, CharacterSex.Male, 0, CharacterVoice.Mute))
|
||||
val fury: Vehicle = Vehicle(GlobalDefinitions.fury)
|
||||
|
||||
"Range" should {
|
||||
"local projectile range" in {
|
||||
|
|
@ -169,7 +170,7 @@ class ProjectileTest extends Specification {
|
|||
o.Definition mustEqual GlobalDefinitions.avatar
|
||||
o.Position mustEqual Vector3.Zero
|
||||
o.Orientation mustEqual Vector3.Zero
|
||||
o.Velocity mustEqual None
|
||||
o.Velocity.isEmpty mustEqual true
|
||||
case _ =>
|
||||
ko
|
||||
}
|
||||
|
|
@ -185,23 +186,23 @@ class ProjectileTest extends Specification {
|
|||
o.Shields mustEqual 0
|
||||
o.Position mustEqual Vector3.Zero
|
||||
o.Orientation mustEqual Vector3.Zero
|
||||
o.Velocity mustEqual None
|
||||
o.Velocity.isEmpty mustEqual true
|
||||
case _ =>
|
||||
ko
|
||||
}
|
||||
}
|
||||
|
||||
"construct for generic object" in {
|
||||
val obj = Locker()
|
||||
val obj = Tool(GlobalDefinitions.suppressor)
|
||||
obj.GUID = PlanetSideGUID(1)
|
||||
SourceEntry(obj) match {
|
||||
case o: ObjectSource =>
|
||||
o.obj mustEqual obj
|
||||
o.Name mustEqual "Mb Locker"
|
||||
o.Name mustEqual "Suppressor"
|
||||
o.Faction mustEqual PlanetSideEmpire.NEUTRAL
|
||||
o.Definition mustEqual GlobalDefinitions.mb_locker
|
||||
o.Definition mustEqual GlobalDefinitions.suppressor
|
||||
o.Position mustEqual Vector3.Zero
|
||||
o.Orientation mustEqual Vector3.Zero
|
||||
o.Velocity mustEqual None
|
||||
o.Velocity.isEmpty mustEqual true
|
||||
case _ =>
|
||||
ko
|
||||
}
|
||||
|
|
@ -210,12 +211,10 @@ class ProjectileTest extends Specification {
|
|||
"contain timely information" in {
|
||||
val obj =
|
||||
Player(Avatar(0, "TestCharacter-alt", PlanetSideEmpire.TR, CharacterSex.Male, 0, CharacterVoice.Mute))
|
||||
obj.VehicleSeated = Some(PlanetSideGUID(1))
|
||||
obj.Position = Vector3(1.2f, 3.4f, 5.6f)
|
||||
obj.Orientation = Vector3(2.1f, 4.3f, 6.5f)
|
||||
obj.Velocity = Some(Vector3(1.1f, 2.2f, 3.3f))
|
||||
val sobj = SourceEntry(obj)
|
||||
obj.VehicleSeated = None
|
||||
obj.Position = Vector3.Zero
|
||||
obj.Orientation = Vector3.Zero
|
||||
obj.Velocity = None
|
||||
|
|
@ -225,12 +224,11 @@ class ProjectileTest extends Specification {
|
|||
case o: PlayerSource =>
|
||||
o.Name mustEqual "TestCharacter-alt"
|
||||
o.Faction mustEqual PlanetSideEmpire.TR
|
||||
o.Seated mustEqual true
|
||||
o.ExoSuit mustEqual ExoSuitType.Standard
|
||||
o.Definition mustEqual GlobalDefinitions.avatar
|
||||
o.Position mustEqual Vector3(1.2f, 3.4f, 5.6f)
|
||||
o.Orientation mustEqual Vector3(2.1f, 4.3f, 6.5f)
|
||||
o.Velocity mustEqual Some(Vector3(1.1f, 2.2f, 3.3f))
|
||||
o.Velocity.contains(Vector3(1.1f, 2.2f, 3.3f)) mustEqual true
|
||||
case _ =>
|
||||
ko
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue