TModLoader v1.4.4.9
TModLoader source code documentation
Loading...
Searching...
No Matches
Terraria.ModLoader.ModBlockType Class Referenceabstract

This is the superclass for ModTile and ModWall, combining common code. More...

+ Inheritance diagram for Terraria.ModLoader.ModBlockType:
+ Collaboration diagram for Terraria.ModLoader.ModBlockType:

Public Member Functions

LocalizedText CreateMapEntryName ()
 Legacy helper method for creating a localization sub-key MapEntry.
 
override void SetStaticDefaults ()
 Allows you to modify the properties after initial loading has completed.
This is where you would set the properties of this tile/wall. Many properties are stored as arrays throughout Terraria's code.
For example:

  • Main.tileSolid[Type] = true;
  • Main.tileSolidTop[Type] = true;
  • Main.tileBrick[Type] = true;
  • Main.tileBlockLight[Type] = true;

 
virtual ushort GetMapOption (int i, int j)
 Allows you to choose which minimap entry the tile/wall at the given coordinates will use. 0 is the first entry added by AddMapEntry, 1 is the second entry, etc. Returns 0 by default.
 
virtual bool KillSound (int i, int j, 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.
 
virtual void NumDust (int i, int j, 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.
 
virtual bool CreateDust (int i, int j, ref int type)
 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 type parameter) from being created. Returns true by default.
 
virtual bool CanPlace (int i, int j)
 Allows you to stop this tile/wall from being placed at the given coordinates. Return false to stop the tile/wall from being placed. Returns true by default.
 
virtual bool CanExplode (int i, int j)
 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.
 
virtual bool PreDraw (int i, int j, 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 normally. Returns true by default.
 
virtual void PostDraw (int i, int j, 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.
 
virtual void RandomUpdate (int i, int j)
 Called whenever the world randomly decides to update this tile/wall in a given tick. Useful for things such as growing or spreading.
 
virtual void PlaceInWorld (int i, int j, Item item)
 Allows you to do something when this tile/wall is placed. Called on the local Client and Single Player.
 
virtual void ModifyLight (int i, int j, ref float r, ref float g, ref float b)
 Allows you to determine how much light this tile/wall 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.
See M:Terraria.Graphics.Light.TileLightScanner.ApplyTileLight(Terraria.Tile,System.Int32,System.Int32,Terraria.Utilities.FastRandom@,Microsoft.Xna.Framework.Vector3@) for vanilla tile light values to use as a reference.

 
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.
 
virtual bool IsLoadingEnabled (Mod mod)
 Allows you to stop M:Terraria.ModLoader.Mod.AddContent(Terraria.ModLoader.ILoadable) from actually adding this content. Useful for items that can be disabled by a config.
 
virtual void SetupContent ()
 If you make a new ModType, seal this override, and call M:Terraria.ModLoader.ModType.SetStaticDefaults in it.
 
virtual void Unload ()
 Allows you to safely unload things you added in M:Terraria.ModLoader.ModType.Load.
 
string PrettyPrintName ()
 
virtual TModType Clone (TEntity newEntity)
 Create a copy of this instanced global. Called when an entity is cloned.
 
virtual TModType NewInstance (TEntity entity)
 Create a new instance of this ModType for a specific entity.
 

Protected Member Functions

void Register ()
 If you make a new ModType, seal this override.
 
virtual void InitTemplateInstance ()
 Create dummy objects for instanced mod-types.
 
override void InitTemplateInstance ()
 Create dummy objects for instanced mod-types.
 
virtual void ValidateType ()
 Check for the correct overrides of different hook methods and fields and properties.
 
TEntity CreateTemplateEntity ()
 

Properties

ushort Type [get, set]
 The internal ID of this type of tile/wall.
 
SoundStyleHitSound = SoundID.Dig [get, set]
 The default style of sound made when this tile/wall is hit.
Defaults to SoundID.Dig, which is the sound used for tiles such as dirt and sand.
 
int DustType [get, set]
 The default type of dust made when this tile/wall is hit. Defaults to 0.
 
ushort VanillaFallbackOnModDeletion [get, set]
 The vanilla ID of what should replace the instance when a user unloads and subsequently deletes data from your mod in their save file. Defaults to 0.
 
string LocalizationCategory [get]
 The category used by this modded content for use in localization keys. Localization keys follow the pattern of "Mods.{ModName}.{Category}.{ContentName}.{DataName}". The Localization wiki pageexplains how custom T:Terraria.ModLoader.ModType classes can utilize this.
 
virtual string Texture [get]
 The file name of this type's texture file in the mod loader's file space.
 
Mod Mod [get, set]
 The mod this belongs to.
 
virtual string Name [get]
 The internal name of this.
 
string FullName [get]
 The internal name of this, including the mod it is from.
 
TEntity Entity [get, set]
 
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].
 
virtual bool CloneNewInstances [get]
 Whether to create new instances of this mod type via M:Terraria.ModLoader.ModType`2.Clone(`0) or via the default constructor Defaults to false (default constructor).
 

Private Member Functions

void ILoadable. Load (Mod mod)
 Called when loading the type.
 

Private Attributes

bool? _isCloneable
 

Detailed Description

This is the superclass for ModTile and ModWall, combining common code.

Definition at line 11 of file ModBlockType.cs.


The documentation for this class was generated from the following file: