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

A platform that can be destoryed via damage. More...

Inheritance diagram for PlatformerPro.DestructiblePlatform:
PlatformerPro.Platform PlatformerPro.IHurtable PlatformerPro.PersistableObject PlatformerPro.PlatformerProMonoBehaviour

Public Member Functions

virtual void Damage (DamageInfo info)
 Deal damage to the hurtable. More...
 
- Public Member Functions inherited from PlatformerPro.Platform
virtual void Activate (IMob mob)
 Activate the platform. More...
 
virtual void Deactivate (IMob mob)
 Deactivate the platform. More...
 
virtual bool IgnoreCollision (Character character, BasicRaycast collider)
 Called to determine if collision should be ignored. Use for one way platforms or z-ordered platforms like those found in loops. More...
 
virtual bool Collide (PlatformCollisionArgs args)
 Called when one of the characters colliders collides with this platform. More...
 
virtual void Parent (IMob character)
 Called when the character is parented to this platform. More...
 
virtual void UnParent (IMob character)
 Called when the character is unparented from this platform. More...
 
virtual bool SkipMovement (Character character, Movement movement)
 Does this platform want to prevent the given movement from moving. Generally implementations will use the movement.GetType() to restrict specific classes of movement. Only applied when character is parented to the platform. More...
 
- Public Member Functions inherited from PlatformerPro.PersistableObject
void SetPersistenceState (bool state)
 Sets the persistence state. More...
 
void SetPersistenceState (bool state, string extraPersistenceData)
 Sets the persistence state, overriding extra persistence data 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

int health = 1
 How much damage before platform is destroyed. More...
 
float destroyDelay
 How long to wait before destroying object completely. More...
 
bool sendDamageOnDestroy
 Should we also send a damage event when destroyed. More...
 
List< Sprite > damagedSprites
 If non null this will be used to automatically change the sprites on damage. Order from most damaged to least damaged. The first sprite rednerer returned by GetComponentInChildren() will be used. More...
 
- Public Attributes inherited from PlatformerPro.Platform
bool useDefaultPersistence
 Does this Item get persistence defaults form the Game manager? More...
 
- Public Attributes inherited from PlatformerPro.PersistableObject
bool enablePersistence
 Should we enable persistence? More...
 
string guid = System.Guid.NewGuid().ToString()
 Unique ID for this object. You shoulnd't need to edit this, use editor debug mode if you must. More...
 
GameObject target
 GameObject to apply persitence settings to, defaults to self. More...
 
PersistableObjectType persistenceImplementation
 How do we implement the persistence settings. More...
 
bool defaultStateIsDisabled
 If true then the obejct starts disabled. More...
 
string spawnedObjectName
 If this item was spawned then save the name of the prefab here. More...
 

Protected Member Functions

virtual void OnDamaged (DamageInfo info)
 Raises the damaged event. More...
 
virtual void OnDestroyed (DamageInfo info)
 Raises the Destroyed event. More...
 
override void PostInit ()
 Set up this instance. More...
 
virtual void DoDestroy (DamageInfo info)
 A simple destroy implementation. More...
 
virtual void DoDamage (DamageInfo info)
 A simple damage implementation. More...
 
virtual IEnumerator DestroyAfterDelay (DamageInfo info)
 Coroutine to destory this object. You could override if you didn't want to destory for example if you have a pooling system. More...
 
- Protected Member Functions inherited from PlatformerPro.Platform
virtual void OnPlatformActivated (IMob character)
 Raises the activated event. More...
 
virtual void DoUpdate ()
 Add update code here so it isn't triggered during play mode. More...
 
virtual void OnPlatformDeactivated (IMob character)
 Raises the deactivated event. More...
 
virtual void OnFired (IMob character)
 Raises the fired event. More...
 
override void PostInit ()
 Init this instance. More...
 
void BaseCollide (PlatformCollisionArgs args)
 Called when one of the characters colliders collides with this platform. This handles basic shared behaviour. If you want to ignore it you can ovverride Collide() instead of CustomCollide(). More...
 
virtual bool CustomCollide (PlatformCollisionArgs args)
 Called when one of the characters colliders collides with this platform. This should be overriden for platform specific behaviour. More...
 
virtual void SavePersistenceData ()
 Gets the extra persistence data which is used to save platform state. NOTE: Generally you should override ExtraPersistenceData to save a different set of data. More...
 
override void ApplyCustomPersistence (PersistableObjectData data)
 Custom persistable implementation. Override to customise. More...
 
virtual void DoDrawGizmos ()
 Draw the base gizmos More...
 
virtual void DoDrawSelectedGizmos ()
 Draw the base gizmos shown when selected. More...
 
virtual void OnConnectedToObject (Object other)
 Called when the connect handle is dragged on to another object. More...
 
- Protected Member Functions inherited from PlatformerPro.PersistableObject
virtual void SetPersistenceDefaults ()
 Sets the persistence defaults. More...
 
virtual void ProcessState ()
 Processes the persisted state. More...
 
virtual void ApplyExtraPersistenceData (PersistableObjectData data)
 Apply any extra data. This differs from custom persistence, as custom persistence must control both data and ctivation state. More...
 

Protected Attributes

SpriteRenderer spriteRenderer
 Cached sprite renderer. More...
 
DamageInfoEventArgs damageEventArgs
 Cached copy of damage event args to save on allocations. More...
 
- Protected Attributes inherited from PlatformerPro.Platform
float friction = -1
 The friction coefficient use -1 for default. More...
 
PlatformActivationType automaticActivation
 How should the platform activate itself? More...
 
PlatformDeactivationType automaticDeactivation
 How should the platform deactivate itself? More...
 
