Class for adding in a new Bloon to the game
public abstract class ModBloon : BTD_Mod_Helper.Api.NamedModContent
Inheritance System.Object ModContent NamedModContent ModBloon
Derived
↳ ModBloon<T>
The Bloon in the game that this should copy from as a base. Use BloonType.[Name]
public abstract string BaseBloon { get; }
The ModBloon that this is based off of, or null if not based on a ModBloon
protected virtual BTD_Mod_Helper.Api.Bloons.ModBloon BaseModBloon { get; }
Add the necessary properties to make this a Camo Bloon
public virtual bool Camo { get; }
The list of displays to use as DamageStates for this Bloon
public virtual System.Collections.Generic.IEnumerable<string> DamageStates { get; }
System.Collections.Generic.IEnumerable<System.String>
Add the necessary properties to make this a Fortified Bloon
public virtual bool Fortified { get; }
The Icon for the Bloon within the UI, by default looking for the same name as the file
public virtual string Icon { get; }
If you're not going to use a custom .png for your Icon, use this to directly control its SpriteReference
public virtual SpriteReference IconReference { get; }
Il2CppNinjaKiwi.Common.ResourceUtils.SpriteReference
Set this to true if you're making another version of the BaseBloon, like a Fortified Red Bloon
public virtual bool KeepBaseId { get; }
For 2D bloons, the ratio between pixels and display units. Higher number -> smaller Bloon.
public virtual float PixelsPerUnit { get; }
Add the necessary properties to make this a Regrow Bloon
public virtual bool Regrow { get; }
The regrow rate
public virtual float RegrowRate { get; }
The ID of the bloon that this should regrow into
public virtual string RegrowsTo { get; }
For bloons with UseIconAsDisplay, the scale for the texture to use
public virtual float Scale { get; }
Whether this Bloon should use its Icon as its display
public virtual bool UseIconAsDisplay { get; }
Apply your custom modifications to the base bloon
public abstract void ModifyBaseBloonModel(BloonModel bloonModel);
bloonModel Il2CppAssets.Scripts.Models.Bloons.BloonModel
Further modifies this bloon when you go into a new match.
Useful for making conditional effects happen based on settings.
public virtual void ModifyBloonModelForMatch(BloonModel model, System.Collections.Generic.IReadOnlyList<ModModel> gameModes);
model Il2CppAssets.Scripts.Models.Bloons.BloonModel
The Base bloon model
gameModes System.Collections.Generic.IReadOnlyList<Il2CppAssets.Scripts.Models.ModModel>
What GameModes are active for the match
Runs each tick of the simulation for each bloon currently alive. Be sure to override DoesTick to true as it is false by default.
protected virtual void Tick(int ticks, Simulation sim, Bloon bloon);
ticks System.Int32
The number of ticks run through the simulation (60/s)
sim Il2CppAssets.Scripts.Simulation.Simulation
The current simulation
bloon Il2CppAssets.Scripts.Simulation.Bloons.Bloon
The current bloon
Runs each tick of the simulation assuming DoesTick is true (false by default).
protected sealed override void Tick(int ticks, Simulation sim);
ticks System.Int32
The number of ticks run through the simulation (60/s)
sim Il2CppAssets.Scripts.Simulation.Simulation
The current simulation.