void Start()
 {
     currentState      = State.PLAYING;
     disc              = FindObjectOfType <DiscMovementIA>().gameObject;
     discMovement      = FindObjectOfType <DiscMovementIA>().GetComponent <DiscMovementIA>();
     discStartPosition = FindObjectOfType <DiscMovementIA>().gameObject.transform.position;
 }
    void ChangeState(State newState)
    {
        switch (currentState)
        {
        //Exit
        case State.PLAYING:
            pointScoredBool = false;
            break;

        case State.RESTART_DISC:
            discMovement.holdDisc      = false;
            discMeshRotation.canRotate = true;

            break;
        }

        switch (newState)
        {
        //Enter
        case State.PLAYING:
            p1.playerCC.detectCollisions = true;

            break;

        case State.RESTART_DISC:
            startDiscTimer = true;
            Destroy(discMovement.gameObject);
            GameObject newDisc = Instantiate(discPrefab);
            newDisc.transform.position = discStartPosition;
            discMovement               = newDisc.GetComponent <DiscMovementIA>();
            discMeshRotation           = newDisc.GetComponentInChildren <Disc_MeshRotation>();
            discMovement.holdDisc      = true;
            discMeshRotation.canRotate = false;
            discMovement.direction     = discMoveDirection;
            p1.canMove = true;
            p1.playerCC.detectCollisions = false;
            IA.discGameobject            = newDisc;
            break;
        }

        currentState = newState;
    }