SnipersScripts
Various utilities for moon/interior/item makers.
About this mod Author’s original text
SnipersScripts
A collection of misc scripts for moon/interior/item makers. (My thread in the LC Modding Discord)
Docs For Devs
Components: Can be found under "AddComponent>SnipersScripts"
- AudioClipEvents: Invokes events based on the progression of an audio clip.
- AudioSource: The audio source the clip plays from. If ommitted, the script will wait for the duration of the clip without actually playing it audibly.
- OnAudioClipStart<>: Invokes when clip starts playing.
- OnAudioClipEnd<>: Invokes when clip finishes.
- OnAudioClipStop<>: Invokes when the clip is stopped early.
- PlayAudioClip(AudioClip clip): Plays clip on AudioSource.
- StopAudioClip(): Stops the currently playing clip.
- CommentComponent: Empty component with an editable textbox. Does nothing.
- EnemyRequiresNestOverride: Temporarily makes the specified EnemyType not require a nest. (Useful if used in sync with an enemy spawner script to force an Old Bird to spawn at a specific location)
- OnEnemyDoesNotRequireNest: Invokes in the window that the EnemyType does not require a nest, passing on the EnemyType as a parameter.
- ToggleEnemyNestRequirement(EnemyType enemyType): Briefly makes the specified EnemyType not need a nest to spawn (supports blank reference).
- ToggleEnemyNestRequirement(string enemyName): Briefly makes the specified enemy based on the EnemyName field within an EnemyType ScriptableObject not need a nest to spawn (supports blank reference).
- EntranceTeleportLock: Used to lock/unlock main and/or fire exits. When using a door pair locked on one side from the unlocked side, the locked side will unlock.
- LockedMessage: The HoverTip on a locked door.
- LockAll(): Locks all main/fire exits both inside and outside.
- UnlockAll(): Unlocks all main/fire exits both inside and outside.
- LockInside(): Locks all inside main/fire exits.
- UnlockInside(): Unlocks all inside main/fire exits.
- LockMainInside(): Locks main from the inside.
- UnlockMainInside(): Unlocks main from the inside.
- LockFireInside(): Locks fire exits inside.
- UnlockFireInside(): Unlocks fire exits inside.
- LockIndividualInside(EntranceTeleport tp): Locks the inside of the specified EntranceTeleport.
- UnlockIndividualInside(EntranceTeleport tp): Unlocks the inside of the specified EntranceTeleport.
- LockOutside(): Locks all outside main/fire exits.
- UnlockOutside(): Unlocks all outside main/fire exits.
- LockMainOutside(): Locks main from the outside.
- UnlockMainOutside(): Unlocks main from the outside.
- LockFireOutside(): Locks fire exits outside.
- UnlockFireOutside(): Unlocks fire exits outside.
- LockIndividualOutside(EntranceTeleport tp): Locks the outside of the specified EntranceTeleport.
- UnlockIndividualOutside(EntranceTeleport tp): Unlocks the outside of the specified EntranceTeleport.
- SetLockedMessageRpc(string message): sets LockedMessageto message.
- ItemDropDistanceOverride: Used to increase/decrease how far items can fall.
- ItemDropDistance: How far items can be dropped (default is vanilla distance).
- ApplyOverrideOnStart: If the override should apply automatically on the GameObject's start using ItemDropDistance.
- ApplyDropDistanceOverrideRpc(float distance): Sets the override distance.
- LocalPlayerEvent: A script that allows you to trigger events with the local player. (Intended as a sort of "bridge" script to allow an event in another script that doesn't pass the local player to invoke something that does require the local player as a parameter (for instance, vanilla's KillLocalPlayer.KillPlayer(PlayerControllerB)))
- LocalPlayerEvent: Invokes an event with the local player as a parameter.
- InvokeLocalPlayerEvent(): Invokes the LocalPlayerEvent with the local player as a parameter.
- LoggerScript: Used to print messages to log.
- Log: A message to log.
- LogType: The channel to log Log to. {Debug, Info, Warning, Error, Fatal}
- LogOnStart: Determines if Log should be printed to theLogType channel on the G
Install & use Install: BepInEx plugin
- The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
- Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
- Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
- Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.
Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file.
Dependencies
Install these first, or the mod will not work:
BepInEx-BepInExPack