tModLoader v2024.11
A mod to make and play Terraria mods
|
This class allows you to modify the behavior of any wall in the game (although admittedly walls don't have much behavior).
To use it, simply create a new class deriving from this one. Implementations will be registered automatically.
More...
Inherits GlobalBlockType.
Public Member Functions | |
virtual bool | Drop (int i, int j, int type, ref int dropType) |
Allows you to customize which items the wall at the given coordinates drops. Return false to stop the game from dropping the wall's default item (the dropType parameter). Returns true by default. | |
virtual void | KillWall (int i, int j, int type, ref bool fail) |
Allows you to determine what happens when the wall at the given coordinates is killed or hit with a hammer. Fail determines whether the wall is mined (whether it is killed). | |
sealed override void | SetupContent () |
If you make a new ModType, seal this override, and call SetStaticDefaults in it. More... | |
virtual bool | WallFrame (int i, int j, int type, bool randomizeFrame, ref int style, ref int frameNumber) |
Called for every wall that updates due to being placed or being next to a wall that is changed. Return false to stop the game from carrying out its default WallFrame operations. If you return false, make sure to set Tile.WallFrameNumber, Tile.WallFrameX, and Tile.WallFrameY according to the your desired custom framing design. Returns true by default. More... | |
Public Member Functions inherited from GlobalBlockType | |
virtual bool | CanExplode (int i, int j, int type) |
Whether or not the tile/wall at the given coordinates can be killed by an explosion (ie. bombs). Returns true by default; return false to stop an explosion from destroying it. More... | |
virtual bool | CanPlace (int i, int j, int type) |
Allows you to stop a tile/wall from being placed at the given coordinates. Return false to block the tile/wall from being placed. Returns true by default. More... | |
virtual bool | CreateDust (int i, int j, int type, ref int dustType) |
Allows you to modify the default type of dust created when the tile/wall at the given coordinates is hit. Return false to stop the default dust (the dustType parameter) from being created. Returns true by default. More... | |
virtual bool | KillSound (int i, int j, int type, bool fail) |
Allows you to customize which sound you want to play when the tile/wall at the given coordinates is hit. Return false to stop the game from playing its default sound for the tile/wall. Returns true by default. More... | |
virtual void | ModifyLight (int i, int j, int type, ref float r, ref float g, ref float b) |
Allows you to determine how much light the block emits. If it is a tile, make sure you set Main.tileLighted[Type] to true in SetDefaults for this to work. If it is a wall, it can also let you light up the block in front of this wall. More... | |
virtual void | NumDust (int i, int j, int type, bool fail, ref int num) |
Allows you to change how many dust particles are created when the tile/wall at the given coordinates is hit. More... | |
virtual void | PlaceInWorld (int i, int j, int type, Item item) |
Allows you to do something when this tile/wall is placed. Called on the local Client and Single Player. More... | |
virtual void | PostDraw (int i, int j, int type, SpriteBatch spriteBatch) |
Allows you to draw things in front of the tile/wall at the given coordinates. This can also be used to do things such as creating dust. Called on active tiles. See also ModSystem.PostDrawTiles. More... | |
virtual bool | PreDraw (int i, int j, int type, SpriteBatch spriteBatch) |
Allows you to draw things behind the tile/wall at the given coordinates. Return false to stop the game from drawing the tile/wall normally. Returns true by default. More... | |
virtual void | RandomUpdate (int i, int j, int type) |
Called for every tile/wall the world randomly decides to update in a given tick. Useful for things such as growing or spreading. More... | |
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 | |
sealed 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... | |
Additional Inherited Members | |
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 modify the behavior of any wall in the game (although admittedly walls don't have much behavior).
To use it, simply create a new class deriving from this one. Implementations will be registered automatically.
|
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 >.
|
virtual |
Called for every wall that updates due to being placed or being next to a wall that is changed. Return false to stop the game from carrying out its default WallFrame operations. If you return false, make sure to set Tile.WallFrameNumber, Tile.WallFrameX, and Tile.WallFrameY according to the your desired custom framing design. Returns true by default.
i | The x position in tile coordinates. |
j | The y position in tile coordinates. |
type | Type of the wall being framed |
randomizeFrame | True if the calling code intends that the frameNumber be randomly changed, such as when placing the wall initially or loading the world, but not when updating due to nearby tile or wall placements |
style | The style or orientation that will be applied |
frameNumber | The random style that will be applied |