//public void ActivateSpirit(SpiritInstance spirit) //{ // PlayerController playerController = GetComponent<PlayerController>(); // if (playerController != null) // { // AbilitySetModel abilitySet = spirit.Model.abilitySet; // if (abilitySet != null) // { // //AutoAttackSetModel autoAttack = abilitySet.GetAutoAttackForClass(playerController.ClassId); // //EffectModel autoAttackProc = abilitySet.GetAutoAttackProcsForClass(playerController.ClassId); // //SetAutoAttack(autoAttack, autoAttackProc); // } // else // { // _attackSet = _characterModel.autoAttack; // } // } //} public void DeactivateSpirit() { PlayerController playerController = GetComponent <PlayerController>(); if (playerController != null) { _attackSet = _characterModel.autoAttack; SendEffectEvent(eEffectEvent.AutoAttackChanged); } }
public void SetAutoAttack(AutoAttackSetModel attackSet) //, EffectModel autoAttackProc = null) { _attackSet = attackSet; _combatType = _attackSet.IsRanged ? eCombatType.Ranged : eCombatType.Melee; if (_characterModel.isPlayer) { _attackSet.Preload(); } SendEffectEvent(eEffectEvent.AutoAttackChanged); //if (autoAttackProc != null) //{ // autoAttackProc.Preload(); // EffectContext newContext = EffectContext.Create(); // newContext.Initialize(gameObject, gameObject, this); // autoAttackProc.CreateAndCast(gameObject, gameObject, newContext); //} if (AutoAttackChangedEvent != null) { AutoAttackChangedEvent(); } }