private void OnTriggerEnter2D(Collider2D collision) { if (collision.gameObject.CompareTag("Player")) //health, ammo, experience, { switch (Type) { case "Heal": collision.gameObject.GetComponent <Player>().AddHealth(_bonusHeal); break; case "Ammo": collision.gameObject.GetComponent <Player>().AddAmmo(_bonusAmmo); break; case "Exp": collision.gameObject.GetComponent <Player>().AddExp(_expGained); break; default: break; } OnCollected?.Invoke(); Destroy(gameObject); } }
private void OnTriggerEnter2D(Collider2D collision) { collectable = collision.GetComponent <Collectable>(); if (collectable) { collectable.Collect(); OnCollected?.Invoke(collectable.value); } switch (collision.tag) { case "Danger": TakeDamage(25, collision); break; case "Respawn": respawnPoint = transform.position; break; case "JumpPad": GetComponent <Movement>().JumpUp(jumpPadJumpMultiplier); break; case "enemy": TakeDamage(20, collision); break; default: break; } }
private void OnMouseUp() { mouseUpPosition = transform.position; onHold = false; Collider2D collider = Physics2D.OverlapCircle(transform.position, berryCollider.bounds.extents.x, LayerMask.GetMask(BASKET_LAYER)); if (collider != null) { Basket _foundBasket = collider.GetComponent <Basket>(); if (_foundBasket != null) { if (fruitData.fruitType == _foundBasket.basket.basketFruitType) { MinimizeBerry(); correctBasket = true; _foundBasket.AddBerry(); OnCollected?.Invoke(); } else { wrongParticlesInstance.GetComponent <ParticleSystemRenderer>().material = fruitData.berryVFXMaterial; Instantiate(wrongParticlesInstance, this.transform.position, Quaternion.identity); ReturnBerry(); } } } else { ReturnBerry(); } }
private void DoCollect() { Collect(); _isCollected = true; OnCollected?.Invoke(this); _effect.DetachAndStop(); Destroy(gameObject); }
public override void OnDeallocate() { m_onCollected = null; m_scrollingObject.Stop(); m_scrollingObject.OnScrollComplete -= OnCollect; base.OnDeallocate(); }
public static void PickupCollected(Pickup p) { Collected += 1; OnCollected?.Invoke(); if (Collected >= TotalPickups) { OnWin?.Invoke(); } }
public void Init(Vector3 startPosition, Vector3 endPosition, OnCollected onCollected, PoolManager poolManager) { m_scrollingObject.SetStartPoint(startPosition); m_scrollingObject.SetEndPoint(endPosition); m_scrollingObject.OnScrollComplete += OnCollect; m_scrollingObject.Play(); m_onCollected = onCollected; m_poolManager = poolManager; }
public void Init(int eggID, Vector3 startPosition, Vector3 endPosition, OnCollected onCollected, PoolManager poolManager) { //allocate the specified easter egg EasterEggs[eggID].SetActive(true); m_scrollingObject.SetStartPoint(startPosition); m_scrollingObject.SetEndPoint(endPosition); m_scrollingObject.OnScrollComplete += OnCollect; m_scrollingObject.Play(); m_onCollected = onCollected; m_poolManager = poolManager; }
private void Update() { if (!target) { return; } var direction = (target.position - transform.position).normalized; transform.position += direction * SPEED * Time.deltaTime; if (Vector3.Distance(target.position, transform.position) < 0.5f) { gameObject.SetActive(false); OnCollected?.Invoke(); } }
private void OnMouseUp() { _dragging = false; transform.localScale = Vector3.one; _material.SetFloat("_Highlight", 0f); _collider.enabled = true; Chest.Instance.Close(); if (Chest.Instance.IsHovered()) { Player.Instance.AddTreasure(); OnCollected?.Invoke(); Free(); } else { OnDropped?.Invoke(); } }
internal void Collect() { OnCollected?.Invoke(this, EventArgs.Empty); }
public void Interact() { OnCollected?.Invoke(this); Destroy(gameObject); }