Cuberite
A lightweight, fast and extensible game server for Minecraft
Classes | Functions | Variables
Trees.cpp File Reference
#include "Globals.h"
#include "Trees.h"
#include "../BlockType.h"
#include "../World.h"
Include dependency graph for Trees.cpp:

Go to the source code of this file.

Classes

struct  sCoords
 
struct  sCoordsArr
 
struct  sMetaCoords
 

Functions

void GetAcaciaTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random acacia tree. More...
 
void GetAppleBushImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random apple bush (for jungles) More...
 
void GetAppleTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random apple tree. More...
 
void GetBirchTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random birch tree. More...
 
void GetBrownMushroomTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks)
 Fills a_LogBlocks and a_OtherBlocks with the blocks required to form the brown mushroom. More...
 
void GetConiferTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks, bool a_Large)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random conifer tree. More...
 
void GetDarkoakTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random darkoak tree. More...
 
void GetJungleTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks, bool a_Large)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random jungle tree. More...
 
void GetLargeAppleTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a large (branching) apple tree. More...
 
void GetLargeJungleTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a large jungle tree (2x2 trunk) More...
 
void GetLargePineTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random large pine (tall conifer, little leaves at top) More...
 
void GetLargeSpruceTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random large spruce (short conifer, multiple layers of leaves) More...
 
NIBBLETYPE GetLogMetaFromDirection (NIBBLETYPE a_BlockMeta, Vector3d a_Direction)
 Returns the meta for a log from the given direction. More...
 
void GetPineTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks, bool a_Large)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random pine. More...
 
void GetRedMushroomTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks)
 Fills a_LogBlocks and a_OtherBlocks with the blocks required to form the red mushroom. More...
 
void GetSmallAppleTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a small (nonbranching) apple tree. More...
 
void GetSmallJungleTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a small jungle tree (1x1 trunk) More...
 
void GetSmallPineTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random small pine (tall conifer, little leaves at top) More...
 
void GetSmallSpruceTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random small spruce (short conifer, two layers of leaves) More...
 
void GetSpruceTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks, bool a_Large)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random spruce. More...
 
void GetSwampTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random swampland tree. More...
 
