Ejemplo n.º 1
0
    public void SetCanInteractFalse(Collider other)
    {
        if (other.CompareTag("Player"))
        {
            canPickup      = false;
            canPlace       = false;
            activePlayerGP = other.GetComponent <PlayerGameplay>();
            activePlayerGP.activePickupPlace = null;

            activePlayerGP.activeAction = PlayerActions.NONE;
            activePlayerGP.ShowActionIndicator();
        }
    }
Ejemplo n.º 2
0
    public void SetCanInteractTrue(Collider other)
    {
        if (other.CompareTag("Player"))
        {
            activePlayerGP = other.GetComponent <PlayerGameplay>();
            activePlayerGP.activePickupPlace = this;

            if (activePlayerGP.freeHands && (infinitePickup || vacant == false) && avalibleObjectsCount > 0)
            {
                canPickup = true;

                activePlayerGP.activeAction = PlayerActions.PICKUP;
                activePlayerGP.ShowActionIndicator();
            }

            if (!activePlayerGP.freeHands && vacant && pickupType == activePlayerGP.pickupObject.GetComponent <PickableObject>().pickableType)
            {
                canPlace = true;

                activePlayerGP.activeAction = PlayerActions.PLACE;
                activePlayerGP.ShowActionIndicator();
            }
        }
    }
Ejemplo n.º 3
0
    public GameObject Pickup()
    {
        GameObject objectToReturn;

        if (!infinitePickup && avalibleObjectsCount > 0)
        {
            objectToReturn        = pickupObject;
            pickupObject          = null;
            vacant                = true;
            avalibleObjectsCount -= 1;
        }
        else if (infinitePickup && avalibleObjectsCount > 0)
        {
            objectToReturn        = pickupObjectPrefab;
            vacant                = false;
            avalibleObjectsCount -= 1;
        }
        else
        {
            objectToReturn       = null;
            vacant               = true;
            avalibleObjectsCount = 0;
        }

        if (GetComponent <BirthController>() != null)
        {
            GetComponent <BirthController>().TakeBaby();
        }


        if ((infinitePickup || vacant == false) && avalibleObjectsCount > 0)
        {
            canPickup = true;

            if (activePlayerGP.freeHands)
            {
                activePlayerGP.activeAction = PlayerActions.PICKUP;
                activePlayerGP.ShowActionIndicator();
            }
        }

        if (vacant)
        {
            canPlace = true;

            if (!activePlayerGP.freeHands)
            {
                activePlayerGP.activeAction = PlayerActions.PLACE;
                activePlayerGP.ShowActionIndicator();
            }
        }


        return(objectToReturn);
    }