using System.Collections; using System.Collections.Generic; using UnityEngine; [CreateAssetMenu(fileName = "AntiProjectileAbility", menuName = "RiftMayhem/AbilitySystem/Abilities/Anti Projectile Ability", order = 0)] public class AntiProjectileAbility : BaseAbility { public GameObject antiProjectilePrefab; public float duration; public bool followUser; public bool breakOnHit; private GameObject instantiatedProjectile; private NetworkedAntiProjectile networkedAntiProjectile; public override void Execute(Taggable user) { base.Execute(user); //Debug.Log($"Player {user.name} casted {this.name} and spent {manaCost} mana."); instantiatedProjectile = Instantiate(antiProjectilePrefab, user.transform.position, user.GetComponentInChildren().transform.rotation); networkedAntiProjectile = instantiatedProjectile.GetComponent(); networkedAntiProjectile.duration = duration; networkedAntiProjectile.ownerTag = user; networkedAntiProjectile.ability = this; networkedAntiProjectile.followUser = followUser; networkedAntiProjectile.breakOnHit = breakOnHit; networkedAntiProjectile.Init(); } }