public void CastSpell(int index) { if (LockOnBehaviour.LockedOntoBody != null) { Skills.GetSkills()[index].GetEmitter().Emit( new OnPointTargetCastEventData( gameObject, LockOnBehaviour.LockedOntoBody.position, Stats ) ); Skills.GetSkills()[index].GetEmitter().Emit( new OnLockedTargetCastEventData( LockOnBehaviour.LockedOntoBody.gameObject, gameObject ) ); } else { Skills.GetSkills()[index].GetEmitter().Emit( new OnPointTargetCastEventData( gameObject, MousePointToWorldPos(), Stats ) ); } }
void Start() { for (int n = 0; n < SkillButtons.Length; n++) { if (n < Skills.GetSkills().Count) { Skill s = Skills.GetSkills()[n]; SkillButtons[n].image.sprite = s.UISkillImage; int cIndex = n; SkillButtons[n].onClick.AddListener(delegate(){ PlayerAttack.CastSpell(cIndex); }); } } }
void Start() { GoapSystem.Events.Add( new GoapFunctionPair( AttackPlayerWhenClose, LaunchAttack ) ); Skills.GetSkills()[1] .GetEmitter() .Emit(new OnPassiveCastEventData(Slime.gameObject)); Skills.GetSkills()[0] .GetHandler() .OnEndCast .AddListener(AttackEnd); Skills.GetSkills()[0] .GetHandler() .OnCastHitTarget .AddListener(AttackConnect); }