A class used to describe the behaviour of a projectile, usually spawned by a ProjectileWeapon.
More...
|
| virtual void | Movement () |
| | Handles the projectile's movement, every frame.
|
| virtual void | SetDirection (Vector3 newDirection, Quaternion newRotation, bool spawnerIsFacingRight=true) |
| | Sets the projectile's direction.
|
| virtual void | Flip () |
| | Flip the projectile.
|
| virtual void | SetWeapon (Weapon newWeapon) |
| | Sets the projectile's parent weapon.
|
| virtual void | SetOwner (GameObject newOwner) |
| | Sets the projectile's owner.
|
| virtual GameObject | GetOwner () |
| | Returns the current Owner of the projectile.
|
| virtual void | SetDamage (int newDamage) |
| | Sets the damage caused by the projectile's DamageOnTouch to the specified value.
|
| delegate void | Events () |
| virtual void | Destroy () |
| | Turns the instance inactive, in order to eventually reuse it.
|
| virtual void | TriggerOnSpawnComplete () |
| | Triggers the on spawn complete event.
|
| virtual Bounds | GetBounds () |
| | Returns the bounds of the object, based on what has been defined.
|
|
| bool | FaceDirection = true |
| | if true, the projectile will rotate at initialization towards its rotation
|
| bool | FaceMovementDirection = false |
| | if this is true, the projectile will update its rotation every frame to match its movement direction
|
| float | Speed = 200 |
| | the speed of the object (relative to the level's speed)
|
| float | Acceleration = 0 |
| | the acceleration of the object over time. Starts accelerating on enable.
|
| Vector3 | Direction = Vector3.left |
| | the current direction of the object
|
| bool | DirectionCanBeChangedBySpawner = true |
| | if set to true, the spawner can change the direction of the object. If not the one set in its inspector will be used.
|
| Vector3 | FlipValue = new Vector3(-1,1,1) |
| | the flip factor to apply if and when the projectile is mirrored - this will only be taken into account if this projectile's game object doesn't have a SpriteRenderer component. If it does, the flipX property of the SpriteRenderer will be used instead.
|
| bool | ProjectileIsFacingRight = true |
| | determines whether or not the projectile is facing right
|
| float | InitialInvulnerabilityDuration =0f |
| | the initial delay during which the projectile can't be destroyed
|
| bool | DamageOwner = false |
| | should the projectile damage its owner ?
|
| bool | SpawnSecurityCheck = false |
| | if this is true, the projectile will perform an extra check on initialization to make sure it's not within an obstacle. If it is, it'll disable itself.
|
| LayerMask | SpawnSecurityCheckLayerMask |
| | the layermask to use when performing the security check
|
| UnityEvent | ExecuteOnEnable |
| UnityEvent | ExecuteOnDisable |
| float | LifeTime = 0f |
| | The life time, in seconds, of the object. If set to 0 it'll live forever, if set to any positive value it'll be set inactive after that time.
|
| WaysToDetermineBounds | BoundsBasedOn |
|
| virtual void | Awake () |
| | On awake, we store the initial speed of the object.
|
| virtual IEnumerator | InitialInvulnerability () |
| | Handles the projectile's initial invincibility.
|
| virtual void | Initialization () |
| | Initializes the projectile.
|
| virtual void | CheckForCollider () |
| | Performs a local check to see if the projectile is within a collider or not.
|
| virtual void | FixedUpdate () |
| | On FixedUpdate(), we move the object based on the level's speed and the object's speed, and apply acceleration.
|
| virtual void | HandleFaceMovement () |
| | If FaceMovementDirection is true, orients the projectile to match its current movement direction.
|
| virtual void | OnHit () |
| | On hit, we trigger a hit on our owner weapon.
|
| virtual void | OnHitDamageable () |
| | On hit damageable, we trigger a hit damageable on our owner weapon.
|
| virtual void | OnHitNonDamageable () |
| | On hit non damageable, we trigger a hit non damageable on our owner weapon.
|
| virtual void | OnKill () |
| | On kill, we trigger a kill on our owner weapon.
|
| override void | OnEnable () |
| | On enable, we reset the object's speed.
|
| override void | OnDisable () |
| | On disable, we unsubscribe from our delegates.
|
| virtual void | Update () |
| | Called every frame.
|
| virtual void | Reset () |
| | When this component is added we define its bounds.
|
| virtual void | DefineBoundsChoice () |
| | Tries to determine automatically what the bounds should be based on. In this order, it'll keep the last found of these : Collider2D, Collider or Renderer. If none of these is found, it'll be set as Undefined.
|
A class used to describe the behaviour of a projectile, usually spawned by a ProjectileWeapon.
◆ Awake()
| virtual void MoreMountains.CorgiEngine.Projectile.Awake |
( |
| ) |
|
|
protectedvirtual |
On awake, we store the initial speed of the object.
◆ CheckForCollider()
| virtual void MoreMountains.CorgiEngine.Projectile.CheckForCollider |
( |
| ) |
|
|
protectedvirtual |
Performs a local check to see if the projectile is within a collider or not.
◆ FixedUpdate()
| virtual void MoreMountains.CorgiEngine.Projectile.FixedUpdate |
( |
| ) |
|
|
protectedvirtual |
On FixedUpdate(), we move the object based on the level's speed and the object's speed, and apply acceleration.
◆ Flip()
| virtual void MoreMountains.CorgiEngine.Projectile.Flip |
( |
| ) |
|
|
virtual |
◆ GetOwner()
| virtual GameObject MoreMountains.CorgiEngine.Projectile.GetOwner |
( |
| ) |
|
|
virtual |
Returns the current Owner of the projectile.
- Returns
◆ HandleFaceMovement()
| virtual void MoreMountains.CorgiEngine.Projectile.HandleFaceMovement |
( |
| ) |
|
|
protectedvirtual |
If FaceMovementDirection is true, orients the projectile to match its current movement direction.
◆ InitialInvulnerability()
| virtual IEnumerator MoreMountains.CorgiEngine.Projectile.InitialInvulnerability |
( |
| ) |
|
|
protectedvirtual |
Handles the projectile's initial invincibility.
- Returns
- The invulnerability.
◆ Initialization()
| virtual void MoreMountains.CorgiEngine.Projectile.Initialization |
( |
| ) |
|
|
protectedvirtual |
◆ Movement()
| virtual void MoreMountains.CorgiEngine.Projectile.Movement |
( |
| ) |
|
|
virtual |
◆ OnDisable()
| override void MoreMountains.CorgiEngine.Projectile.OnDisable |
( |
| ) |
|
|
protectedvirtual |
◆ OnEnable()
| override void MoreMountains.CorgiEngine.Projectile.OnEnable |
( |
| ) |
|
|
protectedvirtual |
◆ OnHit()
| virtual void MoreMountains.CorgiEngine.Projectile.OnHit |
( |
| ) |
|
|
protectedvirtual |
On hit, we trigger a hit on our owner weapon.
◆ OnHitDamageable()
| virtual void MoreMountains.CorgiEngine.Projectile.OnHitDamageable |
( |
| ) |
|
|
protectedvirtual |
On hit damageable, we trigger a hit damageable on our owner weapon.
◆ OnHitNonDamageable()
| virtual void MoreMountains.CorgiEngine.Projectile.OnHitNonDamageable |
( |
| ) |
|
|
protectedvirtual |
On hit non damageable, we trigger a hit non damageable on our owner weapon.
◆ OnKill()
| virtual void MoreMountains.CorgiEngine.Projectile.OnKill |
( |
| ) |
|
|
protectedvirtual |
On kill, we trigger a kill on our owner weapon.
◆ SetDamage()
| virtual void MoreMountains.CorgiEngine.Projectile.SetDamage |
( |
int | newDamage | ) |
|
|
virtual |
Sets the damage caused by the projectile's DamageOnTouch to the specified value.
- Parameters
-
◆ SetDirection()
| virtual void MoreMountains.CorgiEngine.Projectile.SetDirection |
( |
Vector3 | newDirection, |
|
|
Quaternion | newRotation, |
|
|
bool | spawnerIsFacingRight = true ) |
|
virtual |
Sets the projectile's direction.
- Parameters
-
| newDirection | New direction. |
| newRotation | New rotation. |
| spawnerIsFacingRight | If set to true spawner is facing right. |
◆ SetOwner()
| virtual void MoreMountains.CorgiEngine.Projectile.SetOwner |
( |
GameObject | newOwner | ) |
|
|
virtual |
Sets the projectile's owner.
- Parameters
-
◆ SetWeapon()
| virtual void MoreMountains.CorgiEngine.Projectile.SetWeapon |
( |
Weapon | newWeapon | ) |
|
|
virtual |
Sets the projectile's parent weapon.
- Parameters
-
◆ _collider
| BoxCollider2D MoreMountains.CorgiEngine.Projectile._collider |
|
protected |
◆ _damageOnTouch
| DamageOnTouch MoreMountains.CorgiEngine.Projectile._damageOnTouch |
|
protected |
◆ _facingRightInitially
| bool MoreMountains.CorgiEngine.Projectile._facingRightInitially |
|
protected |
◆ _health
| Health MoreMountains.CorgiEngine.Projectile._health |
|
protected |
◆ _hit2D
| RaycastHit2D MoreMountains.CorgiEngine.Projectile._hit2D |
|
protected |
◆ _initialFlipX
| bool MoreMountains.CorgiEngine.Projectile._initialFlipX |
|
protected |
◆ _initialInvulnerabilityDurationWFS
| WaitForSeconds MoreMountains.CorgiEngine.Projectile._initialInvulnerabilityDurationWFS |
|
protected |
◆ _initialLocalScale
| Vector3 MoreMountains.CorgiEngine.Projectile._initialLocalScale |
|
protected |
◆ _initialSpeed
| float MoreMountains.CorgiEngine.Projectile._initialSpeed |
|
protected |
◆ _movement
| Vector3 MoreMountains.CorgiEngine.Projectile._movement |
|
protected |
◆ _owner
| GameObject MoreMountains.CorgiEngine.Projectile._owner |
|
protected |
◆ _raycastOrigin
| Vector2 MoreMountains.CorgiEngine.Projectile._raycastOrigin |
|
protected |
◆ _raycastSkinSecurity
| const float MoreMountains.CorgiEngine.Projectile._raycastSkinSecurity =0.01f |
|
staticprotected |
◆ _spawnerIsFacingRight
| bool MoreMountains.CorgiEngine.Projectile._spawnerIsFacingRight |
|
protected |
◆ _spriteRenderer
| SpriteRenderer MoreMountains.CorgiEngine.Projectile._spriteRenderer |
|
protected |
◆ _weapon
| Weapon MoreMountains.CorgiEngine.Projectile._weapon |
|
protected |
◆ Acceleration
| float MoreMountains.CorgiEngine.Projectile.Acceleration = 0 |
the acceleration of the object over time. Starts accelerating on enable.
◆ DamageOwner
| bool MoreMountains.CorgiEngine.Projectile.DamageOwner = false |
should the projectile damage its owner ?
◆ Direction
| Vector3 MoreMountains.CorgiEngine.Projectile.Direction = Vector3.left |
the current direction of the object
◆ DirectionCanBeChangedBySpawner
| bool MoreMountains.CorgiEngine.Projectile.DirectionCanBeChangedBySpawner = true |
if set to true, the spawner can change the direction of the object. If not the one set in its inspector will be used.
◆ FaceDirection
| bool MoreMountains.CorgiEngine.Projectile.FaceDirection = true |
if true, the projectile will rotate at initialization towards its rotation
◆ FaceMovementDirection
| bool MoreMountains.CorgiEngine.Projectile.FaceMovementDirection = false |
if this is true, the projectile will update its rotation every frame to match its movement direction
◆ FlipValue
| Vector3 MoreMountains.CorgiEngine.Projectile.FlipValue = new Vector3(-1,1,1) |
the flip factor to apply if and when the projectile is mirrored - this will only be taken into account if this projectile's game object doesn't have a SpriteRenderer component. If it does, the flipX property of the SpriteRenderer will be used instead.
◆ InitialInvulnerabilityDuration
| float MoreMountains.CorgiEngine.Projectile.InitialInvulnerabilityDuration =0f |
the initial delay during which the projectile can't be destroyed
◆ ProjectileIsFacingRight
| bool MoreMountains.CorgiEngine.Projectile.ProjectileIsFacingRight = true |
determines whether or not the projectile is facing right
◆ SpawnSecurityCheck
| bool MoreMountains.CorgiEngine.Projectile.SpawnSecurityCheck = false |
if this is true, the projectile will perform an extra check on initialization to make sure it's not within an obstacle. If it is, it'll disable itself.
◆ SpawnSecurityCheckLayerMask
| LayerMask MoreMountains.CorgiEngine.Projectile.SpawnSecurityCheckLayerMask |
the layermask to use when performing the security check
◆ Speed
| float MoreMountains.CorgiEngine.Projectile.Speed = 200 |
the speed of the object (relative to the level's speed)
◆ SourceWeapon
| virtual Weapon MoreMountains.CorgiEngine.Projectile.SourceWeapon |
|
get |
Returns the weapon that created this projectile, if there's one.
◆ TargetDamageOnTouch
| virtual DamageOnTouch MoreMountains.CorgiEngine.Projectile.TargetDamageOnTouch |
|
get |
Returns the associated damage on touch zone.
The documentation for this class was generated from the following file: