tModLoader v2024.11
A mod to make and play Terraria mods
|
This class allows you to customize the behavior of a custom cloud. Modded clouds can be autoloaded automatically (see Mod.CloudAutoloadingEnabled) or manually registered (CloudLoader.AddCloudFromTexture), but autoloaded clouds default to being normal clouds with the default spawn chance. Make a ModCloud class if custom behavior is needed or use CloudLoader.AddCloudFromTexture if customizing cloud category and spawn chance is all that is needed. This class is not instanced, all clouds of the same type will share the same instance. More...
Inherits ModTexturedType.
Inherited by SimpleModCloud.
Public Member Functions | |
virtual bool | Draw (SpriteBatch spriteBatch, Cloud cloud, int cloudIndex, ref DrawData drawData) |
Return true to draw using vanilla drawing logic. Return false to prevent vanilla drawing logic and use this hook to draw the cloud manually. More... | |
virtual void | OnSpawn (Cloud cloud) |
Gets called when the Cloud spawns. | |
sealed override void | SetupContent () |
If you make a new ModType, seal this override, and call SetStaticDefaults in it. More... | |
virtual float | SpawnChance () |
The chance that this cloud can spawn. Return 1f to spawn just as often compared as vanilla clouds. A cloud can be either a "Normal cloud" or a "Rare cloud" if RareCloud is true. The spawn chance is the chance to spawn within each cloud category, so there is no need to return a very small chance value for rare clouds, the logic already takes that into account. If RareCloud is true, the spawn chance already takes into account secret seed adjustments so there is no need to implement that logic in this method either. See the Terraria wiki for more information. If checking for modded biomes using Main.LocalPlayer , be sure to check Main.gameMenu as well to prevent exceptions. Defaults to 1f. | |
Public Member Functions inherited from ModType< TEntity, TModType > | |
virtual TModType | Clone (TEntity newEntity) |
Create a copy of this instanced global. Called when an entity is cloned. More... | |
virtual bool | IsLoadingEnabled (Mod mod) |
Allows you to stop Mod.AddContent from actually adding this content. Useful for items that can be disabled by a config. More... | |
virtual void | Load () |
Allows you to perform one-time loading tasks. Beware that mod content has not finished loading here, things like ModContent lookup tables or ID Sets are not fully populated. More... | |
virtual TModType | NewInstance (TEntity entity) |
Create a new instance of this ModType for a specific entity More... | |
string | PrettyPrintName () |
virtual void | SetStaticDefaults () |
Allows you to modify the properties after initial loading has completed. More... | |
virtual void | SetupContent () |
If you make a new ModType, seal this override, and call SetStaticDefaults in it. More... | |
virtual void | Unload () |
Allows you to safely unload things you added in Load. More... | |
virtual bool | IsLoadingEnabled (Mod mod) |
Whether or not this type should be loaded when it's told to. Returning false disables Mod.AddContent from actually loading this type. More... | |
abstract void | Load (Mod mod) |
Called when loading the type. More... | |
abstract void | Unload () |
Called during unloading when needed. More... | |
Public Member Functions inherited from ModType< TEntity > | |
virtual TModType | Clone (TEntity newEntity) |
Create a copy of this instanced global. Called when an entity is cloned. More... | |
virtual bool | IsLoadingEnabled (Mod mod) |
Allows you to stop Mod.AddContent from actually adding this content. Useful for items that can be disabled by a config. More... | |
virtual void | Load () |
Allows you to perform one-time loading tasks. Beware that mod content has not finished loading here, things like ModContent lookup tables or ID Sets are not fully populated. More... | |
virtual TModType | NewInstance (TEntity entity) |
Create a new instance of this ModType for a specific entity More... | |
string | PrettyPrintName () |
virtual void | SetStaticDefaults () |
Allows you to modify the properties after initial loading has completed. More... | |
virtual void | SetupContent () |
If you make a new ModType, seal this override, and call SetStaticDefaults in it. More... | |
virtual void | Unload () |
Allows you to safely unload things you added in Load. More... | |
Protected Member Functions | |
override void | Register () |
If you make a new ModType, seal this override. More... | |
Protected Member Functions inherited from ModType< TEntity, TModType > | |
abstract TEntity | CreateTemplateEntity () |
virtual void | InitTemplateInstance () |
Create dummy objects for instanced mod-types More... | |
override void | InitTemplateInstance () |
Create dummy objects for instanced mod-types More... | |
abstract void | Register () |
If you make a new ModType, seal this override. More... | |
virtual void | ValidateType () |
Check for the correct overrides of different hook methods and fields and properties More... | |
Protected Member Functions inherited from ModType< TEntity > | |
abstract TEntity | CreateTemplateEntity () |
virtual void | InitTemplateInstance () |
Create dummy objects for instanced mod-types More... | |
override void | InitTemplateInstance () |
Create dummy objects for instanced mod-types | |
abstract void | Register () |
If you make a new ModType, seal this override. More... | |
virtual void | ValidateType () |
Check for the correct overrides of different hook methods and fields and properties More... | |
Properties | |
override string | Name [get] |
The internal name of this instance. More... | |
virtual bool | RareCloud [get] |
If true, this cloud will belong to the "Rare clouds" pool instead of the "Normal clouds" (see the Terraria wiki for more information). Rare clouds typically can only spawn after certain world conditions have been met. For example ID.CloudID.Rare_Skeletron can only spawn if NPC.downedBoss3 is true. Rare clouds can be used by mods to highlight achievements such as defeating a boss. Defaults to false. | |
override string | Texture [get] |
int | Type [get, set] |
Properties inherited from ModTexturedType | |
virtual string | Texture [get] |
The file name of this type's texture file in the mod loader's file space. | |
Properties inherited from ModType< TEntity, TModType > | |
virtual bool | CloneNewInstances [get] |
Whether to create new instances of this mod type via Clone(TEntity) or via the default constructor Defaults to false (default constructor). | |
TEntity | Entity [get, set] |
string | FullName [get] |
The internal name of this, including the mod it is from. More... | |
virtual bool | IsCloneable [get] |
Whether or not this type is cloneable. Cloning is supported if all reference typed fields in each sub-class which doesn't override Clone are marked with [CloneByReference] | |
Mod | Mod [get, set] |
The mod this belongs to. More... | |
virtual string | Name [get] |
The internal name of this. More... | |
Properties inherited from IModType | |
string | FullName [get] |
=> $"{Mod.Name}/{Name}" More... | |
Mod | Mod [get] |
The mod this belongs to. More... | |
string | Name [get] |
The internal name of this instance. More... | |
Properties inherited from ModType< TEntity > | |
virtual bool | CloneNewInstances [get] |
Whether to create new instances of this mod type via Clone(TEntity) or via the default constructor Defaults to false (default constructor). | |
TEntity | Entity [get, set] |
string | FullName [get] |
The internal name of this, including the mod it is from. More... | |
virtual bool | IsCloneable [get] |
Whether or not this type is cloneable. Cloning is supported if all reference typed fields in each sub-class which doesn't override Clone are marked with [CloneByReference] | |
Mod | Mod [get, set] |
The mod this belongs to. More... | |
virtual string | Name [get] |
The internal name of this. More... | |
This class allows you to customize the behavior of a custom cloud.
Modded clouds can be autoloaded automatically (see Mod.CloudAutoloadingEnabled) or manually registered (CloudLoader.AddCloudFromTexture), but autoloaded clouds default to being normal clouds with the default spawn chance. Make a ModCloud class if custom behavior is needed or use CloudLoader.AddCloudFromTexture if customizing cloud category and spawn chance is all that is needed.
This class is not instanced, all clouds of the same type will share the same instance.
|
virtual |
Return true
to draw using vanilla drawing logic. Return false
to prevent vanilla drawing logic and use this hook to draw the cloud manually.
spriteBatch | |
cloud | |
cloudIndex | The index of the cloud within Main.cloud. Note that clouds are shifted around as clouds spawn and despawn. |
drawData | The calculated draw parameters |
|
protectedvirtual |
If you make a new ModType, seal this override.
Implements ModType< TEntity >.
|
virtual |
If you make a new ModType, seal this override, and call SetStaticDefaults in it.
Reimplemented from ModType< TEntity >.
|
get |
The internal name of this instance.
Implements IModType.