URL: https://wiki.studiominus.nl/internalReference/ProjectileLauncherBehaviour.html Title: People Playground Modding - ProjectileLauncherBehaviour ================================================== public class ProjectileLauncherBehaviour Inherits MonoBehaviour, Messages.IUse One of the first behaviours in the game, which explains the odd naming conventions. The behaviour launches a projectile on activation. Fields public Vector2 barrelPosition Local barrel position public Vector2 barrelDirection Local barrel direction. Usually (1, 0, 0) public GameObject projectilePrefab [SkipSerialisation] Reference to the prefab that is to be launched. Can be null if projectileAsset is set to some asset public GameObject muzzleFlashPrefab [SkipSerialisation] The effect to spawn when activated. Can be null public SpawnableAsset projectileAsset [SkipSerialisation] Reference to the asset that is to be launched. Can be null if projectileAsset is set to some prefab public bool IsAutomatic Does it fire automatically? public float AutomaticInterval How much time there is between shots if the launcher is automatic public float projectileLaunchStrength The amount of force to launch with public float recoilMultiplier The amount of recoil public AudioClip launchSound [SkipSerialisation] Reference to the audio clip that is played when something is launched. Can be null if LaunchClips is populated public AudioClip[] LaunchClips [SkipSerialisation] An array of audio clips that are played randomly when something is launched. Can be null or empty if launchSound is set public AudioSource launchAudioSource [SkipSerialisation] Reference to the audio source that plays the noises. The sound is played from the PhysicalBehaviour if this is null, which is usually fine. public float ScreenShake Amount of screenshake when something is launched public bool ShouldPutProjectileInOtherLayer Should the projectile be put on a different layer when created? public int LayerToPutProjectileOn [Layer] [ShowIf(nameof(ShouldPutProjectileInOtherLayer))] The layer to put the projectile on if ShouldPutProjectileInOtherLayer is set to true public UnityEngine.Events.UnityEvent OnLaunchEvent [SkipSerialisation] Unity event that is invoked when something is launched. public bool RemoveLaunchedObjectsWithMe Should the behaviour destroy all launched objects when it itself is destroyed? Methods public void Use(ActivationPropagation activation) No description provided public void Launch() Launch the projectile public Vector2 GetBarrelPosition() Get the barrel position in global space public Vector2 GetBarrelDirection() Get the barrel direction is global space