void GetTallBirchTreeImage (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random large birch tree. More...
 
Vector3d GetTreeBranch (BLOCKTYPE a_BlockType, NIBBLETYPE a_BlockMeta, Vector3i a_BlockPos, int a_BranchLength, Vector3d a_StartDirection, Vector3d a_Direction, sSetBlockVector &a_LogBlocks)
 Fills a_LogBlocks with the logs of a tree branch of the provided log type. More...
 
void GetTreeImageByBiome (Vector3i a_BlockPos, cNoise &a_Noise, int a_Seq, EMCSBiome a_Biome, sSetBlockVector &a_LogBlocks, sSetBlockVector &a_OtherBlocks)
 Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a tree at the specified coords (lowest trunk block) in the specified biome. More...
 
static void LargeSpruceAddRing (Vector3i a_BlockPos, int &a_Height, const sCoordsArr *const a_Ring, size_t a_RingCount, sSetBlockVector &a_OtherBlocks)
 
static const Vector3dpickBranchDirection (const cNoise a_Noise, Vector3i a_BlockPos, int a_Seq)
 Chooses a direction for a branch to go to based on the start position (a_BlockPos) and a_Seq. More...
 
void PushCoordBlocks (int a_BlockX, int a_Height, int a_BlockZ, sSetBlockVector &a_Blocks, const sCoords *a_Coords, size_t a_NumCoords, BLOCKTYPE a_BlockType, NIBBLETYPE a_Meta)
 Pushes a specified layer of blocks of the same type around (x, h, z) into a_Blocks. More...
 
void PushCornerBlocks (int a_BlockX, int a_Height, int a_BlockZ, int a_Seq, cNoise &a_Noise, int a_Chance, sSetBlockVector &a_Blocks, int a_CornersDist, BLOCKTYPE a_BlockType, NIBBLETYPE a_Meta)
 
void PushSomeColumns (int a_BlockX, int a_Height, int a_BlockZ, int a_ColumnHeight, int a_Seq, cNoise &a_Noise, int a_Chance, sSetBlockVector &a_Blocks, const sMetaCoords *a_Coords, size_t a_NumCoords, BLOCKTYPE a_BlockType)
 

Variables

static const sCoords BigO1 []
 
static const sCoords BigO1Spruce []
 
static const sCoords BigO2 []
 
static const sCoords BigO2Pine []
 
static const sCoords BigO3 []
 
static const sCoords BigO3Jungle []
 
static const sCoords BigO3Pine []
 
static const sCoords BigO4 []
 
static const sCoords BigO4Jungle []
 
static const sCoords BigO5Jungle []
 
static const sCoords BigOF2Pine []
 
static const sCoordsArr BigOJungleLayers []
 
static const sCoordsArr BigOLayers []
 
static const sCoordsArr BigOPineLayers []
 
static const sCoordsArr BigOSpruceLayersV1 []
 
static const sCoordsArr BigOSpruceLayersV2 []
 
static const sCoordsArr BigOSpruceLayersV3 []
 
static const sCoordsArr BigOSpruceLayersV4 []
 
static const sCoordsArr BigOSpruceTop []
 
static const sCoords Corners []
 
const int MAX_LARGE_SPRUCE_TREE_RINGS = 11
 
const int MIN_LARGE_SPRUCE_TREE_RINGS = 3
 
static const sCoords TopLargePine []
 

Function Documentation

◆ GetAcaciaTreeImage()

void GetAcaciaTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random acacia tree.

Definition at line 711 of file Trees.cpp.

◆ GetAppleBushImage()

void GetAppleBushImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random apple bush (for jungles)

Definition at line 1267 of file Trees.cpp.

◆ GetAppleTreeImage()

void GetAppleTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random apple tree.

Definition at line 522 of file Trees.cpp.

◆ GetBirchTreeImage()

void GetBirchTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random birch tree.

Definition at line 673 of file Trees.cpp.

◆ GetBrownMushroomTreeImage()

void GetBrownMushroomTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks 
)

Fills a_LogBlocks and a_OtherBlocks with the blocks required to form the brown mushroom.

Definition at line 1492 of file Trees.cpp.

◆ GetConiferTreeImage()

void GetConiferTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks,
bool  a_Large = false 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random conifer tree.

The probability to get a large pine is higher than a spruce tree

Definition at line 878 of file Trees.cpp.

◆ GetDarkoakTreeImage()

void GetDarkoakTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random darkoak tree.

Definition at line 769 of file Trees.cpp.

◆ GetJungleTreeImage()

void GetJungleTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks,
bool  a_Large 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random jungle tree.

Definition at line 1287 of file Trees.cpp.

◆ GetLargeAppleTreeImage()

void GetLargeAppleTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a large (branching) apple tree.

Definition at line 590 of file Trees.cpp.

◆ GetLargeJungleTreeImage()

void GetLargeJungleTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a large jungle tree (2x2 trunk)

Definition at line 1303 of file Trees.cpp.

◆ GetLargePineTreeImage()

void GetLargePineTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random large pine (tall conifer, little leaves at top)

Definition at line 1184 of file Trees.cpp.

◆ GetLargeSpruceTreeImage()

void GetLargeSpruceTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random large spruce (short conifer, multiple layers of leaves)

Definition at line 1040 of file Trees.cpp.

◆ GetLogMetaFromDirection()

NIBBLETYPE GetLogMetaFromDirection ( NIBBLETYPE  a_BlockMeta,
Vector3d  a_Direction 
)

Returns the meta for a log from the given direction.

Definition at line 651 of file Trees.cpp.

◆ GetPineTreeImage()

void GetPineTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks,
bool  a_Large 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random pine.

Definition at line 912 of file Trees.cpp.

◆ GetRedMushroomTreeImage()

void GetRedMushroomTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks 
)

Fills a_LogBlocks and a_OtherBlocks with the blocks required to form the red mushroom.

Definition at line 1445 of file Trees.cpp.

◆ GetSmallAppleTreeImage()

void GetSmallAppleTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a small (nonbranching) apple tree.

