using System; using Core.Extensions; using UnityEngine; public class Player : Entity { [SerializeField] private Camera cam; private void Update() { stats.attackOriginCenter.Lookat2D(cam.ScreenToWorldPoint(Input.mousePosition)); if (!stats.abilitiesDisabled) { if (Input.GetMouseButtonDown(0)) { stats.abilities[0].TryAbility(); } else if (Input.GetMouseButtonDown(1)) { stats.abilities[1].TryAbility(); //the ability system needs to be fixed } else if (Input.GetKeyDown(KeyCode.Q) && stats.abilities[2]) { stats.abilities[2].TryAbility(); } } } private void FixedUpdate() { if (!stats.isStalled) { Vector2 movement = new Vector2(Input.GetAxis("Horizontal") * stats.speed, stats.rb.linearVelocityY); if (Input.GetKeyDown(KeyCode.Space) && stats.OnGround()) { movement.y = stats.jumpPower; } FlipSprite(movement); stats.rb.linearVelocity = movement; } } }