You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
27 lines
856 B
27 lines
856 B
using UnityEngine;
|
|
using UnityEngine.Events;
|
|
|
|
namespace Unity.FPS.Game
|
|
{
|
|
public abstract class ProjectileBase : MonoBehaviour
|
|
{
|
|
public GameObject Owner { get; private set; }
|
|
public Vector3 InitialPosition { get; private set; }
|
|
public Vector3 InitialDirection { get; private set; }
|
|
public Vector3 InheritedMuzzleVelocity { get; private set; }
|
|
public float InitialCharge { get; private set; }
|
|
|
|
public UnityAction OnShoot;
|
|
|
|
public void Shoot(WeaponController controller)
|
|
{
|
|
Owner = controller.Owner;
|
|
InitialPosition = transform.position;
|
|
InitialDirection = transform.forward;
|
|
InheritedMuzzleVelocity = controller.MuzzleWorldVelocity;
|
|
InitialCharge = controller.CurrentCharge;
|
|
|
|
OnShoot?.Invoke();
|
|
}
|
|
}
|
|
}
|