Table of Contents

Class WarfareProjectile

Namespace
Uncreated.Warfare.Projectiles
Assembly
Uncreated.Warfare.dll

Handles invoking the ProjectileSpawned and ProjectileExploding events.

public class WarfareProjectile : MonoBehaviour
Inheritance
Object
Component
Behaviour
MonoBehaviour
WarfareProjectile
Inherited Members
MonoBehaviour.IsInvoking()
MonoBehaviour.CancelInvoke()
MonoBehaviour.StopCoroutine(Coroutine)
MonoBehaviour.StopAllCoroutines()
MonoBehaviour.destroyCancellationToken
MonoBehaviour.useGUILayout
Behaviour.enabled
Behaviour.isActiveAndEnabled
Component.GetComponent<T>()
Component.TryGetComponent<T>(out T)
Component.GetComponentInChildren<T>()
Component.GetComponentsInChildren<T>()
Component.GetComponentInParent<T>()
Component.GetComponentsInParent<T>()
Component.GetComponents<T>()
Component.GetComponentIndex()
Component.transform
Component.gameObject
Component.tag
Object.GetInstanceID()
Object.GetHashCode()
Object.InstantiateAsync<T>(T)
Object.InstantiateAsync<T>(T, Transform)
Object.InstantiateAsync<T>(T, Vector3, Quaternion)
Object.InstantiateAsync<T>(T, Transform, Vector3, Quaternion)
Object.InstantiateAsync<T>(T, InstantiateParameters)
Object.InstantiateAsync<T>(T, Vector3, Quaternion, InstantiateParameters)
Object.Instantiate(Object, Vector3, Quaternion)
Object.Instantiate(Object, Vector3, Quaternion, Transform)
Object.Instantiate(Object)
Object.Instantiate(Object, Scene)
Object.Instantiate<T>(T, InstantiateParameters)
Object.Instantiate<T>(T, Vector3, Quaternion, InstantiateParameters)
Object.Instantiate(Object, Transform)
Object.Instantiate<T>(T)
Object.Instantiate<T>(T, Vector3, Quaternion)
Object.Instantiate<T>(T, Vector3, Quaternion, Transform)
Object.Instantiate<T>(T, Transform)
Object.Destroy(Object)
Object.DestroyImmediate(Object)
Object.DontDestroyOnLoad(Object)
Object.DestroyObject(Object)
Object.FindObjectsOfType<T>()
Object.FindObjectsByType<T>(FindObjectsSortMode)
Object.FindObjectsByType<T>(FindObjectsInactive, FindObjectsSortMode)
Object.FindObjectOfType<T>()
Object.FindFirstObjectByType<T>()
Object.FindAnyObjectByType<T>()
Object.FindFirstObjectByType<T>(FindObjectsInactive)
Object.FindAnyObjectByType<T>(FindObjectsInactive)
Object.ToString()
Object.name
Object.hideFlags

Remarks

Also adds a hotfix for ghost projectiles.

Properties

Ammo

public ItemMagazineAsset? Ammo { get; }

Property Value

ItemMagazineAsset

Asset

public ItemGunAsset Asset { get; }

Property Value

ItemGunAsset

Barrel

public ItemBarrelAsset? Barrel { get; }

Property Value

ItemBarrelAsset

CanSolve

public bool CanSolve { get; }

Property Value

bool

Direction

public Vector3 Direction { get; }

Property Value

Vector3

FireTime

public DateTime FireTime { get; }

Property Value

DateTime

Gun

public UseableGun Gun { get; }

Property Value

UseableGun

HasExploded

public bool HasExploded { get; }

Property Value

bool

HasLanded

public bool HasLanded { get; }

Property Value

bool

HasSpawned

public bool HasSpawned { get; }

Property Value

bool

ImpactTime

public DateTime ImpactTime { get; }

Property Value

DateTime

LaunchTime

public DateTime LaunchTime { get; }

Property Value

DateTime

Origin

public Vector3 Origin { get; }

Property Value

Vector3

Owner

public WarfarePlayer Owner { get; }

Property Value

WarfarePlayer

OwnerVehicle

public InteractableVehicle? OwnerVehicle { get; }

Property Value

InteractableVehicle

Rocket

public Rocket Rocket { get; }

Property Value

Rocket

Team

public Team Team { get; }

Property Value

Team

Methods

FixedUpdate()

[UsedImplicitly]
public void FixedUpdate()

Events

OnProjectileSolved

Run a callback when the projectile has been solved. If it's already been solved it'll be invoked immediately.

public event ProjectileSolved OnProjectileSolved

Event Type

ProjectileSolved

Remarks

No need to unsubscribe after usage.