CommonFly
A common implementation of a fly mode.
About this mod Author’s original text
Common Fly
This is a helper mod that implements a fly mode that other plugins can hook into and enable/disable. This mod handles the movement and inputs, but not enabling/disabling the fly mode. By itself, this plugin does NOTHING. (other than add 2 settings that are ignored)
Usage
First, add a `[BepInDependency("Terrain.CommonFly")]` annotation to your plugin.
- To enable/disable flying, simply set the `CommonFly.flying` property to true/false.
- There's also a `CommonFly.noclip` property, which prevents the fly mode from suddenly ending when you hit solid objects. Specifically, it completely disables your player collider client-side.
Both of these are auto properties instead of fields for your patching convenience, because then you can use something like `[HarmonyPatch(typeof(CommonFly), nameof(CommonFly.flying), MethodType.Getter)]` if you need to change the value when it's used (which is like 3-4 times every physics frame or something actually).
The other two properties `CommonFly.flyUp and CommonFly.flyDown` are the actual inputs sent by the player. You probably shouldn't mess with their setters, but you can Reverse Patch them if you really want to anyways.
Icon made by Shocho. I haven't modified the icon outside of the preview options The Noun Project provides.
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.
Install these first, or the mod will not work: