Files
beyond/Assets/ThirdParty/Invector-3rdPersonController/Shooter/Scripts/Generic/vBarrel.cs
2024-11-20 15:21:28 +01:00

34 lines
958 B
C#

using UnityEngine;
using System.Collections.Generic;
namespace Invector
{
public class vBarrel : vHealthController
{
public Transform referenceTransformUP;
public float maxAngleUp = 90;
protected bool isBarrelRoll;
public UnityEngine.Events.UnityEvent onBarrelRoll;
public List<string> acceptableAttacks = new List<string>() { "explosion", "projectile" };
void OnCollisionEnter()
{
if (!referenceTransformUP) return;
var angle = Vector3.Angle(referenceTransformUP.up, Vector3.up);
if (angle > maxAngleUp && !isBarrelRoll)
{
isBarrelRoll = true;
onBarrelRoll.Invoke();
}
}
public override void TakeDamage(vDamage damage)
{
if (acceptableAttacks.Contains(damage.damageType))
{
base.TakeDamage(damage);
}
}
}
}