I love the smell of UnrealEd crashing in the morning. – tarquin

Difference between revisions of "UE2:Projectile (UT2004)"

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search
(Auto-generated page)
 
m (filled in some details)
 
Line 5: Line 5:
 
| abstract = yes
 
| abstract = yes
 
}}
 
}}
{{autogenerated}}
 
Projectile.
 
 
 
A delayed-hit projectile that moves around for some time after it is created.
 
A delayed-hit projectile that moves around for some time after it is created.
 +
{{expand}}
  
 
==Properties==
 
==Properties==
Line 14: Line 12:
 
'''Type:''' [[bool]]
 
'''Type:''' [[bool]]
  
used to prevent effects when projectiles are destroyed (see LimitationVolume)
+
Used to prevent effects when projectiles are destroyed. (see e.g. {{cl|LimitationVolume}})
  
 
====bReadyToSplash====
 
====bReadyToSplash====
 
'''Type:''' [[bool]]
 
'''Type:''' [[bool]]
  
<!-- enter variable description -->
+
Set during {{tl|PostBeginPlay}}() to prevent the projectile from causing a splash effect at spawn-time.
  
 
====bScriptPostRender====
 
====bScriptPostRender====
 
'''Type:''' [[bool]]
 
'''Type:''' [[bool]]
  
if true, PostRender2D() gets called
+
If true, {{tl|PostRender2D}}() gets called for the projectile. Actually only used by the {{cl|ONSAVRiLRocket}} to highlight incoming AVRiLs for [[liandri:Cicada|Cicada]] gunners ({{cl|ONSDualACGatlingGunPawn}}).
  
 
====bSpecialCalcView====
 
====bSpecialCalcView====
 
'''Type:''' [[bool]]
 
'''Type:''' [[bool]]
  
<!-- enter variable description -->
+
Use the projectile's {{tl|SpecialCalcView}} function instead of letting the {{cl|PlayerController}} handle the camera
  
 
====bSwitchToZeroCollision====
 
====bSwitchToZeroCollision====
 
'''Type:''' [[bool]]
 
'''Type:''' [[bool]]
  
if collisionextent nonzero, and hit actor with bBlockNonZeroExtents=0, switch to zero extent collision
+
If the projectile's collision cylinder is non-zero and it hits an actor with {{tl|bBlockNonZeroExtentTraces||Actor properties}}=''False'', try collision with zero-extent collision instead.
  
 
====Damage====
 
====Damage====
 
'''Type:''' [[float]]
 
'''Type:''' [[float]]
  
<!-- enter variable description -->
+
The projectile's impact damage.
  
 
====DamageRadius====
 
====DamageRadius====
 
'''Type:''' [[float]]
 
'''Type:''' [[float]]
  
<!-- enter variable description -->
+
The projectile's explosion damage radius.
  
 
'''Default value:''' 220.0
 
'''Default value:''' 220.0
Line 51: Line 49:
 
'''Type:''' [[class]]<{{cl|Projector}}>
 
'''Type:''' [[class]]<{{cl|Projector}}>
  
<!-- enter variable description -->
+
A decal to spawn when hitting a wall.
  
 
====ExploWallOut====
 
====ExploWallOut====
 
'''Type:''' [[float]]
 
'''Type:''' [[float]]
  
distance to move explosions out from wall
+
The actual explosion center is moved away from the wall impact location along the hit normal by this amount. This prevents visibility test traces from getting stuck in the wall.
  
 
====HurtWall====
 
====HurtWall====
 
'''Type:''' {{cl|Actor}}
 
'''Type:''' {{cl|Actor}}
  
<!-- enter variable description -->
+
Set during {{tl|HitWall}} if the "wall" is not world geometry. The radius damage to this actor is not reduced by distance.
  
 
====ImpactSound====
 
====ImpactSound====
 
'''Type:''' {{cl|Sound}}
 
'''Type:''' {{cl|Sound}}
  
<!-- enter variable description -->
+
A sound effect to play when exploding.
  
 
====InstigatorController====
 
====InstigatorController====
 
'''Type:''' {{cl|Controller}}
 
'''Type:''' {{cl|Controller}}
  