Definition at line 538 of file Trees.cpp.

◆ GetSmallJungleTreeImage()

void GetSmallJungleTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a small jungle tree (1x1 trunk)

Definition at line 1388 of file Trees.cpp.

◆ GetSmallPineTreeImage()

void GetSmallPineTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random small pine (tall conifer, little leaves at top)

Definition at line 1131 of file Trees.cpp.

◆ GetSmallSpruceTreeImage()

void GetSmallSpruceTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random small spruce (short conifer, two layers of leaves)

Definition at line 929 of file Trees.cpp.

◆ GetSpruceTreeImage()

void GetSpruceTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks,
bool  a_Large 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random spruce.

Definition at line 895 of file Trees.cpp.

◆ GetSwampTreeImage()

void GetSwampTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random swampland tree.

Definition at line 1220 of file Trees.cpp.

◆ GetTallBirchTreeImage()

void GetTallBirchTreeImage ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a random large birch tree.

Definition at line 840 of file Trees.cpp.

◆ GetTreeBranch()

Vector3d GetTreeBranch ( BLOCKTYPE  a_BlockType,
NIBBLETYPE  a_BlockMeta,
Vector3i  a_BlockPos,
int  a_BranchLength,
Vector3d  a_StartDirection,
Vector3d  a_Direction,
sSetBlockVector a_LogBlocks 
)

Fills a_LogBlocks with the logs of a tree branch of the provided log type.

The length of the branch can be changed with the a_BranchLength. The initial direction is a_StartDirection. The direction can be manipulated with a_Direction to create a curve. Returns the position of the last log block placed.

Definition at line 633 of file Trees.cpp.

◆ GetTreeImageByBiome()

void GetTreeImageByBiome ( Vector3i  a_BlockPos,
cNoise a_Noise,
int  a_Seq,
EMCSBiome  a_Biome,
sSetBlockVector a_LogBlocks,
sSetBlockVector a_OtherBlocks 
)

Fills a_LogBlocks and a_OtherBlocks (dirt & leaves) with the blocks required to form a tree at the specified coords (lowest trunk block) in the specified biome.

Definition at line 310 of file Trees.cpp.

◆ LargeSpruceAddRing()

static void LargeSpruceAddRing ( Vector3i  a_BlockPos,
int &  a_Height,
const sCoordsArr *const  a_Ring,
size_t  a_RingCount,
sSetBlockVector a_OtherBlocks 
)
static

Definition at line 1026 of file Trees.cpp.

◆ pickBranchDirection()

static const Vector3d& pickBranchDirection ( const cNoise  a_Noise,
Vector3i  a_BlockPos,
int  a_Seq 
)
static

Chooses a direction for a branch to go to based on the start position (a_BlockPos) and a_Seq.

Definition at line 35 of file Trees.cpp.

◆ PushCoordBlocks()

void PushCoordBlocks ( int  a_BlockX,
int  a_Height,
int  a_BlockZ,
sSetBlockVector a_Blocks,
const sCoords a_Coords,
size_t  a_NumCoords,
BLOCKTYPE  a_BlockType,
NIBBLETYPE  a_Meta 
)
inline

Pushes a specified layer of blocks of the same type around (x, h, z) into a_Blocks.

Definition at line 261 of file Trees.cpp.

◆ PushCornerBlocks()

void PushCornerBlocks ( int  a_BlockX,
int  a_Height,
int  a_BlockZ,
int  a_Seq,
cNoise a_Noise,
int  a_Chance,
sSetBlockVector a_Blocks,
int  a_CornersDist,
BLOCKTYPE  a_BlockType,
NIBBLETYPE  a_Meta 
)
inline

Definition at line 273 of file Trees.cpp.

◆ PushSomeColumns()

void PushSomeColumns ( int  a_BlockX,
int  a_Height,
int  a_BlockZ,
int  a_ColumnHeight,
int  a_Seq,
cNoise a_Noise,
int  a_Chance,
sSetBlockVector a_Blocks,
const sMetaCoords a_Coords,
size_t  a_NumCoords,
BLOCKTYPE  a_BlockType 
)
inline

