Skill

Scriptable Object used in saving your skills to disk

Implementation

public class Skill : ScriptableObject

Inheritance

ScriptableObject --> Skill

Fields

Name

Description

uuid

Unique id of the skill

skillName

Localized string for the name of the skill

skillDescription

Localized string for the description of the skill

icon

Icon for the image

skillType

Type of the skill

skillExecutionType

Execution type of the skill

castTime

Cast time duration of the skill in seconds

executionTime

Execution time duration of the skill in seconds

cooldownTime

Cooldown time duration of the skill in seconds

skillState

State of the skill at start

useSkillPoints

Checkbox to define whether skill points should be used to unlock

skillPointsNeeded

Amount of skill points needed to unlock

requiresLevel

Checkbox to define whether this skill has a level requirement

level

Level of the skill needed to unlock

reliesOnSkills

Contains all skills one relies on

assignableToSkillBar

Checkbox to define whether this skill can be added to a skill bar

conditionsExecutionRequirements

Conditions in order to execute the skill

actionsOnActivate

Actions called when the skill is in the activation phase

actionsOnCast

Actions called when the skill is in the casting phase

actionsOnExecute

Actions called when the skill is in the execution phase

actionsOnFinish

Actions called when the skill is in the finishing phase

conditionsRequirements

Conditions to unlock the skill

actionsOnReset

Actions called when the skill is reset

Methods

Name

Description

CopySkill()

Copies the field values to a new SkillAsset

CopySkillToSkillRelyOn()

Copies the field values to a new SkillRelyOn

CreateSkillRelyOnInstance()

Creates a new SkillRelyOn instance in the project

UpdateSkillRelyOnInstance()

Updates the values of a SkillRelyOn instance

DeleteSkillRelyOnInstance()

Deletes a SkillRelyOn instance

CreateSkillInstance()

Creates a new Skill instance

OnDestroy()

Called when a scriptable object is destroyed

DestroyAsset()

Deletes a gameobject

Enums

Name

Description

SkillExecutionType

Defines the execution type of a skill

SkillState

Defines the state of the skill on start