# PSF-LoginServer - master - net.psforever.objects.ballistics.Projectile
PSF - LoginServer - master - net.psforever.objects.ballistics.Projectile
Keywords: PSF LoginServer master net.psforever.objects.ballistics.Projectile

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 ballistics
  Definition Classes
    objects
- AggravatedDamage
- AggravatedInfo
- AggravatedTiming
- ChargeDamage
- DeployableSource
- NonvitalDefinition
- ObjectSource
- PlayerSource
- Projectile
- ProjectileQuality
- Projectiles
- SameAsQuality
- SourceEntry
- VehicleSource

c

net.psforever.objects.ballistics

# Projectile 

###
Companion object Projectile

#### final case class Projectile(profile: ProjectileDefinition, tool_def: ToolDefinition, fire_mode: FireModeDefinition, owner: SourceEntry, attribute_to: Int, shot_origin: Vector3, shot_angle: Vector3, shot_velocity: Option[Vector3], quality: ProjectileQuality = ProjectileQuality.Normal, id: Long = Projectile.idGenerator.getAndIncrement(), fire_time: Long = System.currentTimeMillis()) extends PlanetSideGameObject with Product with Serializable

A summation of weapon discharge.

profile

  an explanation of the damage that can be performed by this discharge

tool_def

  the weapon that caused this discharge

fire_mode

  the current fire mode of the tool used

owner

  the agency that caused the weapon to produce this projectile; most often a player (`PlayerSource`)

attribute_to

  an object ID that refers to the method of death that would be reported; usually the same as `tool_def.ObjectId`; if not, then it is a type of vehicle (and owner should have a positive `seated` field)

shot_origin

  where the projectile started

shot_angle

  in which direction the projectile was aimed when it was discharged

shot_velocity

  the initial velocity coordinates of the projectile according to its world directions

quality

  na

id

  an exclusive identifier for this projectile; normally generated internally, but can be manually set (for modifying a continuous projectile reference)

fire_time

  when the weapon discharged was recorded; defaults to `System.currentTimeMillis()`

Source
  Projectile.scala
See also

  `ProjectileDefinition`

  `ToolDefinition`

  `FireModeDefinition`

  `SourceEntry`

  `PlayerSource`

Linear Supertypes
Serializable, Product, Equals, PlanetSideGameObject, WorldEntity, IdentifiableEntity, Identifiable, AnyRef, Any

Ordering

1. Alphabetic
2. By Inheritance

Inherited

1. Projectile
2. Serializable
3. Product
4. Equals
5. PlanetSideGameObject
6. WorldEntity
7. IdentifiableEntity
8. Identifiable
9. AnyRef
10. Any

1. Hide All
2. Show All

Visibility

1. Public
2. Protected

### Instance Constructors

1.  new Projectile(profile: ProjectileDefinition, tool_def: ToolDefinition, fire_mode: FireModeDefinition, owner: SourceEntry, attribute_to: Int, shot_origin: Vector3, shot_angle: Vector3, shot_velocity: Option[Vector3], quality: ProjectileQuality = ProjectileQuality.Normal, id: Long = Projectile.idGenerator.getAndIncrement(), fire_time: Long = System.currentTimeMillis())

   profile

     an explanation of the damage that can be performed by this discharge

   tool_def

     the weapon that caused this discharge

   fire_mode

     the current fire mode of the tool used

   owner

     the agency that caused the weapon to produce this projectile; most often a player (`PlayerSource`)

   attribute_to

     an object ID that refers to the method of death that would be reported; usually the same as `tool_def.ObjectId`; if not, then it is a type of vehicle (and owner should have a positive `seated` field)

   shot_origin

     where the projectile started

   shot_angle

     in which direction the projectile was aimed when it was discharged

   shot_velocity

     the initial velocity coordinates of the projectile according to its world directions

   quality

     na

   id

     an exclusive identifier for this projectile; normally generated internally, but can be manually set (for modifying a continuous projectile reference)

   fire_time

     when the weapon discharged was recorded; defaults to `System.currentTimeMillis()`

### 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 Definition: ProjectileDefinition
   Definition Classes
     Projectile → PlanetSideGameObject
5.  def Destroyed: Boolean
   Definition Classes
     PlanetSideGameObject
6.  def Destroyed_=(state: Boolean): Boolean
   Definition Classes
     PlanetSideGameObject
7.  def Entity: WorldEntity
   Definition Classes
     PlanetSideGameObject
8.  def Entity_=(newEntity: WorldEntity): Unit
   Definition Classes
     PlanetSideGameObject
9.  def GUID: PlanetSideGUID
   Definition Classes
     IdentifiableEntity → Identifiable
10.  def GUID_=(guid: PlanetSideGUID): PlanetSideGUID
    Definition Classes
      IdentifiableEntity → Identifiable
11.  def GUID_=(guid: StalePlanetSideGUID): PlanetSideGUID

    Always intercept `StalePlanetSideGUID` references when attempting to mutate the GUID value.

    Always intercept `StalePlanetSideGUID` references when attempting to mutate the GUID value.

    guid

      the valid GUID to assign

    returns

      never returns

    Definition Classes
      IdentifiableEntity
    Exceptions thrown

      ``AssigningGUIDException`` always

