using UnityEngine; using Unity.BossRoom.Gameplay.GameplayObjects.Character; using Unity.Netcode; [CreateAssetMenu(menuName = "Abilities/TheExecutioner")] public class TheExecutionerAbility : Ability { [Header("Executioner Settings")] public float travelTime = 2f; public float lineLength = 50f; public override void Execute(ServerCharacter character, Vector3 startPoint, Vector3 direction) { Vector3 endPoint = startPoint + (direction * lineLength); GameObject boxInstance = Instantiate(prefab, startPoint, Quaternion.LookRotation(direction)); if (boxInstance.TryGetComponent(out var netObj)) { netObj.Spawn(); boxInstance.GetComponent().Initialize( character, startPoint, endPoint, travelTime ); } } }