RoR2-ChensGradiusMod

Gradius Mod in Risk of Rain 2.

View on GitHub

ChensGradiusMod

Chen.GradiusMod.Drones

Drone Class

The drone class where mod creators should inherit from to ease up development.

public abstract class Drone

Inheritance System.Object 🡒 Drone

Derived
↳ Drone<T>

Fields  
config The config file assigned to this custom drone. Use this to bind config options.
Properties  
affectedByDroneRepairKit Chen’s Classic Items Compatibility: Determines if this drone can be healed by Drone Repair Kit.
affectedByEngineersToolbelt Aetherium Compatibility: Determines if this drone can be revived and duplicated by Engineers Toolbelt.
alreadySetup Used to determine if the custom drone was already set up.
canBeInspired Aetherium Compatibility: Determines if this drone can be inspired by the Inspiring Drone.
canBeRepurchased Allow the drone to be repurchased upon being decommissioned.
The implementation of this config is manual and cannot be automated.
Use the config option by inheriting DroneDeathState and implementing SpawnInteractable.
canHaveOptions Determines if the drone can be spawned with Gradius’ Options. Required to explicitly implement.
configCategory The category that will be used in the config file that contains the custom drone’s config options.
DroneCharacterMasterObject This refers to the CharacterMaster GameObject of the drone.
Implement this method in the drone class and have it return the CharacterMaster GameObject.
enabled Determines if the drone should be enabled/disabled. Disabled drones will not be set up.
name Fetches the custom drone’s class name.
spawnWeightWithMachinesArtifact Determines if the drone can be spawned in the enemy drone spawn pool with Artifact of Machines.
Methods  
PostSetup() The fifth step in the setup process. Place here the code for cleanup, or for finalization.
This will still be performed whether the drone is enabled or disabled.
This will still also be performed if the drone was already set up or not.
PreSetup() The first step in the setup process. Place here the logic needed before any processing begins.
SetupBehavior() The fourth step in the setup process. Place here the code related to the drone’s behavior.
One may place here mod compatibility code. Hooks should also go here.
SetupComponents() The third step in the setup process. Place here all initialization of components, assets, textures, sounds, etc.
SetupConfig() The second step in the setup process. Place here all the code related to adding configurations for the custom drone.
SetupFirstPhase() First phase of the setup process along with required logic. This phase invokes SetupConfig.
This method is exposed for usage outside of this class.
SetupSecondPhase() Second phase of the setup process along with required logic. This method invokes SetupComponents.
This method is exposed for usage outside of this class.
SetupThirdPhase() Third phase of the setup process along with required logic. This method invokes SetupBehavior.
This method is exposed for usage outside of this class.