예제 #1
0
    void Update()
    {
        RaycastHit hit;

        crosshair.color = Color.white;

        if (Physics.Raycast(transform.position, transform.forward, out hit, rayLenght))
        {
            if (hit.collider.CompareTag(interactableTag))
            {
                crosshair.color = Color.red;
                if (Input.GetKeyDown(KeyCode.E))
                {
                    if (door = hit.collider.gameObject.GetComponent <DoorScript>())
                    {
                        door.PlayAnimation();
                    }
                    if (coll = hit.collider.gameObject.GetComponent <CollectibleScript>())
                    {
                        Animator anim = pickTxt.gameObject.GetComponent <Animator>();
                        anim.Play("FadeIn");
                        coll.CollectItem(hit);
                        CalculateScore();
                    }
                }
            }
        }
    }
예제 #2
0
 void OnCharacterPickupCollectible(CharacterScript character, CollectibleScript collectible)
 {
     if (collectible != this)
     {
         return;
     }
     Destroy(gameObject);
 }
 public void Collect(CollectibleScript collectible)
 {
     if (collectible != null)
     {
         AddAcorns(collectible.AcornsCount);
         AddScore(collectible.ScoreCount);
     }
 }
 public void ReleaseCollectible()
 {
     if (collectible == null)
     {
         return;
     }
     collectible.transform.parent = null;
     collectible = null;
 }
예제 #5
0
 public void IncreaseItem(CollectibleScript collect)
 {
     ++items;
     guiItem.GUIItemRepresent();
     if (collect.CompareTag("BigItem"))
     {
         bigCollUI.gameObject.SetActive(true);
         bigCollUI.AddItem(collect.orderNum);
         ScoreManager.instance.AddCollectionable();
     }
 }
예제 #6
0
        public void OnPlayerUnLoad()
        {
            CollectibleScript Pep = UnityEngine.Object.FindObjectOfType <CollectibleScript>();

            if (Pep)
            {
                LogDebug($"{_name}: Creating HUD");
                GameObject go      = new GameObject();
                CounterHUD counter = go.AddComponent <CounterHUD>();
                counter.ToggleState(true);
            }
        }
예제 #7
0
    public void DropItems()
    {
        if (item1 == null || item1.activeInHierarchy)
        {
            item1 = itemPool.getObject();
        }
        else
        {
            item1.SetActive(true);
        }
        CollectibleScript itemScript = item1.GetComponent <CollectibleScript>();

        itemScript.player    = player;
        itemScript.isFalling = true;
        float rand = Random.Range(-5.0f, 5.0f);

        item1.transform.position = new Vector3(transform.position.x, transform.position.y + collider.bounds.extents.y, 0.0f);
        Rigidbody   rigid       = item1.GetComponent <Rigidbody>();
        BoxCollider boxCollider = item1.GetComponent <BoxCollider>();

        rigid.isKinematic   = false;
        boxCollider.enabled = false;
        rigid.AddForce(rand, 15.0f, 0.0f, ForceMode.Impulse);
        itemScript.Parable();

        if (item2 == null || item2.activeInHierarchy)
        {
            item2 = itemPool.getObject();
        }
        else
        {
            item2.SetActive(true);
        }
        itemScript           = item2.GetComponent <CollectibleScript>();
        itemScript.player    = player;
        itemScript.isFalling = true;
        rand = Random.Range(-5.0f, 5.0f);
        item2.transform.position = new Vector3(transform.position.x, transform.position.y + collider.bounds.extents.y, 0.0f);
        rigid               = item2.GetComponent <Rigidbody>();
        boxCollider         = item2.GetComponent <BoxCollider>();
        rigid.isKinematic   = false;
        boxCollider.enabled = false;
        rigid.AddForce(rand, 15.0f, 0.0f, ForceMode.Impulse);
        itemScript.Parable();
    }
예제 #8
0
 public void OnTriggerEnter(Collider col)
 {
     if (col.gameObject.tag == "Interaction")
     {
         interacts = col.GetComponent <InteractablesScript>();
         interacts.ButtonOpeningDoors();
         col.isTrigger = false;
     }
     if (col.gameObject.tag == "Collectible")
     {
         collectibles = col.GetComponent <CollectibleScript>();
         collectibles.CollectibleCoin();
     }
     if (col.gameObject.tag == "HidingPlace")
     {
         Debug.Log("You're Safe");
     }
 }
예제 #9
0
    void OnTriggerEnter2D(Collider2D c)
    {
        CollectibleScript collectible = c.gameObject.GetComponent <CollectibleScript>();

        collectible.GetComponent <Collider2D>().enabled = false;

        //score += collectible.pointsAwarded;
        //if (OnCharacterScoreChanged != null) OnCharacterScoreChanged(this);

        frozenFactor -= collectible.pointsAwarded;
        if (frozenFactor < 0)
        {
            frozenFactor = 0;
        }
        if (OnFrozenFactorChanged != null)
        {
            OnFrozenFactorChanged(this);
        }

        if (OnCharacterPickupCollectible != null)
        {
            OnCharacterPickupCollectible(this, collectible);
        }
    }
예제 #10
0
파일: Player.cs 프로젝트: TeamGlitch/Glitch
 public void IncreaseItem(CollectibleScript collect)
 {
     ++items;
     guiItem.GUIItemRepresent();
     if (collect.CompareTag("BigItem"))
     {
         bigCollUI.gameObject.SetActive(true);
         bigCollUI.AddItem(collect.orderNum);
         ScoreManager.instance.AddCollectionable();
     }
 }
예제 #11
0
    public void SpawnCollectible()
    {
        CollectibleScript coll = Instantiate(collectiblePrefab, transform);

        coll.transform.position = new Vector3(Random.Range(bottomLeft.Value.x + collectibleOffset, topRight.Value.x - collectibleOffset), Random.Range(bottomLeft.Value.y + collectibleOffset, topRight.Value.y - collectibleOffset));
    }
 void OnCharacterPickupCollectible(CharacterScript character, CollectibleScript collectible)
 {
     SpawnCollectible();
 }
 public void Pickup(CollectibleScript collectible)
 {
     this.collectible             = collectible;
     collectible.transform.parent = transform;
     PickupKeyPress = true;
 }