Platformer Pro  2.3.2
A platform game kit for Unity.
PlatformerPro.ChargableProjectile Class Reference

A projectile which can be cahrged up and gets faster and/or does more damage based on the charge. More...

Inheritance diagram for PlatformerPro.ChargableProjectile:
PlatformerPro.Projectile PlatformerPro.PlatformerProMonoBehaviour

Public Attributes

float chargeToSpeedRatio = -1
 HOw does charge time convert to speed. We multiply charge time in seconds by the attacks speed. Use 0 for no effect. More...
 
float minSpeed
 The minimum speed the projectile can move at. More...
 
float maxSpeed
 The maximum speed the project can be moved at. More...
 
float chargeToDamageRatio = -1
 How does charge time convert to damage. We multiply charge time in seconds by the attacks damage amount. Use 0 for no effect. More...
 
int minDamage
 Minimum amount of damage that can be done. More...
 
int maxDamage
 Maximum amount of damage that can be done. More...
 
- Public Attributes inherited from PlatformerPro.Projectile
bool destroyOnEnemyHit
 Should this object be destroyed when this object hits an enemy? More...
 
bool destroyOnSceneryHit
 Should this object be destroyed when this object hits scenery? More...
 
float speed
 How fast the projectile moves. More...
 
ProjectileHitBox projectileHitBox
 The hit box that causes damage to enemies. More...
 
float autoExplodeDelay
 How long after projectile fires should we wait before automatically exploding it. 0 Means it wont explodes until it hits something. More...
 
float destroyDelay
 How long after projectile collides should we wait before destroying it. More...
 
bool rotate = true
 Should the projectile be rotated to face the direction of travel. More...
 
GameObject visibleComponents
 If non-null then this GameObject will ne turned on when the projectile is fired. Used for syncing projectile visuals with animation events. More...
 
Vector2 direction
 Movement direction. More...
 

Protected Member Functions

override int CalculateDamageAmount (int damageAmount, float charge)
 Calculates the actual damage amount. More...
 
override float CalculateSpeed (float charge)
 Calculates the actual speed. More...
 
- Protected Member Functions inherited from PlatformerPro.Projectile
virtual void OnProjectileFired ()
 Raises the projectile fired event. More...
 
virtual void OnProjectileDestroyed (DamageInfo info)
 Raises the projectile destroyed event. More...
 
virtual void Move ()
 Move the projectile, override if you want custom movement. More...
 
virtual IEnumerator DoDestroy (bool isEnemyHit)
 Sends the destory event, then waits for detroy delay, then destroys GO. More...
 

Additional Inherited Members

- Public Member Functions inherited from PlatformerPro.Projectile
virtual void Fire (int damageAmount, DamageType damageType, Vector2 direction, IMob character, float charge=1.0f)
 Call to start the projectile moving. More...
 
virtual void Finish ()
 End the characters attack, for most projectiles you will ignore this, but it may be useful for some movement types. More...
 
virtual void DestroyProjectile (bool isEnemyHit)
 Destroy projectile. More...
 
override void Validate (PlatformerProMonoBehaviour myTarget)
 Override this method if you want to provide custom validation. The actual code should be surrounded by the if UNITY_EDITOR / endif directive. More...
 
- Protected Attributes inherited from PlatformerPro.Projectile
DamageInfo damageInfo
 Damage this projectile will cause. More...
 
bool fired
 Have we been fired? More...
 
float actualSpeed
 The actual speed. More...
 
float remainingLifetime
 How long before we destory this bullet. More...
 
Rigidbody2D myRigidbody
 Cached rigidbody. IF a non-kinematic rigidboy is attached we launch by setting velocity and do not move each frame. More...
 
- Properties inherited from PlatformerPro.Projectile
override string Header [get]
 
float Charge [get, protected set]
 Gets the charge which can be used by effects, etc. More...
 
int ChargeLevel [get, protected set]
 Gets the charge as an int which can be used by effects, etc. More...
 
- Properties inherited from PlatformerPro.PlatformerProMonoBehaviour
virtual string Header [get]
 Gets the header string used to describe the component. More...
 
virtual string DocLink [get]
 Gets a link to documentation site. More...
 
virtual string VideoLink [get]
 Gets a link to a youtube video. More...
 
virtual string Deprecated [get]
 If non-null this component is deprecated. The string shows a message indicating how it should be replaced. More...
 
- Events inherited from PlatformerPro.Projectile
System.EventHandler< EmptyEventArgsProjectileFired
 Event for when a projectile is fired. Typically used for enabling effects. More...
 
System.EventHandler< DamageInfoEventArgsProjectileDestroyed
 Event for when a projectile crashes in to something. If the object being crashed in to is not an enemy then the damage info will be null. More...
 

Detailed Description

A projectile which can be cahrged up and gets faster and/or does more damage based on the charge.

Member Function Documentation

◆ CalculateDamageAmount()

override int PlatformerPro.ChargableProjectile.CalculateDamageAmount ( int  damageAmount,
float  charge 
)
protectedvirtual

Calculates the actual damage amount.

Returns
The damage amount.
Parameters
damageAmountDamage amount from the attack.

Reimplemented from PlatformerPro.Projectile.

◆ CalculateSpeed()

override float PlatformerPro.ChargableProjectile.CalculateSpeed ( float  charge)
protectedvirtual

Calculates the actual speed.

Returns
The speed.

Reimplemented from PlatformerPro.Projectile.

Member Data Documentation

◆ chargeToDamageRatio

float PlatformerPro.ChargableProjectile.chargeToDamageRatio = -1

How does charge time convert to damage. We multiply charge time in seconds by the attacks damage amount. Use 0 for no effect.

◆ chargeToSpeedRatio

float PlatformerPro.ChargableProjectile.chargeToSpeedRatio = -1

HOw does charge time convert to speed. We multiply charge time in seconds by the attacks speed. Use 0 for no effect.

◆ maxDamage

int PlatformerPro.ChargableProjectile.maxDamage

Maximum amount of damage that can be done.

◆ maxSpeed

float PlatformerPro.ChargableProjectile.maxSpeed

The maximum speed the project can be moved at.

◆ minDamage

int PlatformerPro.ChargableProjectile.minDamage

Minimum amount of damage that can be done.

◆ minSpeed

float PlatformerPro.ChargableProjectile.minSpeed

The minimum speed the projectile can move at.


The documentation for this class was generated from the following file: