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

An enemy movement that simply runs in a given direction optionaly shotting projectiles. More...

Inheritance diagram for PlatformerPro.EnemyMovement_Charge:
PlatformerPro.EnemyMovement PlatformerPro.PlatformerProMonoBehaviour PlatformerPro.EnemyMovement_ChargeAtTarget PlatformerPro.EnemyMovement_ChargeWithBounce

Public Member Functions

override EnemyMovement Init (Enemy enemy)
 Initialise this movement and return a reference to the ready to use movement. More...
 
override bool DoMove ()
 Moves the character. More...
 
override void HitCharacter (Character character, DamageInfo info)
 Called when the enemy hits the character. More...
 
override void SwitchDirection ()
 Called by the enemy to switch (x) direction of the movement. Note that not all movements need to support this, they may do nothing. More...
 
virtual void FirePreparedProjectile ()
 Fired a previously prepared projectile. More...
 
override void SetDirection (Vector2 direction)
 Set the direction of the charge. More...
 
- Public Member Functions inherited from PlatformerPro.EnemyMovement
virtual void DoDamage (DamageInfo info)
 Do the damage movement More...
 
virtual void DoDeath (DamageInfo info)
 Do the death movement More...
 
virtual void GainingControl ()
 Called when this movement is gaining control. More...
 
virtual bool LosingControl ()
 Called when this movement is losing control. More...
 
virtual bool CheckForEdge (int movementDirection)
 Uses the Enemies feet colliders to see if there is nothing below the enemy, and if so returns true. More...
 
- Public Member Functions inherited from PlatformerPro.PlatformerProMonoBehaviour
virtual 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...
 

Public Attributes

float speed
 The speed the platform moves at. More...
 
bool bounceOnHit
 Will the enemy change direction when it hits the character? More...
 
bool walkOffEdges = true
 Will the enemy change direction when it finds an edge? More...
 
float rateOfFire = 2.0f
 How often to shoot More...
 
float shootTime = 0.25f
 How often to shoot More...
 
GameObject projectilePrefab
 The prefab to use for the projectile. More...
 
int damageAmount
 The damage amount. More...
 
DamageType damageType
 The type of the damage. More...
 
bool delayFire
 If true don't actually fire a project, just prepare it. Used so an animation event can trigger projectile firing. More...
 
AnimationState animationState = AnimationState.WALK
 The animation state to set while charging. More...
 

Protected Member Functions

virtual void DoShoot ()
 Do the shoot. More...
 
virtual IEnumerator ShootRoutine ()
 
virtual void DoPrepare (Projectile projectile)
 Prepares a projectile ready for firing. More...
 

Protected Attributes

float firingTimer
 When this is zero ... shoot! More...
 
ProjectileAimer projectileAimer
 Cached reference to a projectile aimer, or null if there is no aimer. More...
 
Projectile preparedProjectile
 Cached projectile ready to be fired by animation event. More...
 
Vector2 preparedDirection
 Cached direction ready to be used when projectile fired by animation event. More...
 
Vector2 preparedOffset
 Cached offset ready to be used when projectile fired by animation event. More...
 
- Protected Attributes inherited from PlatformerPro.EnemyMovement
Enemy enemy
 Cached reference to the character. More...
 

Static Protected Attributes

const string overrideName = "SHOOT"
 Name of the animation override More...
 

Properties

new static MovementInfo Info [get]
 Static movement info used by the editor. More...
 
override AnimationState AnimationState [get]
 Gets the animation state that this movement wants to set. More...
 
override int FacingDirection [get]
 Returns the direction the character is facing. 0 for none, 1 for right, -1 for left. More...
 
- Properties inherited from PlatformerPro.EnemyMovement
virtual AnimationState AnimationState [get]
 Gets the animation state that this movement wants to set. More...
 
virtual string OverrideState [get]
 Gets the animation override state that this movement wants to set. More...
 
virtual int FacingDirection [get]
 Returns the direction the character is facing. 0 for none, 1 for right, -1 for left. More...
 
virtual bool ShouldSnapToGround [get]
 If we are grounded shoudl we snap to the ground. Helps us handle slopes. More...
 
static MovementInfo Info [get]
 Static movement info used by the editor. 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...
 

Detailed Description

An enemy movement that simply runs in a given direction optionaly shotting projectiles.

Member Function Documentation

◆ DoMove()

override bool PlatformerPro.EnemyMovement_Charge.DoMove ( )
virtual

◆ DoPrepare()

virtual void PlatformerPro.EnemyMovement_Charge.DoPrepare ( Projectile  projectile)
protectedvirtual

Prepares a projectile ready for firing.

Parameters
projectileProjectile.

◆ DoShoot()

