final case class Projectile(profile: ProjectileDefinition, tool_def: ToolDefinition, fire_mode: FireModeDefinition, mounted_in: Option[(Int, SourceEntry)], 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 BlockMapEntity 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
- mounted_in
na
- 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 positiveseated
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
- Alphabetic
- By Inheritance
- Projectile
- Serializable
- Product
- Equals
- BlockMapEntity
- PlanetSideGameObject
- WorldEntity
- IdentifiableEntity
- Identifiable
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new Projectile(profile: ProjectileDefinition, tool_def: ToolDefinition, fire_mode: FireModeDefinition, mounted_in: Option[(Int, SourceEntry)], 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
- mounted_in
na
- 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 positiveseated
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
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def Definition: ProjectileDefinition
- Definition Classes
- Projectile → PlanetSideGameObject
- def Destroyed: Boolean
- Definition Classes
- PlanetSideGameObject
- def Destroyed_=(state: Boolean): Boolean
- Definition Classes
- PlanetSideGameObject
- def Entity: WorldEntity
- Definition Classes
- PlanetSideGameObject
- def Entity_=(newEntity: WorldEntity): Unit
- Definition Classes
- PlanetSideGameObject
- def GUID: PlanetSideGUID
- Definition Classes
- IdentifiableEntity → Identifiable
- def GUID_=(guid: PlanetSideGUID): PlanetSideGUID
- Definition Classes
- IdentifiableEntity → Identifiable
- 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
- 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
- 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
- def Miss(): Unit
- def Orientation: Vector3
- Definition Classes
- PlanetSideGameObject → WorldEntity
- def Orientation_=(vec: Vector3): Vector3
- Definition Classes
- PlanetSideGameObject → WorldEntity
- def Position: Vector3
- Definition Classes
- PlanetSideGameObject → WorldEntity
- def Position_=(vec: Vector3): Vector3
- Definition Classes
- PlanetSideGameObject → WorldEntity
- def Resolve(): Unit
Mark the projectile as being "encountered" or "managed" at least once.
- def Velocity: Option[Vector3]
- Definition Classes
- PlanetSideGameObject → WorldEntity
- def Velocity_=(vec: Option[Vector3]): Option[Vector3]
- Definition Classes
- PlanetSideGameObject → WorldEntity
- def Velocity_=(vec: Vector3): Option[Vector3]
- Definition Classes
- WorldEntity
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- val attribute_to: Int
- def blockMapEntry: Option[BlockMapEntry]
internal data regarding an active representation on a blockmap
internal data regarding an active representation on a blockmap
- Definition Classes
- BlockMapEntity
- def blockMapEntry_=(entry: Option[BlockMapEntry]): Option[BlockMapEntry]
internal data regarding an active representation on a blockmap
internal data regarding an active representation on a blockmap
- Definition Classes
- BlockMapEntity
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- val current: SimpleWorldEntity
Information about the current world coordinates and orientation of the projectile
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- val fire_mode: FireModeDefinition
- val fire_time: Long
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- val id: Long
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isMiss: Boolean
- 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
- 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
- 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
- def isResolved: Boolean
- val mounted_in: Option[(Int, SourceEntry)]
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- val owner: SourceEntry
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- val profile: ProjectileDefinition
- 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
- val quality: ProjectileQuality
- def sector(zone: Zone, range: Float): SectorPopulation
Buckets in the blockmap are called "sectors".
Buckets in the blockmap are called "sectors". Find the sectors in a given blockmap in which the entity would be represented within a given range.
- zone
what region the blockmap represents
- range
the custom distance from the central sector along the major axes
- returns
a conglomerate sector which lists all of the entities in the allocated sector(s)
- Definition Classes
- BlockMapEntity
- val shot_angle: Vector3
- val shot_origin: Vector3
- val shot_velocity: Option[Vector3]
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- val tool_def: ToolDefinition
- def updateBlockMapEntry(newCoords: Vector3): Boolean
Update the internal data's known coordinate position without changing representation on whatever blockmap.
Update the internal data's known coordinate position without changing representation on whatever blockmap. Has the potential to cause major issues with the blockmap if used without external checks.
- newCoords
the coordinate position
- returns
true
, if the coordinates were updated;false
, otherwise
- Definition Classes
- BlockMapEntity
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()