tModLoader v2023.01
A mod to make and play Terraria mods
Terraria.ModLoader.ModTree Class Referenceabstract

This class represents a type of modded tree. The tree will share a tile ID with the vanilla trees (5), so that the trees can freely convert between each other if the soil below is converted. This class encapsulates several functions that distinguish each type of tree from each other. More...

Inherits Terraria.ModLoader.ITree.

Public Member Functions

virtual bool CanDropAcorn ()
 Whether or not this tree can drop acorns. Returns true by default. More...
 
virtual int CreateDust ()
 Return the type of dust created when this tree is destroyed. Returns 7 by default. More...
 
abstract int DropWood ()
 The ID of the item that is dropped in bulk when this tree is destroyed. More...
 
abstract Asset< Texture2D > GetBranchTextures ()
 Return the texture containing the possible tree branches that can be drawn next to this tree. The framing was determined under <cref>SetTreeFoliageSettings</cref>
 
abstract Asset< Texture2D > GetTexture ()
 
abstract Asset< Texture2D > GetTopTextures ()
 Return the texture containing the possible tree tops that can be drawn above this tree. The framing was determined under <cref>SetTreeFoliageSettings</cref>
 
virtual int SaplingGrowthType (ref int style)
 Defines the sapling that can eventually grow into a tree. The type of the sapling should be returned here. Returns 20 and style 0 by default. The style parameter will determine which sapling is chosen if multiple sapling types share the same ID; even if you only have a single sapling in an ID, you must still set this to 0. More...
 
abstract void SetStaticDefaults ()
 
abstract void SetTreeFoliageSettings (Tile tile, ref int xoffset, ref int treeFrame, ref int floorY, ref int topTextureFrameWidth, ref int topTextureFrameHeight)
 
virtual bool Shake (int x, int y, ref bool createLeaves)
 Executed on tree shake, return false to skip vanilla tree shake drops More...
 
virtual int TreeLeaf ()
 Return the type of gore created when the tree grow, being shook and falling leaves on windy days, returns -1 by default More...
 
bool Shake (int x, int y, ref bool createLeaves)
 
int TreeLeaf ()
 
- Public Member Functions inherited from Terraria.ModLoader.IPlant
abstract Asset< Texture2D > GetTexture ()
 
void ILoadable. Load (Mod mod)
 Called when loading the type. More...
 
abstract void SetStaticDefaults ()
 
void ILoadable. Unload ()
 Called during unloading when needed. More...
 
- Public Member Functions inherited from Terraria.ModLoader.ILoadable
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...
 

Static Public Attributes

const int VanillaStyleCount = 7
 
const int VanillaTopTextureCount = 100
 

Properties

virtual TreeTypes CountsAsTreeType [get]
 Used mostly for vanilla tree shake loot tables More...
 
int[] GrowsOnTileId [get, set]
 
int PlantTileId [get]
 The tree will share a tile ID with the vanilla trees (5), so that the trees can freely convert between each other if the soil below is converted. More...
 
abstract TreePaintingSettings TreeShaderSettings [get]
 
int VanillaCount [get]
 
- Properties inherited from Terraria.ModLoader.ITree
TreeTypes CountsAsTreeType [get]
 
- Properties inherited from Terraria.ModLoader.IPlant
int[] GrowsOnTileId [get, set]
 
int PlantTileId [get]
 
int VanillaCount [get]
 

Detailed Description

This class represents a type of modded tree. The tree will share a tile ID with the vanilla trees (5), so that the trees can freely convert between each other if the soil below is converted. This class encapsulates several functions that distinguish each type of tree from each other.

Member Function Documentation

◆ CanDropAcorn()

virtual bool Terraria.ModLoader.ModTree.CanDropAcorn ( )
virtual

Whether or not this tree can drop acorns. Returns true by default.

Returns

◆ CreateDust()

virtual int Terraria.ModLoader.ModTree.CreateDust ( )
virtual

Return the type of dust created when this tree is destroyed. Returns 7 by default.

Returns

◆ DropWood()

abstract int Terraria.ModLoader.ModTree.DropWood ( )
pure virtual

The ID of the item that is dropped in bulk when this tree is destroyed.

Returns

◆ GetTexture()

abstract Asset< Texture2D > Terraria.ModLoader.ModTree.GetTexture ( )
pure virtual

◆ SaplingGrowthType()

virtual int Terraria.ModLoader.ModTree.SaplingGrowthType ( ref int  style)
virtual

Defines the sapling that can eventually grow into a tree. The type of the sapling should be returned here. Returns 20 and style 0 by default. The style parameter will determine which sapling is chosen if multiple sapling types share the same ID; even if you only have a single sapling in an ID, you must still set this to 0.

Parameters
style
Returns

◆ SetStaticDefaults()

abstract void Terraria.ModLoader.ModTree.SetStaticDefaults ( )
pure virtual

◆ Shake()

virtual bool Terraria.ModLoader.ModTree.Shake ( int  x,
int  y,
ref bool  createLeaves 
)
virtual

Executed on tree shake, return false to skip vanilla tree shake drops

Returns

Implements Terraria.ModLoader.ITree.

◆ TreeLeaf()

virtual int Terraria.ModLoader.ModTree.TreeLeaf ( )
virtual

Return the type of gore created when the tree grow, being shook and falling leaves on windy days, returns -1 by default

Returns

Implements Terraria.ModLoader.ITree.

Property Documentation

◆ CountsAsTreeType

virtual TreeTypes Terraria.ModLoader.ModTree.CountsAsTreeType
get

Used mostly for vanilla tree shake loot tables

Implements Terraria.ModLoader.ITree.

◆ GrowsOnTileId

int [] Terraria.ModLoader.ModTree.GrowsOnTileId
getset

◆ PlantTileId

int Terraria.ModLoader.ModTree.PlantTileId
get

The tree will share a tile ID with the vanilla trees (5), so that the trees can freely convert between each other if the soil below is converted.

Implements Terraria.ModLoader.IPlant.

◆ VanillaCount

int Terraria.ModLoader.ModTree.VanillaCount
get