virtual void PlatformerPro.EnemyMovement_Charge.DoShoot ( )
protectedvirtual

Do the shoot.

◆ FirePreparedProjectile()

virtual void PlatformerPro.EnemyMovement_Charge.FirePreparedProjectile ( )
virtual

Fired a previously prepared projectile.

◆ HitCharacter()

override void PlatformerPro.EnemyMovement_Charge.HitCharacter ( Character  character,
DamageInfo  info 
)
virtual

Called when the enemy hits the character.

Parameters
characterCharacter.
infoDamage info.

Reimplemented from PlatformerPro.EnemyMovement.

Reimplemented in PlatformerPro.EnemyMovement_ChargeAtTarget.

◆ Init()

override EnemyMovement PlatformerPro.EnemyMovement_Charge.Init ( Enemy  enemy)
virtual

Initialise this movement and return a reference to the ready to use movement.

Reimplemented from PlatformerPro.EnemyMovement.

Reimplemented in PlatformerPro.EnemyMovement_ChargeAtTarget.

◆ SetDirection()

override void PlatformerPro.EnemyMovement_Charge.SetDirection ( Vector2  direction)
virtual

Set the direction of the charge.

Parameters
directionDirection.

Reimplemented from PlatformerPro.EnemyMovement.

Reimplemented in PlatformerPro.EnemyMovement_ChargeAtTarget.

◆ ShootRoutine()

virtual IEnumerator PlatformerPro.EnemyMovement_Charge.ShootRoutine ( )
protectedvirtual

Fire projectile then temporarily set an animation override.

◆ SwitchDirection()

override void PlatformerPro.EnemyMovement_Charge.SwitchDirection ( )
virtual

Called by the enemy to switch (x) direction of the movement. Note that not all movements need to support this, they may do nothing.

Reimplemented from PlatformerPro.EnemyMovement.

Reimplemented in PlatformerPro.EnemyMovement_ChargeAtTarget.

Member Data Documentation

◆ animationState

AnimationState PlatformerPro.EnemyMovement_Charge.animationState = AnimationState.WALK

The animation state to set while charging.

◆ bounceOnHit

bool PlatformerPro.EnemyMovement_Charge.bounceOnHit

Will the enemy change direction when it hits the character?

◆ damageAmount

int PlatformerPro.EnemyMovement_Charge.damageAmount

The damage amount.

◆ damageType

DamageType PlatformerPro.EnemyMovement_Charge.damageType

The type of the damage.

◆ delayFire

bool PlatformerPro.EnemyMovement_Charge.delayFire

If true don't actually fire a project, just prepare it. Used so an animation event can trigger projectile firing.

◆ firingTimer

float PlatformerPro.EnemyMovement_Charge.firingTimer
protected

When this is zero ... shoot!

◆ overrideName

const string PlatformerPro.EnemyMovement_Charge.overrideName = "SHOOT"
staticprotected

Name of the animation override

◆ preparedDirection

Vector2 PlatformerPro.EnemyMovement_Charge.preparedDirection
protected

Cached direction ready to be used when projectile fired by animation event.

◆ preparedOffset

Vector2 PlatformerPro.EnemyMovement_Charge.preparedOffset
protected

Cached offset ready to be used when projectile fired by animation event.

◆ preparedProjectile

Projectile PlatformerPro.EnemyMovement_Charge.preparedProjectile
protected

Cached projectile ready to be fired by animation event.

◆ projectileAimer

ProjectileAimer PlatformerPro.EnemyMovement_Charge.projectileAimer
protected

Cached reference to a projectile aimer, or null if there is no aimer.

◆ projectilePrefab

GameObject PlatformerPro.EnemyMovement_Charge.projectilePrefab

The prefab to use for the projectile.

◆ rateOfFire

float PlatformerPro.EnemyMovement_Charge.rateOfFire = 2.0f

How often to shoot

◆ shootTime

float PlatformerPro.EnemyMovement_Charge.shootTime = 0.25f

How often to shoot

◆ speed

float PlatformerPro.EnemyMovement_Charge.speed

The speed the platform moves at.

◆ walkOffEdges

bool PlatformerPro.EnemyMovement_Charge.walkOffEdges = true

Will the enemy change direction when it finds an edge?

Property Documentation

◆ AnimationState

override AnimationState PlatformerPro.EnemyMovement_Charge.AnimationState
get

Gets the animation state that this movement wants to set.

◆ FacingDirection

override int PlatformerPro.EnemyMovement_Charge.FacingDirection
get

Returns the direction the character is facing. 0 for none, 1 for right, -1 for left.

◆ Info

new static MovementInfo PlatformerPro.EnemyMovement_Charge.Info
staticget

Static movement info used by the editor.


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