| | |
| | | using Assets.Scripts.Enums; |
| | | using System.Collections; |
| | | using System.Collections.Generic; |
| | | using UnityEngine; |
| | |
| | | |
| | | public Vector3 spinRotatationSpeed = new Vector3(0, 180, 0); |
| | | |
| | | public SoundName soundName; |
| | | |
| | | |
| | | private void OnTriggerEnter2D(Collider2D collision) |
| | | { |
| | | // get <Damageable> object if collision object has it |
| | | Damageable damageable = collision.GetComponent<Damageable>(); |
| | | |
| | | // OnTrigger with <Damageable> |
| | | if (damageable) |
| | | { |
| | | // Pickup health if not at max HP |
| | | if (damageable.Heal(healthRestore)) |
| | | { |
| | | Destroy(gameObject); |
| | | SoundManager.instance.PlaySoundAtPoint(gameObject, soundName); |
| | | Destroy(transform.parent.gameObject); |
| | | } |
| | | } |
| | | } |
| | | |
| | | private void OnTriggerStay2D(Collider2D collision) |
| | | { |
| | | // pickup while inside collision |
| | | OnTriggerEnter2D(collision); |
| | | } |
| | | |
| | | private void Update() |
| | | { |
| | | // rotate pickup object |
| | | transform.eulerAngles += spinRotatationSpeed * Time.deltaTime; |
| | | } |
| | | } |