mirror of
https://github.com/psforever/PSF-LoginServer.git
synced 2026-07-08 13:04:41 +00:00
oicw little buddy proxy damage carrier class did not project sidedness to the server side damage protocol, skipping sidedness check altogether
This commit is contained in:
parent
fadd735b9f
commit
77292d2ee3
2 changed files with 19 additions and 6 deletions
|
|
@ -4,6 +4,7 @@ package net.psforever.objects
|
|||
import net.psforever.objects.ballistics.Projectile
|
||||
import net.psforever.objects.definition.{ObjectDefinition, ProjectileDefinition}
|
||||
import net.psforever.objects.serverobject.affinity.FactionAffinity
|
||||
import net.psforever.objects.serverobject.interior.{InteriorAware, Sidedness}
|
||||
import net.psforever.objects.vital.resolution.{DamageAndResistance, DamageResistanceModel}
|
||||
import net.psforever.objects.vital.{Vitality, VitalityDefinition}
|
||||
import net.psforever.types.{PlanetSideEmpire, PlanetSideGUID, Vector3}
|
||||
|
|
@ -14,7 +15,10 @@ class DummyExplodingEntity(
|
|||
)
|
||||
extends PlanetSideGameObject
|
||||
with FactionAffinity
|
||||
with Vitality {
|
||||
with Vitality
|
||||
with InteriorAware {
|
||||
lazy private val vdefin: DefinitionWrappedInVitality = new DefinitionWrappedInVitality(obj)
|
||||
|
||||
override def GUID: PlanetSideGUID = obj.GUID
|
||||
|
||||
override def Position: Vector3 = {
|
||||
|
|
@ -37,13 +41,22 @@ class DummyExplodingEntity(
|
|||
super.Velocity.orElse(obj.Velocity)
|
||||
}
|
||||
|
||||
def WhichSide_=(thisSide: Sidedness): Sidedness = WhichSide
|
||||
|
||||
def WhichSide: Sidedness = {
|
||||
obj match {
|
||||
case awareSource: InteriorAware =>
|
||||
awareSource.WhichSide
|
||||
case _ =>
|
||||
Sidedness.StrictlyBetweenSides
|
||||
}
|
||||
}
|
||||
|
||||
def Faction: PlanetSideEmpire.Value = faction
|
||||
|
||||
def DamageModel: DamageAndResistance = DummyExplodingEntity.DefaultDamageResistanceModel
|
||||
|
||||
def Definition: ObjectDefinition with VitalityDefinition = {
|
||||
new DefinitionWrappedInVitality(obj)
|
||||
}
|
||||
def Definition: ObjectDefinition with VitalityDefinition = vdefin
|
||||
}
|
||||
|
||||
private class DefinitionWrappedInVitality(private val entity: PlanetSideGameObject)
|
||||
|
|
|
|||
|
|
@ -586,7 +586,7 @@ class Zone(val id: String, val map: ZoneMap, zoneNumber: Int) {
|
|||
elapsedTime % 86400
|
||||
}
|
||||
|
||||
def SetTimeOfDay(requestedTime: Float) = {
|
||||
def SetTimeOfDay(requestedTime: Float): Unit = {
|
||||
val now = System.currentTimeMillis()
|
||||
|
||||
val requestedTimeDiff = requestedTime / timeOfDaySpeed
|
||||
|
|
@ -598,7 +598,7 @@ class Zone(val id: String, val map: ZoneMap, zoneNumber: Int) {
|
|||
timeOfDaySpeed
|
||||
}
|
||||
|
||||
def SetTimeOfDaySpeed(requestedSpeed: Float) = {
|
||||
def SetTimeOfDaySpeed(requestedSpeed: Float): Unit = {
|
||||
// store current time
|
||||
val timeOfDay = GetTimeOfDay()
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue