Skip to content
Snippets Groups Projects
PlayerController.cs 3.73 KiB
Newer Older
using System.Collections;
using UnityEngine;

public class PlayerController : Controller
    [SerializeField] private float maxStamina;
    private float currentStamina;

    // Use this for initialization
    void Start ()
    {
        inputs = new Inputs();
        //fazer dinamico
        canMove = true;
        canSkill = true;
        myTurn = true;
        currentHand = 1;        
        currentStamina = maxStamina;

        foreach (Skills s in GetComponents<Skills>())
        {
            s.skillCost += updateStamina;
        }
    private void setup()
        controlType = new KeyBoardControl();
        animatorController = GetComponent<Animator>();
    private void updateStamina(float cost)
    {
        currentStamina -= cost;
        Debug.Log(currentStamina);
    }

    private void Update()
        inputs.behindBack = Input.GetAxisRaw(controlType.getBehindBackInput());
        inputs.crossOver = Input.GetAxisRaw(controlType.getCrossOverInput());
        inputs.stepBack = Input.GetAxisRaw(controlType.getStepBackInput());
        inputs.horizontalMovement = Input.GetAxisRaw(controlType.getHorizontalInput());
        inputs.verticalMovement = Input.GetAxisRaw(controlType.getVerticalInput());
        inputs.steal = Input.GetAxisRaw(controlType.getStealInput());
        inputs.block = Input.GetAxisRaw(controlType.getBlockInput());
    public override void changeTurn()
            foreach(AtkSkills script in GetComponents<AtkSkills>())
            {
                script.enabled = true;
            }
            GetComponent<MovementScript>().enabled = true;
            GetComponent<BlockScript>().enabled = false;
            FindObjectOfType<ForceBarController>().enabled = true;
            disableBallCollider();
            animatorController.SetTrigger("AtkTurn");
            myTurn = false;
        }
        else
        {
            foreach(DefSkills script in GetComponents<DefSkills>())
            {
                script.enabled = true;
            }
            GetComponent<MovementScript>().enabled = true;
            enableBallCollider();
            animatorController.SetTrigger("DefTurn");
            myTurn = true;
        }
        //do something
    }
        StopAllCoroutines();
        GetComponent<StepBackScript>().enabled = false;
        GetComponent<CrossOverScript>().enabled = false;
        GetComponent<BehindBackScript>().enabled = false;
        GetComponent<RoubarBolaScript>().enabled = false;
        GetComponent<MovementScript>().enabled = false;
        
        ForceBarController fbc = FindObjectOfType<ForceBarController>();
        if (fbc != null)
        {
            fbc.enabled = false;
        }
        animatorController.SetTrigger("Idle");
    }

    public void moveToPosition(Transform atkPosition, Transform defPosition)
    {
        if (myTurn)
        {
            GetComponent<MovementScript>().moveToPosition(atkPosition);
        }
        else
        {
            GetComponent<MovementScript>().moveToPosition(defPosition);
        }
    }

    private void disableBallCollider()
    {
        foreach (Transform t in GetComponentInChildren<Transform>())
        {
            if (t.CompareTag("BallCollider"))
            {
                t.GetComponent<BoxCollider2D>().enabled = false;
                return;
            }
        }
    }

    private void enableBallCollider()
    {
        foreach (Transform t in GetComponentInChildren<Transform>())
        {
            if (t.CompareTag("BallCollider"))
            {
                t.GetComponent<BoxCollider2D>().enabled = true;
                return;
            }
        }
    }