<!-- enter variable description -->
+
The Controller of the {{tl|Instigator||Actor internal variables}}. This is set at spawn-time so long living projectiles can be associated with their owning player even if that player dies before the projectile causes damage.
  
 
====LastTouched====
 
====LastTouched====
 
'''Type:''' {{cl|Actor}}
 
'''Type:''' {{cl|Actor}}
  
<!-- enter variable description -->
+
Set during {{tl|Touch}} to the touched actor. The radius damage to this actor is not reduced by distance.
  
 
====MaxEffectDistance====
 
====MaxEffectDistance====
Line 98: Line 96:
 
'''Type:''' [[class]]<{{cl|DamageType}}>
 
'''Type:''' [[class]]<{{cl|DamageType}}>
  
<!-- enter variable description -->
+
This projectile's damage type.
  
 
'''Default value:''' [[Types#Class|Class]]'{{cl|DamageType|Engine}}'
 
'''Default value:''' [[Types#Class|Class]]'{{cl|DamageType|Engine}}'
Line 195: Line 193:
 
{{code|simulated static function [[float]]&nbsp;'''GetRange''' ()}}
 
{{code|simulated static function [[float]]&nbsp;'''GetRange''' ()}}
  
<!-- enter function description -->
+
Calculates and returns the projectile's range, based on the default {{tl|MaxSpeed}} and {{tl|LifeSpan||Actor properties}}. If the projectile has an infinite default lifespan (0.0), a range of 15000.0 is assumed.
  
 
===Events===
 
===Events===

Latest revision as of 15:29, 28 November 2008

UT2004 Object >> Actor >> Projectile
Package: 
Engine
Direct subclasses:
FlakChunk, BioGlob, FX_SpaceFighter_InstantHitLaser, Flakshell, GasBagBelch, Grenade, KrallBolt, LinkProjectile, ONSAVRiLRocket, ONSAttackCraftMissle, ONSBomb, ONSBomberRocketProjectile, ONSDecoy, ONSDualACRocket, ONSGrenadeProjectile, ONSMASRocketProjectile, ONSMineProjectile, ONSMortarShell, ONSPlasmaProjectile, ONSRVWebProjectile, ONSRocketProjectile, PROJ_LinkTurret_Plasma, PROJ_Sentinel_Laser, PROJ_SpaceFighter_Rocket, PROJ_TurretSkaarjPlasma, RedeemerProjectile, RocketProj, ShockProjectile, SkaarjProjectile, SpawnerProjectile, TracerProjectile, TranslocatorBeacon
Known custom subclasses:
Crusha/DynamicWeather, Crusha/DynamicWeather/DWHail, Crusha/DynamicWeather/DWMeteor, Crusha/DynamicWeather/DWRealRain
This class in other games:
RTNP, U1, UT, U2XMP, UE2Runtime, UT2003, U2, UT3, UDK

A delayed-hit projectile that moves around for some time after it is created.


Properties[edit]

bNoFX[edit]

Type: bool

Used to prevent effects when projectiles are destroyed. (see e.g. LimitationVolume)

bReadyToSplash[edit]

Type: bool

Set during PostBeginPlay() to prevent the projectile from causing a splash effect at spawn-time.

bScriptPostRender[edit]

Type: bool

If true, PostRender2D() gets called for the projectile. Actually only used by the ONSAVRiLRocket to highlight incoming AVRiLs for Cicada gunners (ONSDualACGatlingGunPawn).

bSpecialCalcView[edit]

Type: bool

Use the projectile's SpecialCalcView function instead of letting the PlayerController handle the camera

bSwitchToZeroCollision[edit]

Type: bool

If the projectile's collision cylinder is non-zero and it hits an actor with bBlockNonZeroExtentTraces=False, try collision with zero-extent collision instead.

Damage[edit]

Type: float

The projectile's impact damage.

DamageRadius[edit]

Type: float

The projectile's explosion damage radius.

Default value: 220.0

ExplosionDecal[edit]

Type: class<Projector>

A decal to spawn when hitting a wall.

ExploWallOut[edit]

Type: float

The actual explosion center is moved away from the wall impact location along the hit normal by this amount. This prevents visibility test traces from getting stuck in the wall.

HurtWall[edit]

Type: Actor

Set during HitWall if the "wall" is not world geometry. The radius damage to this actor is not reduced by distance.

ImpactSound[edit]

Type: Sound

A sound effect to play when exploding.

InstigatorController[edit]

Type: Controller

The Controller of the Instigator. This is set at spawn-time so long living projectiles can be associated with their owning player even if that player dies before the projectile causes damage.

LastTouched[edit]

Type: Actor

Set during Touch to the touched actor. The radius damage to this actor is not reduced by distance.

MaxEffectDistance[edit]

Type: float


MaxSpeed[edit]

Type: float

Limit on speed of projectile (0 means no limit)

Default value: 2000.0

MomentumTransfer[edit]

Type: float

Momentum magnitude imparted by impacting projectile.

MyDamageType[edit]

Type: class<DamageType>

This projectile's damage type.

Default value: Class'Engine.DamageType'

SpawnSound[edit]

Type: Sound

Sound made when projectile is spawned.

Speed[edit]

Type: float

Initial speed of projectile.

TossZ[edit]

Type: float


Default value: 100.0

ZeroCollider[edit]

Type: Actor


Default values[edit]

Property Value
bAcceptsProjectors False
bCanBeDamaged True
bCollideActors True
bCollideWorld True
bDisturbFluidSurface True
bGameRelevant True
bNetInitialRotation True
bNetTemporary True
bReplicateInstigator True
bUnlit True
bUseCylinderCollision True
CollisionHeight 0.0
CollisionRadius 0.0
DrawType DT_Mesh
LifeSpan 14.0
NetPriority 2.5
Physics PHYS_Projectile
RemoteRole ROLE_SimulatedProxy
SoundVolume 0
Texture S_Camera

Functions[edit]

Static functions[edit]

GetRange[edit]

simulated static function float GetRange ()

Calculates and returns the projectile's range, based on the default MaxSpeed and LifeSpan. If the projectile has an infinite default lifespan (0.0), a range of 15000.0 is assumed.

Events[edit]

EncroachingOn[edit]

event bool EncroachingOn (Actor Other)

Overrides: Actor.EncroachingOn


HitWall[edit]

simulated singular event HitWall (Object.Vector HitNormal, Actor Wall)

Overrides: Actor.HitWall


PostBeginPlay[edit]

simulated event PostBeginPlay ()

Overrides: Actor.PostBeginPlay


PostRender2D[edit]

simulated event PostRender2D (Canvas C, float ScreenLocX, float ScreenLocY)


Touch[edit]

simulated singular event Touch (Actor Other)

Overrides: Actor.Touch


Other instance functions[edit]

BlowUp[edit]

simulated function BlowUp (Object.Vector HitLocation)


CanSplash[edit]

simulated function bool CanSplash ()

Overrides: Actor.CanSplash


CheckMaxEffectDistance[edit]

simulated function bool CheckMaxEffectDistance (PlayerController P, Object.Vector SpawnLocation)

Overrides: Actor.CheckMaxEffectDistance


ClientSideTouch[edit]

simulated function ClientSideTouch (Actor Other, Object.Vector HitLocation)


DelayedHurtRadius[edit]

simulated function DelayedHurtRadius (float DamageAmount, float DamageRadius, class<DamageTypeDamageType, float Momentum, Object.Vector HitLocation)


Explode[edit]

simulated function Explode (Object.Vector HitLocation, Object.Vector HitNormal)


HurtRadius[edit]

simulated function HurtRadius (float DamageAmount, float DamageRadius, class<DamageTypeDamageType, float Momentum, Object.Vector HitLocation)

Overrides: Actor.HurtRadius


IsStationary[edit]

function bool IsStationary ()

Overrides: Actor.IsStationary


ProcessTouch[edit]

simulated function ProcessTouch (Actor Other, Object.Vector HitLocation)


RandSpin[edit]

simulated final function RandSpin (float spinRate)


Reset[edit]

function Reset ()

Overrides: Actor.Reset


SpecialCalcView[edit]

function bool SpecialCalcView (out Actor ViewActor, out Object.Vector CameraLocation, out Object.Rotator CameraRotation, bool bBehindView)