12.  def HasGUID: Boolean

    Flag when the object has no GUID (initial condition) or is considered stale.

    Flag when the object has no GUID (initial condition) or is considered stale.

    returns

      whether the value of the GUID is a valid representation for this object

    Definition Classes
      IdentifiableEntity
13.  def Invalidate(): Unit

    Indicate that the current GUID is no longer a valid representation of the object.

    Indicate that the current GUID is no longer a valid representation of the object. Transforms whatever the current GUID is into a `StalePlanetSideGUID` entity with the same value. Doing this restores the object to its default mutation option ("the ability to set a new valid GUID"). The current GUID will still be accessed as if it were valid, but it will be wrapped in the new stale object.

    Definition Classes
      IdentifiableEntity
14.  def Miss(): Unit
15.  def Orientation: Vector3
    Definition Classes
      PlanetSideGameObject → WorldEntity
16.  def Orientation_=(vec: Vector3): Vector3
    Definition Classes
      PlanetSideGameObject → WorldEntity
17.  def Position: Vector3
    Definition Classes
      PlanetSideGameObject → WorldEntity
18.  def Position_=(vec: Vector3): Vector3
    Definition Classes
      PlanetSideGameObject → WorldEntity
19.  def Resolve(): Unit

    Mark the projectile as being "encountered" or "managed" at least once.

20.  def Velocity: Option[Vector3]
    Definition Classes
      PlanetSideGameObject → WorldEntity
21.  def Velocity_=(vec: Option[Vector3]): Option[Vector3]
    Definition Classes
      PlanetSideGameObject → WorldEntity
22.  def Velocity_=(vec: Vector3): Option[Vector3]
    Definition Classes
      WorldEntity
23.  final def asInstanceOf[T0]: T0
    Definition Classes
      Any
24.  val attribute_to: Int
25.  def clone(): AnyRef
    Attributes
      protected[lang]
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.CloneNotSupportedException]) @native()
26.  val current: SimpleWorldEntity

    Information about the current world coordinates and orientation of the projectile

27.  final def eq(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
28.  def finalize(): Unit
    Attributes
      protected[lang]
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.Throwable])
29.  val fire_mode: FireModeDefinition
30.  val fire_time: Long
31.  final def getClass(): Class[_ <: AnyRef]
    Definition Classes
      AnyRef → Any
    Annotations
      @native()
32.  val id: Long
33.  final def isInstanceOf[T0]: Boolean
    Definition Classes
      Any
34.  def isMiss: Boolean
35.  def isMoving(test: Float): Boolean

    This object is not considered moving unless it is moving at least as fast as a certain velocity.

    This object is not considered moving unless it is moving at least as fast as a certain velocity.

    test

      the (squared) velocity to test against

    returns

      `true`, if we are moving; `false`, otherwise

    Definition Classes
      WorldEntity
36.  def isMoving(test: Vector3): Boolean

    This object is not considered moving unless it is moving at least as fast as a certain velocity.

    This object is not considered moving unless it is moving at least as fast as a certain velocity.

    test

      the velocity to test against

    returns

      `true`, if we are moving; `false`, otherwise

    Definition Classes
      WorldEntity
37.  def isMoving: Boolean

    A velocity of non-zero is the same as moving.

    A velocity of non-zero is the same as moving.

    returns

      `true`, if we are moving; `false`, otherwise

    Definition Classes
      WorldEntity
38.  def isResolved: Boolean
39.  final def ne(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
40.  final def notify(): Unit
    Definition Classes
      AnyRef
    Annotations
      @native()
41.  final def notifyAll(): Unit
    Definition Classes
      AnyRef
    Annotations
      @native()
42.  val owner: SourceEntry
43.  def productElementNames: Iterator[String]
    Definition Classes
      Product
44.  val profile: ProjectileDefinition
45.  def quality(value: ProjectileQuality): Projectile

    Create a copy of this projectile with all the same information save for the quality.

    Create a copy of this projectile with all the same information save for the quality. Used mainly for aggravated damage. It is important to note that the new projectile shares the (otherwise) exclusive id of the original.

    value

      the new quality

    returns

      a new `Projectile` entity

46.  val quality: ProjectileQuality
47.  val shot_angle: Vector3
48.  val shot_origin: Vector3
49.  val shot_velocity: Option[Vector3]
50.  final def synchronized[T0](arg0: => T0): T0
    Definition Classes
      AnyRef
51.  val tool_def: ToolDefinition
52.  final def wait(): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException])
53.  final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException])
54.  final def wait(arg0: Long): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws(classOf[java.lang.InterruptedException]) @native()

### Inherited from Serializable

### Inherited from Product

### Inherited from Equals

### Inherited from PlanetSideGameObject

### Inherited from WorldEntity

### Inherited from IdentifiableEntity

### Inherited from Identifiable

### Inherited from AnyRef

### Inherited from Any

### Ungrouped