driver as the killer, not the vehicle (#1171)

This commit is contained in:
Fate-JH 2024-03-02 23:09:15 -05:00 committed by GitHub
parent f2c486d6f6
commit 9ed39c6e2f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 11 additions and 7 deletions

View file

@ -118,8 +118,8 @@ object SpecialEmp {
case _ => OwnerGuid_=(Some(owner.GUID))
}
Position = position
def Faction = faction
def Definition = proxy_definition
def Faction: PlanetSideEmpire.Value = faction
def Definition: ObjectDefinition with VitalityDefinition = proxy_definition
})
}

View file

@ -1,7 +1,7 @@
// Copyright (c) 2021 PSForever
package net.psforever.objects.vehicles.control
import akka.actor.Actor
import akka.actor.{Actor, Cancellable}
import net.psforever.objects._
import net.psforever.services.Service
import net.psforever.services.vehicle.{VehicleAction, VehicleServiceMessage}
@ -16,7 +16,7 @@ trait VehicleCapacitance {
_: Actor =>
def CapacitanceObject: Vehicle
protected var capacitor = Default.Cancellable
protected var capacitor: Cancellable = Default.Cancellable
startCapacitorTimer()

View file

@ -1,9 +1,9 @@
// Copyright (c) 2021 PSForever
package net.psforever.objects.vital.etc
import net.psforever.objects.PlanetSideGameObject
import net.psforever.objects.{PlanetSideGameObject, Vehicle}
import net.psforever.objects.serverobject.affinity.FactionAffinity
import net.psforever.objects.sourcing.SourceEntry
import net.psforever.objects.sourcing.{SourceEntry, VehicleSource}
import net.psforever.objects.vital.Vitality
import net.psforever.objects.vital.base.{DamageReason, DamageResolution}
import net.psforever.objects.vital.prop.DamageWithPosition
@ -41,6 +41,10 @@ object EmpReason {
source: DamageWithPosition,
target: PlanetSideGameObject with Vitality
): EmpReason = {
EmpReason(SourceEntry(owner), source, target.DamageModel, owner.Definition.ObjectId)
val ownerSource = owner match {
case v: Vehicle => VehicleSource(v).occupants.head
case _ => SourceEntry(owner)
}
EmpReason(ownerSource, source, target.DamageModel, owner.Definition.ObjectId)
}
}