Exemplo n.º 1
0
    public void UseItem()
    {
        if (currentPickup)
        {
            currentPickup.TryUse();
            currentPickup = null;

            if (PlayerController)
            {
                GameObject pickGO = playerController.AnimPick;
                if (pickGO)
                {
                    if (pickGO.activeInHierarchy)
                    {
                        pickGO.SetActive(false);
                        SpriteRenderer renderer = pickGO.GetComponent <SpriteRenderer>();
                        if (renderer)
                        {
                            renderer.sprite = null;
                        }
                    }
                }
            }

            if (playerController)
            {
                GameManager.GetSingleton.ItemManager.ResetItem(playerController.IdPlayer);
            }
        }
    }
Exemplo n.º 2
0
    private void OnTriggerEnter(Collider col)
    {
        if (StateManager.GetSingleton.State >= StateManager.GameState.GameOver)
        {
            return;
        }

        HandablePickup handablePickup = col.GetComponent <HandablePickup>();

        if (handablePickup && !handablePickup.IsAlreadyPicked)
        {
            currentPickup = handablePickup;
            handablePickup.Pick(this);

            if (playerController)
            {
                GameObject pickGO = playerController.AnimPick;
                if (pickGO)
                {
                    if (pickGO.activeInHierarchy)
                    {
                        pickGO.SetActive(false);
                    }

                    pickGO.SetActive(true);

                    Animator anim = pickGO.GetComponent <Animator>();
                    if (anim)
                    {
                        anim.SetTrigger("Pick");
                    }
                }

                GameManager.GetSingleton.ItemManager.SetItem(playerController.IdPlayer, handablePickup.ObjectSpriteInUI);
                SoundManager.GetSingularity.PlayPickupSound(playerController.IdPlayer);
            }
        }
        else
        {
            Pickup instantPickup = col.GetComponent <Pickup>(); // Si pikcup n'est pas Handable mais un pickup quand meme -> on l'utilise de suite

            if (instantPickup != null)
            {
                if (playerController)
                {
                    SoundManager.GetSingularity.PlayPickupSound(playerController.IdPlayer);
                }

                instantPickup.CurrentHandler = this;
                instantPickup.TryUse();
            }
        }
    }
Exemplo n.º 3
0
    public void Init()
    {
        if (currentPickup)
        {
            currentPickup.Kill();
        }

        currentPickup = null;

        if (playerController)
        {
            GameManager.GetSingleton.ItemManager.ResetItem(playerController.IdPlayer);
        }
    }