Definition at line 290 of file Trees.cpp.

Variable Documentation

◆ BigO1

const sCoords BigO1[]
static
Initial value:
=
{
{0, -1},
{-1, 0}, {1, 0},
{0, 1},
}

Definition at line 68 of file Trees.cpp.

◆ BigO1Spruce

const sCoords BigO1Spruce[]
static
Initial value:
=
{
{0, -1}, {1, -1},
{-1, 0}, {2, 0},
{-1, 1}, {2, 1},
{0, 2}, {1, 2},
}

Definition at line 187 of file Trees.cpp.

◆ BigO2

const sCoords BigO2[]
static
Initial value:
=
{
{-1, -2}, {0, -2}, {1, -2},
{-2, -1}, {-1, -1}, {0, -1}, {1, -1}, {2, -1},
{-2, 0}, {-1, 0}, {1, 0}, {2, 0},
{-2, 1}, {-1, 1}, {0, 1}, {1, 1}, {2, 1},
{-1, 2}, {0, 2}, {1, 2},
}

Definition at line 75 of file Trees.cpp.

◆ BigO2Pine

const sCoords BigO2Pine[]
static
Initial value:
=
{
{0, -2}, {1, -2},
{-1, -1}, {0, -1}, {1, -1}, {2, -1},
{-2, 0}, {-1, 0}, {2, 0}, {3, 0},
{-2, 1}, {-1, 1}, {2, 1}, {3, 1},
{-1, 2}, {0, 2}, {1, 2}, {2, 2},
{0, 3}, {1, 3},
}

Definition at line 165 of file Trees.cpp.

◆ BigO3

const sCoords BigO3[]
static
Initial value:
=
{
{-2, -3}, {-1, -3}, {0, -3}, {1, -3}, {2, -3},
{-3, -2}, {-2, -2}, {-1, -2}, {0, -2}, {1, -2}, {2, -2}, {3, -2},
{-3, -1}, {-2, -1}, {-1, -1}, {0, -1}, {1, -1}, {2, -1}, {3, -1},
{-3, 0}, {-2, 0}, {-1, 0}, {1, 0}, {2, 0}, {3, 0},
{-3, 1}, {-2, 1}, {-1, 1}, {0, 1}, {1, 1}, {2, 1}, {3, 1},
{-3, 2}, {-2, 2}, {-1, 2}, {0, 2}, {1, 2}, {2, 2}, {3, 2},
{-2, 3}, {-1, 3}, {0, 3}, {1, 3}, {2, 3},
}

Definition at line 84 of file Trees.cpp.

◆ BigO3Jungle

const sCoords BigO3Jungle[]
static
Initial value:
=
{
{0, -3}, {1, -3},
{-1, -2}, {0, -2}, {1, -2}, {2, -2},
{-2, -1}, {-1, -1}, {0, -1}, {1, -1}, {2, -1}, {3, -1},
{-3, 0}, {-2, 0}, {-1, 0}, {0, 0}, {1, 0}, {2, 0}, {3, 0}, {4, 0},
{-3, 1}, {-2, 1}, {-1, 1}, {0, 1}, {1, 1}, {2, 1}, {3, 1}, {4, 1},
{-2, 2}, {-1, 2}, {0, 2}, {1, 2}, {2, 2}, {3, 2},
{-1, 3}, {0, 3}, {1, 3}, {2, 3},
{0, 4}, {1, 4},
}

Definition at line 109 of file Trees.cpp.

◆ BigO3Pine

const sCoords BigO3Pine[]
static
Initial value:
=
{
{0, -3}, {1, -3},
{-1, -2}, {0, -2}, {1, -2}, {2, -2},
{-2, -1}, {-1, -1}, {0, -1}, {1, -1}, {2, -1}, {3, -1},
{-3, 0}, {-2, 0}, {-1, 0}, {2, 0}, {3, 0}, {4, 0},
{-3, 1}, {-2, 1}, {-1, 1}, {2, 1}, {3, 1}, {4, 1},
{-2, 2}, {-1, 2}, {0, 2}, {1, 2}, {2, 2}, {3, 2},
{-1, 3}, {0, 3}, {1, 3}, {2, 3},
{0, 4}, {1, 4},
}

