Installation
-
Open files
PLayer.cs
,Monster.cs
,Pet.cs
-
Search for this code:
foreach (Skill skill in skills)
anim.SetBool(skill.name, skill.CastTimeRemaining() > 0)
-
Replace with this code:
if (state == "CASTING") { // Reset all animation bools for skills foreach (Skill skill in skills.skills) #if _iMMOANIMATIONTAGS { // if (!skill.noAnimation || !skill.animationType == SkillAnimationType.NoAnimation) if (skill.animationType != SkillAnimationType.NoAnimation) { if (skill.animationType == SkillAnimationType.ScriptableName) animator.SetBool(skill.name, false); else if (skill.animationType == SkillAnimationType.AnimationTag && !string.IsNullOrEmpty(skill.animationTag) && validParameters.Contains(skill.animationTag)) animator.SetBool(skill.animationTag, false); } } // Set animation bool for current skill foreach (Skill skill in skills.skills) { if (skills.skills[skills.currentSkill].name == skill.name && skill.level > 0 && !(skill.data is PassiveSkill)) { if (skill.animationType != SkillAnimationType.NoAnimation) { if (skill.animationType == SkillAnimationType.ScriptableName) animator.SetBool(skill.name, skill.CastTimeRemaining() > 0); else if (skill.animationType == SkillAnimationType.AnimationTag && !string.IsNullOrEmpty(skill.animationTag) && validParameters.Contains(skill.animationTag)) animator.SetBool(skill.animationTag, skill.CastTimeRemaining() > 0); } } } #else animator.SetBool(skill.name, skill.CastTimeRemaining() > 0); #endif }
-
In
Player.cs
andMonster.cs
:- Add this code before the
Start()
function:#if _iMMOANIMATIONTAGS List<string> validParameters = new List<string>(); #endif
- Search for the
Start()
function and add this code before the end of the function:#if _iMMOANIMATIONTAGS for (int i = 0; i < animator.parameters.Length; i++) { validParameters.Add(animator.parameters[i].name); } #endif
- Add this code before the
-
In
Pet.cs
:-
Add this code:
#if _iMMOANIMATIONTAGS List<string> validParameters = new List<string>(); // networkbehaviour //////////////////////////////////////////////////////// protected override void Start() { for (int i = 0; i < animator.parameters.Length; i++) { validParameters.Add(animator.parameters[i].name); } } #endif
-