using System.Collections; using System.Collections.Generic; using UnityEngine; [RequireComponent(typeof(BasicPlayerMovement))] public class BasicPlayerCombat : MonoBehaviour { [SerializeField] private GameObject singleAttackPrefab; Player player; GameObject singleAttackPlaceholder; BasicPlayerMovement basicPlayerMovement; float turnDirection; void Start() { player = GameObject.Find("Player").GetComponent(); if (player == null) { Debug.LogError("BasicPlayerCombat::Player component is NULL."); } basicPlayerMovement = GetComponent(); if (basicPlayerMovement == null) { Debug.LogError("BasicPlayerCombat::BasicPlayerMovement component is NULL."); } } void Update() { SingleAttack(); } void SingleAttack() { turnDirection = basicPlayerMovement.TurnDirection(); if (Input.GetKeyDown(KeyCode.LeftControl)) { Vector3 attackPosition = new Vector3(transform.position.x + turnDirection, transform.position.y, transform.position.z); GameObject singleAttack = Instantiate(singleAttackPrefab, attackPosition, Quaternion.Euler(90f, 0f, 0f)); singleAttackPlaceholder = singleAttack; singleAttack.transform.parent = player.transform; } if (Input.GetKeyUp(KeyCode.LeftControl)) { Destroy(singleAttackPlaceholder); } } }