-
-
Notifications
You must be signed in to change notification settings - Fork 2
Quick References
cheeeeeeeeeen edited this page Dec 1, 2020
·
8 revisions
The mod itself uses the API to implement the Beam Drone (LaserDrone1
) which is a custom entity along with its custom attack (FireLaser
). This custom drone also has Option Support. Use it for reference on using the API.
myCustomDronesList = DroneCatalog.Initialize("com.awesome.mod.guid", someConfigFile);
DroneCatalog.SetupAll(myCustomDronesList);
public class MyCustomDrone : Drone<MyCustomDrone>
// This will only work after DroneCatalog.Initialize() is done
MyCustomDrone drone = MyCustomDrone.instance;
drone.enabled; // true or false
protected override void SetupConfig()
{
base.SetupConfig();
// other code
}
// For PostSetup, it is ideal to call the base method last
protected override void PostSetup()
{
// other code
base.PostSetup();
}
GradiusOption.instance.FireForAllOptions(droneBody, (option, behavior, target) =>
{
new BulletAttack
{
owner = droneBody.gameObject,
weapon = option,
// remember to multiply damageMultiplier so that the config option for GradiusOption is respected for your custom drone
damage = damage * coefficient * GradiusOption.instance.damageMultiplier,
force = force * GradiusOption.instance.damageMultiplier, // do the same for force
// other initialization here
}.Fire();
});
Home | API Documentation | API References | Features | Contact | Changelog