Definition at line 175 of file Trees.cpp.

◆ BigO4

const sCoords BigO4[]
static
Initial value:
=
{
{-2, -4}, {-1, -4}, {0, -4}, {1, -4}, {2, -4},
{-3, -3}, {-2, -3}, {-1, -3}, {0, -3}, {1, -3}, {2, -3}, {3, -3},
{-4, -2}, {-3, -2}, {-2, -2}, {-1, -2}, {0, -2}, {1, -2}, {2, -2}, {3, -2}, {4, -2},
{-4, -1}, {-3, -1}, {-2, -1}, {-1, -1}, {0, -1}, {1, -1}, {2, -1}, {3, -1}, {4, -1},
{-4, 0}, {-3, 0}, {-2, 0}, {-1, 0}, {1, 0}, {2, 0}, {3, 0}, {4, 0},
{-4, 1}, {-3, 1}, {-2, 1}, {-1, 1}, {0, 1}, {1, 1}, {2, 1}, {3, 1}, {4, 1},
{-4, 2}, {-3, 2}, {-2, 2}, {-1, 2}, {0, 2}, {1, 2}, {2, 2}, {3, 2}, {4, 2},
{-3, 3}, {-2, 3}, {-1, 3}, {0, 3}, {1, 3}, {2, 3}, {3, 3},
{-2, 4}, {-1, 4}, {0, 4}, {1, 4}, {2, 4},
}

Definition at line 96 of file Trees.cpp.

◆ BigO4Jungle

const sCoords BigO4Jungle[]
static
Initial value:
=
{
{0, -4}, {1, -4},
{-2, -3}, {-1, -3}, {0, -3}, {1, -3}, {2, -3}, {3, -3},
{-3, -2}, {-2, -2}, {-1, -2}, {0, -2}, {1, -2}, {2, -2}, {3, -2}, {4, -2},
{-3, -1}, {-2, -1}, {-1, -1}, {0, -1}, {1, -1}, {2, -1}, {3, -1}, {4, -1},
{-4, 0}, {-3, 0}, {-2, 0}, {-1, 0}, {2, 0}, {3, 0}, {4, 0}, {5, 0},
{-4, 1}, {-3, 1}, {-2, 1}, {-1, 1}, {2, 1}, {3, 1}, {4, 1}, {5, 1},
{-3, 2}, {-2, 2}, {-1, 2}, {0, 2}, {1, 2}, {2, 2}, {3, 2}, {4, 2},
{-3, 3}, {-2, 3}, {-1, 3}, {0, 3}, {1, 3}, {2, 3}, {3, 3}, {4, 3},
{-2, 4}, {-1, 4}, {0, 4}, {1, 4}, {2, 4}, {3, 4},
{0, 5}, {1, 5},
}

Definition at line 121 of file Trees.cpp.

◆ BigO5Jungle

const sCoords BigO5Jungle[]
static
Initial value:
=
{
{0, -5}, {1, -5},
{-2, -4}, {-1, -4}, {0, -4}, {1, -4}, {2, -4}, {3, -4},
{-3, -3}, {-2, -3}, {-1, -3}, {0, -3}, {1, -3}, {2, -3}, {3, -3}, {4, -3},
{-4, -2}, {-3, -2}, {-2, -2}, {-1, -2}, {0, -2}, {1, -2}, {2, -2}, {3, -2}, {4, -2}, {5, -2},
{-4, -1}, {-3, -1}, {-2, -1}, {-1, -1}, {0, -1}, {1, -1}, {2, -1}, {3, -1}, {4, -1}, {5, -1},
{-5, 0}, {-4, 0}, {-3, 0}, {-2, 0}, {-1, 0}, {2, 0}, {3, 0}, {4, 0}, {5, 0}, {6, 0},
{-5, 1}, {-4, 1}, {-3, 1}, {-2, 1}, {-1, 1}, {2, 1}, {3, 1}, {4, 1}, {5, 1}, {6, 1},
{-4, 2}, {-3, 2}, {-2, 2}, {-1, 2}, {0, 2}, {1, 2}, {2, 2}, {3, 2}, {4, 2}, {5, 2},
{-4, 3}, {-3, 3}, {-2, 3}, {-1, 3}, {0, 3}, {1, 3}, {2, 3}, {3, 3}, {4, 3}, {5, 3},
{-3, 4}, {-2, 4}, {-1, 4}, {0, 4}, {1, 4}, {2, 4}, {3, 4}, {4, 4},
{-2, 5}, {-1, 5}, {0, 5}, {1, 5}, {2, 5}, {3, 5},
{0, 6}, {1, 6},
}

