using Assets.Scripts.Enums;
|
using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
|
public class Pickup : MonoBehaviour
|
{
|
public int healthRestore = 20;
|
|
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))
|
{
|
SoundManager.instance.PlaySoundAtPoint(gameObject, soundName);
|
Destroy(gameObject);
|
}
|
}
|
}
|
|
private void OnTriggerStay2D(Collider2D collision)
|
{
|
// pickup while inside collision
|
OnTriggerEnter2D(collision);
|
}
|
|
private void Update()
|
{
|
// rotate pickup object
|
transform.eulerAngles += spinRotatationSpeed * Time.deltaTime;
|
}
|
}
|