bool conditionsEnableCollisions = true
 Should additional conditions enable or disable collisions. More...
 
CharacterEventArgs characterEventArgs
 A cached character event args that we update so we don't need to allocate. More...
 
AdditionalCondition[] conditions
 Cached list of all additional conditions. More...
 

Properties

virtual IMob Mob [get]
 Get the mobile (charater or enemy) that this hurt box belongs too. In this case null. More...
 
- Properties inherited from PlatformerPro.Platform
virtual bool Activated [get, protected set]
 Gets or sets a value indicating whether this PlatformerPro.Platform is activated. More...
 
virtual float Friction [get]
 Gets the friction coefficent for the platform. Returns -1 if the default should be used. More...
 
virtual bool IsMultiplayerReady [get]
 Gets a value indicating whether this platform can handle multiple characters at once. More...
 
virtual PlatformActivationType ForcedActivation [get]
 If this is not NONE then the actiation state will be forced to this value and not editable by user. More...
 
virtual PlatformDeactivationType ForcedDeactivation [get]
 If this is not NONE then the deactiation state will be forced to this value and not editable by user. More...
 
- Properties inherited from PlatformerPro.PersistableObject
virtual string ExtraPersistenceData [get]
 Gets the extra persistence data. 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...
 
- Properties inherited from PlatformerPro.IHurtable
IMob Mob [get]
 Get the mobile (charater or enemy) that this hurt box belongs too. Can return null. More...
 

Events

System.EventHandler< DamageInfoEventArgsDamaged
 Event for damage. More...
 
System.EventHandler< DamageInfoEventArgsDestroyed
 Event for destory. More...
 
- Events inherited from PlatformerPro.Platform
System.EventHandler< CharacterEventArgsPlatformActivated
 Occurs when activated. More...
 
System.EventHandler< CharacterEventArgsPlatformDeactivated
 Occurs when deactivated. More...
 
System.EventHandler< CharacterEventArgsFired
 Some platforms have a special kind of action separate to activa or deactivate. For example the spring of a spring baord, or the fall of a decaying platform. This event is sent for those states. More...
 

Additional Inherited Members

- Static Public Attributes inherited from PlatformerPro.Platform
static Color GizmoColor = new Color(0.3f, 0.4f, 1.0f, 1.0f)
 Default color to use when drawing Platform gizmos. More...
 
- Static Protected Attributes inherited from PlatformerPro.Platform
static GUIStyle connectionHandleStyle
 The conneciton handle stlye More...
 
static Platform activeConnectHandleDrag
 
static Vector3 currentConnectPosition
 

Detailed Description

A platform that can be destoryed via damage.

Member Function Documentation

◆ Damage()

virtual void PlatformerPro.DestructiblePlatform.Damage ( DamageInfo  info)
virtual

Deal damage to the hurtable.

Parameters
infoInfo.

Implements PlatformerPro.IHurtable.

◆ DestroyAfterDelay()

virtual IEnumerator PlatformerPro.DestructiblePlatform.DestroyAfterDelay ( DamageInfo  info)
protectedvirtual

Coroutine to destory this object. You could override if you didn't want to destory for example if you have a pooling system.

Parameters
infoDamage info.

◆ DoDamage()

virtual void PlatformerPro.DestructiblePlatform.DoDamage ( DamageInfo  info)
protectedvirtual

A simple damage implementation.

◆ DoDestroy()

virtual void PlatformerPro.DestructiblePlatform.DoDestroy ( DamageInfo  info)
protectedvirtual

A simple destroy implementation.

◆ OnDamaged()

virtual void PlatformerPro.DestructiblePlatform.OnDamaged ( DamageInfo  info)
protectedvirtual

Raises the damaged event.

Parameters
infoInfo.

◆ OnDestroyed()

virtual void PlatformerPro.DestructiblePlatform.OnDestroyed ( DamageInfo  info)
protectedvirtual

Raises the Destroyed event.

Parameters
infoInfo.

◆ PostInit()

override void PlatformerPro.DestructiblePlatform.PostInit ( )
protectedvirtual

Set up this instance.

Reimplemented from PlatformerPro.PersistableObject.

Member Data Documentation

◆ damagedSprites

List<Sprite> PlatformerPro.DestructiblePlatform.damagedSprites

If non null this will be used to automatically change the sprites on damage. Order from most damaged to least damaged. The first sprite rednerer returned by GetComponentInChildren() will be used.

◆ damageEventArgs

DamageInfoEventArgs PlatformerPro.DestructiblePlatform.damageEventArgs
protected

Cached copy of damage event args to save on allocations.

◆ destroyDelay

float PlatformerPro.DestructiblePlatform.destroyDelay

How long to wait before destroying object completely.

◆ health

int PlatformerPro.DestructiblePlatform.health = 1

How much damage before platform is destroyed.

◆ sendDamageOnDestroy

bool PlatformerPro.DestructiblePlatform.sendDamageOnDestroy

Should we also send a damage event when destroyed.

◆ spriteRenderer

SpriteRenderer PlatformerPro.DestructiblePlatform.spriteRenderer
protected

Cached sprite renderer.

Property Documentation

◆ Mob

virtual IMob PlatformerPro.DestructiblePlatform.Mob
get

Get the mobile (charater or enemy) that this hurt box belongs too. In this case null.

Event Documentation

◆ Damaged

System.EventHandler<DamageInfoEventArgs> PlatformerPro.DestructiblePlatform.Damaged

Event for damage.

◆ Destroyed

System.EventHandler<DamageInfoEventArgs> PlatformerPro.DestructiblePlatform.Destroyed

Event for destory.


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