tModLoader v2025.08
A mod to make and play Terraria mods
WallLoader Class Reference

This serves as the central class from which wall-related functions are supported and carried out. More...

Public Member Functions

delegate bool ConvertWall (int i, int j, int type, int conversionType)
 

Static Public Member Functions

static void AnimateWalls ()
 
static bool CanBeTeleportedTo (int i, int j, int type, Player player, string context)
 
static bool CanExplode (int i, int j, int type)
 
static bool CanPlace (int i, int j, int type)
 
static bool Convert (int i, int j, int conversionType)
 
static bool CreateDust (int i, int j, int type, ref int dustType)
 
static bool Drop (int i, int j, int type, ref int dropType)
 
static ModWall GetWall (int type)
 Gets the ModWall instance with the given type. If no ModWall with the given type exists, returns null.
 
static bool KillSound (int i, int j, int type, bool fail)
 
static void KillWall (int i, int j, int type, ref bool fail)
 
static void ModifyLight (int i, int j, int type, ref float r, ref float g, ref float b)
 
static void NumDust (int i, int j, int type, bool fail, ref int numDust)
 
static void PlaceInWorld (int i, int j, Item item)
 
static void PostDraw (int i, int j, int type, SpriteBatch spriteBatch)
 
static bool PreDraw (int i, int j, int type, SpriteBatch spriteBatch)
 
static void RandomUpdate (int i, int j, int type)
 
static void RegisterConversion (int wallType, int conversionType, ConvertWall conversionDelegate)
 Registers a wall type as having custom biome conversion code for this specific BiomeConversionID. For modded walls, you can directly use Convert
If you need to register conversions that rely on WallID.Sets.Conversion being fully populated, consider doing it in ModBiomeConversion.PostSetupContent More...
 
static void RegisterConversionFallback (int wallType, int fallbackType, params int[] exceptForConversionTypes)
 Sets a fallback wall type for all conversion types except those in exceptForConversionTypes
When WorldGen.Convert(int, int, int, int, bool, bool) is called on the wallType but there is no registsred conversion, the tile will be temporarily replaced with fallbackType and conversion will be reattempted.
If the fallbackType also has no conversion, the tile remains unchanged.

For example WallID.EbonstoneUnsafe falls back to TileID.Stone so a modded conversion that affects Stone can convert Ebonstone without needing to register a conversion for Ebonstone directly.
 
static void RegisterSimpleConversion (int wallType, int conversionType, int toType, bool purification=true)
 Registers a conversion that replaces wallType with toType when touched by conversionType
Also registers wallType as a fallback for toType so that other conversions can convert toType as if it was wallType .
If you need to register conversions that rely on WallID.Sets.Conversion being fully populated, consider doing it in ModBiomeConversion.PostSetupContent More...
 
static void SetConversionFallback (int wallType, int conversionType, int fallbackType)
 Sets an individual conversion fallback. For advanced uses only.
 
static bool TryGetConversionFallback (int wallType, int conversionType, out int fallbackType)
 Tries to retrieve the fallbackType corresponding to the provided wallType and conversionType
See also:

See also
RegisterConversionFallback
More...
 
static bool WallFrame (int i, int j, int type, bool randomizeFrame, ref int style, ref int frameNumber)
 

Properties

static int WallCount [get]
 

Detailed Description

This serves as the central class from which wall-related functions are supported and carried out.

Member Function Documentation

◆ RegisterConversion()

static void WallLoader.RegisterConversion ( int  wallType,
int  conversionType,
ConvertWall  conversionDelegate 
)
static

Registers a wall type as having custom biome conversion code for this specific BiomeConversionID. For modded walls, you can directly use Convert
If you need to register conversions that rely on WallID.Sets.Conversion being fully populated, consider doing it in ModBiomeConversion.PostSetupContent

Parameters
wallTypeThe wall type that has is affected by this custom conversion.
conversionTypeThe conversion type for which the wall should use custom conversion code.
conversionDelegateCode to run when the wall attempts to get converted. Return false to signal that your custom conversion took place and that vanilla code shouldn't be ran.

◆ RegisterSimpleConversion()

static void WallLoader.RegisterSimpleConversion ( int  wallType,
int  conversionType,
int  toType,
bool  purification = true 
)
static

Registers a conversion that replaces wallType with toType when touched by conversionType
Also registers wallType as a fallback for toType so that other conversions can convert toType as if it was wallType .
If you need to register conversions that rely on WallID.Sets.Conversion being fully populated, consider doing it in ModBiomeConversion.PostSetupContent

Parameters
wallTypeThe wall type that has is affected by this conversion.
conversionTypeThe conversion type for which the wall should use this conversion.
toTypeThe wall type that this conversion should convert the wall to.
purificationIf true, automatically registers purification conversions from toType to wallType as well.

◆ TryGetConversionFallback()

static bool WallLoader.TryGetConversionFallback ( int  wallType,
int  conversionType,
out int  fallbackType 
)
static

Tries to retrieve the fallbackType corresponding to the provided wallType and conversionType
See also:

See also
RegisterConversionFallback

Returns
True if the wall has a registered fallback for the given conversion type