MDamageable
✔
Overview
This component is in charge of connecting the Animal Controller to any Damager Component. This will receive the Direction, Stat to modify and it will make an Animal Reaction accordingly to the Damager information
This Component Requires a reference to the Stats Component
This component can be also used on child colliders to simulate specific damages.
E.g.
You can add a MDamageable Component to the Head collider, and add a Multiplier of 2 to simulate Headshots that make twice the damage value.
You can add a MDamageable Component to the Chest collider, Shield, or Head Helmet, add a Multiplier of 0.5 to simulate Defense, and only do half the Damage.
Internal MDamageables
The component can also be set inside the Animal Hierarchy. This is very useful to create different damages and reactions to the animal.
For example, you can add an MDamageable component to the Head Collider, with a multiplier of 2 and a Reaction set to Play the Stun Action for 3 Seconds. If the Animal receives direct damage to the head collider, the Damage value will double and it will play a stun animation instead of the Damage Animations.
Parameters
General
Root
The root Damageable gameobject, if this is a child gameobject
Surface
Type of surface the damageable is e.g. Wood, Flesh, Metal etc.
Default Reaction
Reaction to apply on the Animal when receiving Damage. By Default it will apply Mode Damage on the Animal. but you can change it and use any other Animal Reaction.
You can add a MDamageable Component to the Head collider and change the reaction to activate a Stun Animation instead.
Critical Reaction
The reaction to apply to the animal if a critical hit is achieved.
Damager Reaction
The reaction to apply to the animal that is dealing the damage to this gameobject
Ignore Damager Reaction
This damageable will ignore the reaction coming from the damager. Use this when the damager needs to use the default reaction
Stats
Reference to the Stats component
Multiplier
Value to apply an extra modification to the Stats to make Double Damage, if is set to greater than 1; or acts as Defense value if is set to a value between 0-1.
Elements
A list of elements (Fire, Ice, Rock, Lightning etc.) and their associated damage multipliers that affect the damage values given to this gameobject.
Align to Damage
When enabled the animal will rotate toward the damage direction
Align Time
How long the alignment will last
Align Curve
Curve to smooth the trajectory of the alignment
Align Offset
For Animals in which the pivot may be set in the Hip position you can adjust the Rotation Pivot of the alignment with this value:
Profiles
To Activate a profile, call this function:
MDamageable.Profile_Set(
string
profileName)
To reset to the default values, call:
MDamageable.Profile_Restore();
The damageable can use different profiles to change the way the animal can react to receiving damage.
E.g. You can activate a Profile when the Character has a New Armor, and it changes the way the Damage is done. So the character will receive half the damage.
Or you can change the Profile to Heavy Damage Animations if the Animal is in a Wounded stance.
Name
The name of the profile
All the parameters inside a profile are the same parameters on the MDamageable.
Events
On Receiving Damage (Float)
Invoked when the Damageable receives damage. Sends the final value of the Stat modification.
On Critical Damage
Invoked if the Damage received is Critical.
On Damager (Gameobject)
This is invoked when a Damage is received. Use it to know who did the Damage.
On Element Damage (Int)
Invoked when receiving elemental damage (Wood, Fire, Ice, Electric etc).
Last updated