# PSF-LoginServer - master - net.psforever.objects.serverobject.damage.DamageableEntity
PSF - LoginServer - master - net.psforever.objects.serverobject.damage.DamageableEntity
Keywords: PSF LoginServer master net.psforever.objects.serverobject.damage.DamageableEntity

PSF-LoginServer - master < Back


# Packages

-  package root
  Definition Classes
    root
-  package net
  Definition Classes
    root
-  package psforever
  Definition Classes
    net
-  package objects
  Definition Classes
    psforever
-  package serverobject
  Definition Classes
    objects
-  package damage
  Definition Classes
    serverobject
- AggravatedBehavior
- Damageable
- DamageableAmenity
- DamageableEntity
- DamageableMountable
- DamageableVehicle
- DamageableWeaponTurret

t

net.psforever.objects.serverobject.damage

# DamageableEntity 

###
Companion object DamageableEntity

#### trait DamageableEntity extends Damageable

The "control" `Actor` mixin for damage-handling code, for both expansion into other mixins and specific application on its own.

Source
  DamageableEntity.scala

Linear Supertypes
Damageable, AnyRef, Any
Known Subclasses
SensorDeployableControl, ShieldGeneratorControl, TelepadDeployableControl, TrapDeployableControl, TurretControl, DamageableAmenity, DamageableVehicle, DamageableWeaponTurret, GeneratorControl, ProximityTerminalControl, TerminalControl, ImplantTerminalMechControl, SpawnTubeControl, FacilityTurretControl, AmsControl, AntControl, ApcControl, CargoCarrierControl, DeployingVehicleControl, RouterControl, VehicleControl

Ordering

1. Alphabetic
2. By Inheritance

Inherited

1. DamageableEntity
2. Damageable
3. AnyRef
4. Any

1. Hide All
2. Show All

Visibility

1. Public
2. Protected

### Abstract Value Members

1.  abstract def DamageableObject: Target

   Contextual access to the object being the target of this damage.

   Contextual access to the object being the target of this damage. Needs declaration in lowest implementing code.

   returns

     the entity controlled by this actor

   Definition Classes
     Damageable

### Concrete Value Members

1.  final def !=(arg0: Any): Boolean
   Definition Classes
     AnyRef → Any
2.  final def ##: Int
   Definition Classes
     AnyRef → Any
3.  final def ==(arg0: Any): Boolean
   Definition Classes
     AnyRef → Any
4.  def DamageAwareness(target: Target, cause: DamageResult, amount: Any): Unit

   What happens when damage is sustained but the target does not get destroyed.

   What happens when damage is sustained but the target does not get destroyed.

   target

     the entity being damaged

   cause

     historical information about the damage

   amount

     the amount of damage

   Attributes
     protected
5.  def DamageLog(target: Target, msg: String): Unit

   Log a damage message with a decorator for this target.

   Log a damage message with a decorator for this target. The decorator is constructed by the `Actor` name of the entity, sliced after the last forward/slash. For example, for "foo/bar/name", the decorator is just "name".

   target

     the entity to be used for the decorator

   msg

     the message for the damage log

   Attributes
     protected
   See also

     `PlanetSideServerObject`

6.  def DamageLog(msg: String): Unit

   Log a damage message.

   Log a damage message.

   msg

     the message for the damage log

   Attributes
     protected
7.  def DestructionAwareness(target: Target, cause: DamageResult): Unit

   What happens when the target sustains too much damage and is destroyed.

   What happens when the target sustains too much damage and is destroyed.

   target

     the entity being destroyed

   cause

     historical information about the damage

   Attributes
     protected
   See also

     `Damageable.DestructionAwareness`

8.  def HandleDamage(target: Target, cause: DamageResult, damage: Any): Unit

   Select between mere damage reception or target destruction.

   Select between mere damage reception or target destruction.

   target

     the entity being damaged

   cause

     historical information about the damage

   damage

     the amount of damage

   Attributes
     protected
   See also

     `VitalDefinition.DamageDestroysAt`

9.  def PerformDamage(target: Target, applyDamageTo: Output): Unit

   Assess the vital statistics of the target, apply the damage, and determine if any of those statistics changed.

   Assess the vital statistics of the target, apply the damage, and determine if any of those statistics changed. By default, only take an interest in the change of "health". If implementing custom `DamageableAmenity` with no new message handling, choose to override this method.

   target

     the entity to be damaged

   applyDamageTo

     the function that applies the damage to the target in a target-tailored fashion

   Attributes
     protected
   Definition Classes
     DamageableEntity → Damageable
   See also

     `DamageableAmenity.TakesDamage`

     `ResolutionCalculations.Output`

     `Vitality.Health`

10.  def WillAffectTarget(target: Target, damage: Int, cause: DamageResult): Boolean

    Does the damage or the projectile that caused the damage offer any reason to execute the reminder of damage resolution considerations? The projectile causing additional affects, e.g., jamming, should be tested here, when applicable.

    Does the damage or the projectile that caused the damage offer any reason to execute the reminder of damage resolution considerations? The projectile causing additional affects, e.g., jamming, should be tested here, when applicable. Contrast with `Vitality.CanDamage`. The damage value tested against should be the total value of all meaningful vital statistics affected.

    target

      the entity to be damaged

    damage

      the amount of damage

    cause

      historical information about the damage

    returns

      `true`, if damage resolution is to be evaluated; `false`, otherwise

    Attributes
      protected
    See also

      `Damageable.CanDamageOrJammer`

      `PerformDamage`

11.  final def asInstanceOf[T0]: T0
    Definition Classes
      Any
12.  def clone(): AnyRef
    Attributes
      protected[lang]
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.CloneNotSupportedException]) @native()
13.  final def eq(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
14.  def equals(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef → Any
15.  def finalize(): Unit
    Attributes
      protected[lang]
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.Throwable])
16.  final def getClass(): Class[_ <: AnyRef]
    Definition Classes
      AnyRef → Any
    Annotations
      @native()
17.  def hashCode(): Int
    Definition Classes
      AnyRef → Any
    Annotations
      @native()
18.  final def isInstanceOf[T0]: Boolean
    Definition Classes
      Any
19.  final def ne(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
20.  final def notify(): Unit
    Definition Classes
      AnyRef
    Annotations
      @native()
21.  final def notifyAll(): Unit
    Definition Classes
      AnyRef
    Annotations
      @native()
22.  final val originalTakesDamage: Receive

    a duplicate of the core implementation for the default mixin hook, for use in overriding

    a duplicate of the core implementation for the default mixin hook, for use in overriding

    Definition Classes
      Damageable
23.  final def synchronized[T0](arg0: => T0): T0
    Definition Classes
      AnyRef
24.  val takesDamage: Receive

    the official mixin hook; `orElse` onto the "control" `Actor` `receive`; or, cite the `originalTakesDamage` protocol during inheritance overrides

    the official mixin hook; `orElse` onto the "control" `Actor` `receive`; or, cite the `originalTakesDamage` protocol during inheritance overrides

    Definition Classes
      Damageable
25.  def toString(): String
    Definition Classes
      AnyRef → Any
26.  final def wait(): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException])
27.  final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException])
28.  final def wait(arg0: Long): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException]) @native()

### Inherited from Damageable

### Inherited from AnyRef

### Inherited from Any

### Ungrouped