Definition at line 135 of file Trees.cpp.

◆ BigOF2Pine

const sCoords BigOF2Pine[]
static
Initial value:
=
{
{0, -1}, {1, -1},
{-1, 0}, {0, 0}, {1, 0}, {2, 0},
{-1, 1}, {0, 1}, {1, 1}, {2, 1},
{0, 2}, {1, 2},
}

Definition at line 157 of file Trees.cpp.

◆ BigOJungleLayers

const sCoordsArr BigOJungleLayers[]
static
Initial value:
=
{
}
static const sCoords BigO4Jungle[]
Definition: Trees.cpp:121
static const sCoords BigO5Jungle[]
Definition: Trees.cpp:135
static const sCoords BigO3Jungle[]
Definition: Trees.cpp:109
#define ARRAYCOUNT(X)
Evaluates to the number of elements in an array (compile-time!)
Definition: Globals.h:231

Definition at line 211 of file Trees.cpp.

◆ BigOLayers

const sCoordsArr BigOLayers[]
static
Initial value:
=
{
}
static const sCoords BigO2[]
Definition: Trees.cpp:75
static const sCoords BigO3[]
Definition: Trees.cpp:84
static const sCoords BigO4[]
Definition: Trees.cpp:96
static const sCoords BigO1[]
Definition: Trees.cpp:68

Definition at line 203 of file Trees.cpp.

◆ BigOPineLayers

const sCoordsArr BigOPineLayers[]
static
Initial value:
=
{
}
static const sCoords BigO2Pine[]
Definition: Trees.cpp:165
static const sCoords TopLargePine[]
Definition: Trees.cpp:151
static const sCoords BigO3Pine[]
Definition: Trees.cpp:175
static const sCoords BigOF2Pine[]
Definition: Trees.cpp:157

Definition at line 218 of file Trees.cpp.

◆ BigOSpruceLayersV1

const sCoordsArr BigOSpruceLayersV1[]
static
Initial value:
=
{
{nullptr, 0},
}
static const sCoords BigO1Spruce[]
Definition: Trees.cpp:187

Definition at line 226 of file Trees.cpp.

◆ BigOSpruceLayersV2

const sCoordsArr BigOSpruceLayersV2[]
static
Initial value:

Definition at line 232 of file Trees.cpp.

◆ BigOSpruceLayersV3

const sCoordsArr BigOSpruceLayersV3[]
static
Initial value:

Definition at line 238 of file Trees.cpp.

◆ BigOSpruceLayersV4

const sCoordsArr BigOSpruceLayersV4[]
static
Initial value:

Definition at line 244 of file Trees.cpp.

◆ BigOSpruceTop

const sCoordsArr BigOSpruceTop[]
static
Initial value:

Definition at line 250 of file Trees.cpp.

◆ Corners

const sCoords Corners[]
static
Initial value:
=
{
{-1, -1},
{-1, 1},
{1, -1},
{1, 1},
}

Definition at line 26 of file Trees.cpp.

◆ MAX_LARGE_SPRUCE_TREE_RINGS

const int MAX_LARGE_SPRUCE_TREE_RINGS = 11

Definition at line 1039 of file Trees.cpp.

◆ MIN_LARGE_SPRUCE_TREE_RINGS

const int MIN_LARGE_SPRUCE_TREE_RINGS = 3

Definition at line 1038 of file Trees.cpp.

◆ TopLargePine

const sCoords TopLargePine[]
static
Initial value:
=
{
{0, 0}, {1, 0},
{0, 1}, {1, 1},
}

Definition at line 151 of file Trees.cpp.