1
0
Fork 0
cuberite-2a/src/Registries/Blocks.h

20285 lines
1.1 MiB

#pragma once
#include "Globals.h"
#include "../Defines.h"
namespace Block
{
enum class Type
{
AcaciaButton,
AcaciaDoor,
AcaciaFence,
AcaciaFenceGate,
AcaciaLeaves,
AcaciaLog,
AcaciaPlanks,
AcaciaPressurePlate,
AcaciaSapling,
AcaciaSign,
AcaciaSlab,
AcaciaStairs,
AcaciaTrapdoor,
AcaciaWallSign,
AcaciaWood,
ActivatorRail,
Air,
Allium,
AncientDebris,
Andesite,
AndesiteSlab,
AndesiteStairs,
AndesiteWall,
Anvil,
AttachedMelonStem,
AttachedPumpkinStem,
AzureBluet,
Bamboo,
BambooSapling,
Barrel,
Barrier,
Basalt,
Beacon,
Bedrock,
BeeNest,
Beehive,
Beetroots,
Bell,
BirchButton,
BirchDoor,
BirchFence,
BirchFenceGate,
BirchLeaves,
BirchLog,
BirchPlanks,
BirchPressurePlate,
BirchSapling,
BirchSign,
BirchSlab,
BirchStairs,
BirchTrapdoor,
BirchWallSign,
BirchWood,
BlackBanner,
BlackBed,
BlackCarpet,
BlackConcrete,
BlackConcretePowder,
BlackGlazedTerracotta,
BlackShulkerBox,
BlackStainedGlass,
BlackStainedGlassPane,
BlackTerracotta,
BlackWallBanner,
BlackWool,
Blackstone,
BlackstoneSlab,
BlackstoneStairs,
BlackstoneWall,
BlastFurnace,
BlueBanner,
BlueBed,
BlueCarpet,
BlueConcrete,
BlueConcretePowder,
BlueGlazedTerracotta,
BlueIce,
BlueOrchid,
BlueShulkerBox,
BlueStainedGlass,
BlueStainedGlassPane,
BlueTerracotta,
BlueWallBanner,
BlueWool,
BoneBlock,
Bookshelf,
BrainCoral,
BrainCoralBlock,
BrainCoralFan,
BrainCoralWallFan,
BrewingStand,
BrickSlab,
BrickStairs,
BrickWall,
Bricks,
BrownBanner,
BrownBed,
BrownCarpet,
BrownConcrete,
BrownConcretePowder,
BrownGlazedTerracotta,
BrownMushroom,
BrownMushroomBlock,
BrownShulkerBox,
BrownStainedGlass,
BrownStainedGlassPane,
BrownTerracotta,
BrownWallBanner,
BrownWool,
BubbleColumn,
BubbleCoral,
BubbleCoralBlock,
BubbleCoralFan,
BubbleCoralWallFan,
Cactus,
Cake,
Campfire,
Carrots,
CartographyTable,
CarvedPumpkin,
Cauldron,
CaveAir,
Chain,
ChainCommandBlock,
Chest,
ChippedAnvil,
ChiseledNetherBricks,
ChiseledPolishedBlackstone,
ChiseledQuartzBlock,
ChiseledRedSandstone,
ChiseledSandstone,
ChiseledStoneBricks,
ChorusFlower,
ChorusPlant,
Clay,
CoalBlock,
CoalOre,
CoarseDirt,
Cobblestone,
CobblestoneSlab,
CobblestoneStairs,
CobblestoneWall,
Cobweb,
Cocoa,
CommandBlock,
Comparator,
Composter,
Conduit,
Cornflower,
CrackedNetherBricks,
CrackedPolishedBlackstoneBricks,
CrackedStoneBricks,
CraftingTable,
CreeperHead,
CreeperWallHead,
CrimsonButton,
CrimsonDoor,
CrimsonFence,
CrimsonFenceGate,
CrimsonFungus,
CrimsonHyphae,
CrimsonNylium,
CrimsonPlanks,
CrimsonPressurePlate,
CrimsonRoots,
CrimsonSign,
CrimsonSlab,
CrimsonStairs,
CrimsonStem,
CrimsonTrapdoor,
CrimsonWallSign,
CryingObsidian,
CutRedSandstone,
CutRedSandstoneSlab,
CutSandstone,
CutSandstoneSlab,
CyanBanner,
CyanBed,
CyanCarpet,
CyanConcrete,
CyanConcretePowder,
CyanGlazedTerracotta,
CyanShulkerBox,
CyanStainedGlass,
CyanStainedGlassPane,
CyanTerracotta,
CyanWallBanner,
CyanWool,
DamagedAnvil,
Dandelion,
DarkOakButton,
DarkOakDoor,
DarkOakFence,
DarkOakFenceGate,
DarkOakLeaves,
DarkOakLog,
DarkOakPlanks,
DarkOakPressurePlate,
DarkOakSapling,
DarkOakSign,
DarkOakSlab,
DarkOakStairs,
DarkOakTrapdoor,
DarkOakWallSign,
DarkOakWood,
DarkPrismarine,
DarkPrismarineSlab,
DarkPrismarineStairs,
DaylightDetector,
DeadBrainCoral,
DeadBrainCoralBlock,
DeadBrainCoralFan,
DeadBrainCoralWallFan,
DeadBubbleCoral,
DeadBubbleCoralBlock,
DeadBubbleCoralFan,
DeadBubbleCoralWallFan,
DeadBush,
DeadFireCoral,
DeadFireCoralBlock,
DeadFireCoralFan,
DeadFireCoralWallFan,
DeadHornCoral,
DeadHornCoralBlock,
DeadHornCoralFan,
DeadHornCoralWallFan,
DeadTubeCoral,
DeadTubeCoralBlock,
DeadTubeCoralFan,
DeadTubeCoralWallFan,
DetectorRail,
DiamondBlock,
DiamondOre,
Diorite,
DioriteSlab,
DioriteStairs,
DioriteWall,
Dirt,
Dispenser,
DragonEgg,
DragonHead,
DragonWallHead,
DriedKelpBlock,
Dropper,
EmeraldBlock,
EmeraldOre,
EnchantingTable,
EndGateway,
EndPortal,
EndPortalFrame,
EndRod,
EndStone,
EndStoneBrickSlab,
EndStoneBrickStairs,
EndStoneBrickWall,
EndStoneBricks,
EnderChest,
Farmland,
Fern,
Fire,
FireCoral,
FireCoralBlock,
FireCoralFan,
FireCoralWallFan,
FletchingTable,
FlowerPot,
FrostedIce,
Furnace,
GildedBlackstone,
Glass,
GlassPane,
Glowstone,
GoldBlock,
GoldOre,
Granite,
GraniteSlab,
GraniteStairs,
GraniteWall,
Grass,
GrassBlock,
GrassPath,
Gravel,
GrayBanner,
GrayBed,
GrayCarpet,
GrayConcrete,
GrayConcretePowder,
GrayGlazedTerracotta,
GrayShulkerBox,
GrayStainedGlass,
GrayStainedGlassPane,
GrayTerracotta,
GrayWallBanner,
GrayWool,
GreenBanner,
GreenBed,
GreenCarpet,
GreenConcrete,
GreenConcretePowder,
GreenGlazedTerracotta,
GreenShulkerBox,
GreenStainedGlass,
GreenStainedGlassPane,
GreenTerracotta,
GreenWallBanner,
GreenWool,
Grindstone,
HayBale,
HeavyWeightedPressurePlate,
HoneyBlock,
HoneycombBlock,
Hopper,
HornCoral,
HornCoralBlock,
HornCoralFan,
HornCoralWallFan,
Ice,
InfestedChiseledStoneBricks,
InfestedCobblestone,
InfestedCrackedStoneBricks,
InfestedMossyStoneBricks,
InfestedStone,
InfestedStoneBricks,
IronBars,
IronBlock,
IronDoor,
IronOre,
IronTrapdoor,
JackOLantern,
Jigsaw,
Jukebox,
JungleButton,
JungleDoor,
JungleFence,
JungleFenceGate,
JungleLeaves,
JungleLog,
JunglePlanks,
JunglePressurePlate,
JungleSapling,
JungleSign,
JungleSlab,
JungleStairs,
JungleTrapdoor,
JungleWallSign,
JungleWood,
Kelp,
KelpPlant,
Ladder,
Lantern,
LapisBlock,
LapisOre,
LargeFern,
Lava,
Lectern,
Lever,
LightBlueBanner,
LightBlueBed,
LightBlueCarpet,
LightBlueConcrete,
LightBlueConcretePowder,
LightBlueGlazedTerracotta,
LightBlueShulkerBox,
LightBlueStainedGlass,
LightBlueStainedGlassPane,
LightBlueTerracotta,
LightBlueWallBanner,
LightBlueWool,
LightGrayBanner,
LightGrayBed,
LightGrayCarpet,
LightGrayConcrete,
LightGrayConcretePowder,
LightGrayGlazedTerracotta,
LightGrayShulkerBox,
LightGrayStainedGlass,
LightGrayStainedGlassPane,
LightGrayTerracotta,
LightGrayWallBanner,
LightGrayWool,
LightWeightedPressurePlate,
Lilac,
LilyOfTheValley,
LilyPad,
LimeBanner,
LimeBed,
LimeCarpet,
LimeConcrete,
LimeConcretePowder,
LimeGlazedTerracotta,
LimeShulkerBox,
LimeStainedGlass,
LimeStainedGlassPane,
LimeTerracotta,
LimeWallBanner,
LimeWool,
Lodestone,
Loom,
MagentaBanner,
MagentaBed,
MagentaCarpet,
MagentaConcrete,
MagentaConcretePowder,
MagentaGlazedTerracotta,
MagentaShulkerBox,
MagentaStainedGlass,
MagentaStainedGlassPane,
MagentaTerracotta,
MagentaWallBanner,
MagentaWool,
MagmaBlock,
Melon,
MelonStem,
MossyCobblestone,
MossyCobblestoneSlab,
MossyCobblestoneStairs,
MossyCobblestoneWall,
MossyStoneBrickSlab,
MossyStoneBrickStairs,
MossyStoneBrickWall,
MossyStoneBricks,
MovingPiston,
MushroomStem,
Mycelium,
NetherBrickFence,
NetherBrickSlab,
NetherBrickStairs,
NetherBrickWall,
NetherBricks,
NetherGoldOre,
NetherPortal,
NetherQuartzOre,
NetherSprouts,
NetherWart,
NetherWartBlock,
NetheriteBlock,
Netherrack,
NoteBlock,
OakButton,
OakDoor,
OakFence,
OakFenceGate,
OakLeaves,
OakLog,
OakPlanks,
OakPressurePlate,
OakSapling,
OakSign,
OakSlab,
OakStairs,
OakTrapdoor,
OakWallSign,
OakWood,
Observer,
Obsidian,
OrangeBanner,
OrangeBed,
OrangeCarpet,
OrangeConcrete,
OrangeConcretePowder,
OrangeGlazedTerracotta,
OrangeShulkerBox,
OrangeStainedGlass,
OrangeStainedGlassPane,
OrangeTerracotta,
OrangeTulip,
OrangeWallBanner,
OrangeWool,
OxeyeDaisy,
PackedIce,
Peony,
PetrifiedOakSlab,
PinkBanner,
PinkBed,
PinkCarpet,
PinkConcrete,
PinkConcretePowder,
PinkGlazedTerracotta,
PinkShulkerBox,
PinkStainedGlass,
PinkStainedGlassPane,
PinkTerracotta,
PinkTulip,
PinkWallBanner,
PinkWool,
Piston,
PistonHead,
PlayerHead,
PlayerWallHead,
Podzol,
PolishedAndesite,
PolishedAndesiteSlab,
PolishedAndesiteStairs,
PolishedBasalt,
PolishedBlackstone,
PolishedBlackstoneBrickSlab,
PolishedBlackstoneBrickStairs,
PolishedBlackstoneBrickWall,
PolishedBlackstoneBricks,
PolishedBlackstoneButton,
PolishedBlackstonePressurePlate,
PolishedBlackstoneSlab,
PolishedBlackstoneStairs,
PolishedBlackstoneWall,
PolishedDiorite,
PolishedDioriteSlab,
PolishedDioriteStairs,
PolishedGranite,
PolishedGraniteSlab,
PolishedGraniteStairs,
Poppy,
Potatoes,
PottedAcaciaSapling,
PottedAllium,
PottedAzureBluet,
PottedBamboo,
PottedBirchSapling,
PottedBlueOrchid,
PottedBrownMushroom,
PottedCactus,
PottedCornflower,
PottedCrimsonFungus,
PottedCrimsonRoots,
PottedDandelion,
PottedDarkOakSapling,
PottedDeadBush,
PottedFern,
PottedJungleSapling,
PottedLilyOfTheValley,
PottedOakSapling,
PottedOrangeTulip,
PottedOxeyeDaisy,
PottedPinkTulip,
PottedPoppy,
PottedRedMushroom,
PottedRedTulip,
PottedSpruceSapling,
PottedWarpedFungus,
PottedWarpedRoots,
PottedWhiteTulip,
PottedWitherRose,
PoweredRail,
Prismarine,
PrismarineBrickSlab,
PrismarineBrickStairs,
PrismarineBricks,
PrismarineSlab,
PrismarineStairs,
PrismarineWall,
Pumpkin,
PumpkinStem,
PurpleBanner,
PurpleBed,
PurpleCarpet,
PurpleConcrete,
PurpleConcretePowder,
PurpleGlazedTerracotta,
PurpleShulkerBox,
PurpleStainedGlass,
PurpleStainedGlassPane,
PurpleTerracotta,
PurpleWallBanner,
PurpleWool,
PurpurBlock,
PurpurPillar,
PurpurSlab,
PurpurStairs,
QuartzBlock,
QuartzBricks,
QuartzPillar,
QuartzSlab,
QuartzStairs,
Rail,
RedBanner,
RedBed,
RedCarpet,
RedConcrete,
RedConcretePowder,
RedGlazedTerracotta,
RedMushroom,
RedMushroomBlock,
RedNetherBrickSlab,
RedNetherBrickStairs,
RedNetherBrickWall,
RedNetherBricks,
RedSand,
RedSandstone,
RedSandstoneSlab,
RedSandstoneStairs,
RedSandstoneWall,
RedShulkerBox,
RedStainedGlass,
RedStainedGlassPane,
RedTerracotta,
RedTulip,
RedWallBanner,
RedWool,
RedstoneBlock,
RedstoneLamp,
RedstoneOre,
RedstoneTorch,
RedstoneWallTorch,
RedstoneWire,
Repeater,
RepeatingCommandBlock,
RespawnAnchor,
RoseBush,
Sand,
Sandstone,
SandstoneSlab,
SandstoneStairs,
SandstoneWall,
Scaffolding,
SeaLantern,
SeaPickle,
Seagrass,
Shroomlight,
ShulkerBox,
SkeletonSkull,
SkeletonWallSkull,
SlimeBlock,
SmithingTable,
Smoker,
SmoothQuartz,
SmoothQuartzSlab,
SmoothQuartzStairs,
SmoothRedSandstone,
SmoothRedSandstoneSlab,
SmoothRedSandstoneStairs,
SmoothSandstone,
SmoothSandstoneSlab,
SmoothSandstoneStairs,
SmoothStone,
SmoothStoneSlab,
Snow,
SnowBlock,
SoulCampfire,
SoulFire,
SoulLantern,
SoulSand,
SoulSoil,
SoulTorch,
SoulWallTorch,
Spawner,
Sponge,
SpruceButton,
SpruceDoor,
SpruceFence,
SpruceFenceGate,
SpruceLeaves,
SpruceLog,
SprucePlanks,
SprucePressurePlate,
SpruceSapling,
SpruceSign,
SpruceSlab,
SpruceStairs,
SpruceTrapdoor,
SpruceWallSign,
SpruceWood,
StickyPiston,
Stone,
StoneBrickSlab,
StoneBrickStairs,
StoneBrickWall,
StoneBricks,
StoneButton,
StonePressurePlate,
StoneSlab,
StoneStairs,
Stonecutter,
StrippedAcaciaLog,
StrippedAcaciaWood,
StrippedBirchLog,
StrippedBirchWood,
StrippedCrimsonHyphae,
StrippedCrimsonStem,
StrippedDarkOakLog,
StrippedDarkOakWood,
StrippedJungleLog,
StrippedJungleWood,
StrippedOakLog,
StrippedOakWood,
StrippedSpruceLog,
StrippedSpruceWood,
StrippedWarpedHyphae,
StrippedWarpedStem,
StructureBlock,
StructureVoid,
SugarCane,
Sunflower,
SweetBerryBush,
TNT,
TallGrass,
TallSeagrass,
Target,
Terracotta,
Torch,
TrappedChest,
Tripwire,
TripwireHook,
TubeCoral,
TubeCoralBlock,
TubeCoralFan,
TubeCoralWallFan,
TurtleEgg,
TwistingVines,
TwistingVinesPlant,
Vine,
VoidAir,
WallTorch,
WarpedButton,
WarpedDoor,
WarpedFence,
WarpedFenceGate,
WarpedFungus,
WarpedHyphae,
WarpedNylium,
WarpedPlanks,
WarpedPressurePlate,
WarpedRoots,
WarpedSign,
WarpedSlab,
WarpedStairs,
WarpedStem,
WarpedTrapdoor,
WarpedWallSign,
WarpedWartBlock,
Water,
WeepingVines,
WeepingVinesPlant,
WetSponge,
Wheat,
WhiteBanner,
WhiteBed,
WhiteCarpet,
WhiteConcrete,
WhiteConcretePowder,
WhiteGlazedTerracotta,
WhiteShulkerBox,
WhiteStainedGlass,
WhiteStainedGlassPane,
WhiteTerracotta,
WhiteTulip,
WhiteWallBanner,
WhiteWool,
WitherRose,
WitherSkeletonSkull,
WitherSkeletonWallSkull,
YellowBanner,
YellowBed,
YellowCarpet,
YellowConcrete,
YellowConcretePowder,
YellowGlazedTerracotta,
YellowShulkerBox,
YellowStainedGlass,
YellowStainedGlassPane,
YellowTerracotta,
YellowWallBanner,
YellowWool,
ZombieHead,
ZombieWallHead
};
enum Type Type(short ID);
bool Is(short ID, enum Type Type);
namespace AcaciaButton
{
enum class Face
{
Floor,
Wall,
Ceiling
};
constexpr short AcaciaButton(enum Face Face, eBlockFace Facing, bool Powered)
{
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 6442;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 6443;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 6444;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 6445;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 6446;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 6447;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 6448;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 6449;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 6450;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 6451;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 6452;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 6453;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 6454;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 6455;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 6456;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 6457;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 6458;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 6459;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 6460;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 6461;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 6462;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 6463;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 6464;
return 6465;
}
short AcaciaButton();
enum Face Face(short ID);
eBlockFace Facing(short ID);
bool Powered(short ID);
}
namespace AcaciaDoor
{
enum class Half
{
Upper,
Lower
};
enum class Hinge
{
Left,
Right
};
constexpr short AcaciaDoor(eBlockFace Facing, enum Half Half, enum Hinge Hinge, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 8930;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 8931;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 8932;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 8933;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 8934;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 8935;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 8936;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 8937;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 8938;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 8939;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 8940;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 8941;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 8942;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 8943;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 8944;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 8945;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 8946;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 8947;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 8948;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 8949;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 8950;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 8951;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 8952;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 8953;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 8954;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 8955;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 8956;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 8957;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 8958;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 8959;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 8960;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 8961;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 8962;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 8963;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 8964;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 8965;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 8966;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 8967;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 8968;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 8969;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 8970;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 8971;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 8972;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 8973;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 8974;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 8975;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 8976;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 8977;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 8978;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 8979;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 8980;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 8981;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 8982;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 8983;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 8984;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 8985;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 8986;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 8987;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 8988;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 8989;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 8990;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 8991;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 8992;
return 8993;
}
short AcaciaDoor();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Hinge Hinge(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace AcaciaFence
{
constexpr short AcaciaFence(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 8676;
if (East && North && South && !West) return 8677;
if (East && North && !South && West) return 8680;
if (East && North && !South && !West) return 8681;
if (East && !North && South && West) return 8684;
if (East && !North && South && !West) return 8685;
if (East && !North && !South && West) return 8688;
if (East && !North && !South && !West) return 8689;
if (!East && North && South && West) return 8692;
if (!East && North && South && !West) return 8693;
if (!East && North && !South && West) return 8696;
if (!East && North && !South && !West) return 8697;
if (!East && !North && South && West) return 8700;
if (!East && !North && South && !West) return 8701;
if (!East && !North && !South && West) return 8704;
return 8705;
}
short AcaciaFence();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace AcaciaFenceGate
{
constexpr short AcaciaFenceGate(eBlockFace Facing, bool InWall, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && Open && Powered) return 8514;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && Open && !Powered) return 8515;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && !Open && Powered) return 8516;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && !Open && !Powered) return 8517;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && Open && Powered) return 8518;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && Open && !Powered) return 8519;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && !Open && Powered) return 8520;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && !Open && !Powered) return 8521;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && Open && Powered) return 8522;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && Open && !Powered) return 8523;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && !Open && Powered) return 8524;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && !Open && !Powered) return 8525;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && Open && Powered) return 8526;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && Open && !Powered) return 8527;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && !Open && Powered) return 8528;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && !Open && !Powered) return 8529;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && Open && Powered) return 8530;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && Open && !Powered) return 8531;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && !Open && Powered) return 8532;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && !Open && !Powered) return 8533;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && Open && Powered) return 8534;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && Open && !Powered) return 8535;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && !Open && Powered) return 8536;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && !Open && !Powered) return 8537;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && Open && Powered) return 8538;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && Open && !Powered) return 8539;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && !Open && Powered) return 8540;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && !Open && !Powered) return 8541;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && Open && Powered) return 8542;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && Open && !Powered) return 8543;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && !Open && Powered) return 8544;
return 8545;
}
short AcaciaFenceGate();
eBlockFace Facing(short ID);
bool InWall(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace AcaciaLeaves
{
constexpr short AcaciaLeaves(unsigned char Distance, bool Persistent)
{
if (Distance == 1 && Persistent) return 201;
if (Distance == 1 && !Persistent) return 202;
if (Distance == 2 && Persistent) return 203;
if (Distance == 2 && !Persistent) return 204;
if (Distance == 3 && Persistent) return 205;
if (Distance == 3 && !Persistent) return 206;
if (Distance == 4 && Persistent) return 207;
if (Distance == 4 && !Persistent) return 208;
if (Distance == 5 && Persistent) return 209;
if (Distance == 5 && !Persistent) return 210;
if (Distance == 6 && Persistent) return 211;
if (Distance == 6 && !Persistent) return 212;
if (Distance == 7 && Persistent) return 213;
return 214;
}
short AcaciaLeaves();
unsigned char Distance(short ID);
bool Persistent(short ID);
}
namespace AcaciaLog
{
enum class Axis
{
X,
Y,
Z
};
constexpr short AcaciaLog(enum Axis Axis)
{
if (Axis == Axis::X) return 85;
if (Axis == Axis::Y) return 86;
return 87;
}
short AcaciaLog();
enum Axis Axis(short ID);
}
namespace AcaciaPlanks
{
constexpr short AcaciaPlanks()
{
return 19;
}
}
namespace AcaciaPressurePlate
{
constexpr short AcaciaPressurePlate(bool Powered)
{
if (Powered) return 3881;
return 3882;
}
short AcaciaPressurePlate();
bool Powered(short ID);
}
namespace AcaciaSapling
{
constexpr short AcaciaSapling(unsigned char Stage)
{
if (Stage == 0) return 29;
return 30;
}
short AcaciaSapling();
unsigned char Stage(short ID);
}
namespace AcaciaSign
{
constexpr short AcaciaSign(unsigned char Rotation)
{
if (Rotation == 0) return 3478;
if (Rotation == 1) return 3480;
if (Rotation == 2) return 3482;
if (Rotation == 3) return 3484;
if (Rotation == 4) return 3486;
if (Rotation == 5) return 3488;
if (Rotation == 6) return 3490;
if (Rotation == 7) return 3492;
if (Rotation == 8) return 3494;
if (Rotation == 9) return 3496;
if (Rotation == 10) return 3498;
if (Rotation == 11) return 3500;
if (Rotation == 12) return 3502;
if (Rotation == 13) return 3504;
if (Rotation == 14) return 3506;
return 3508;
}
short AcaciaSign();
unsigned char Rotation(short ID);
}
namespace AcaciaSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short AcaciaSlab(enum Type Type)
{
if (Type == Type::Top) return 8325;
if (Type == Type::Bottom) return 8327;
return 8329;
}
short AcaciaSlab();
enum Type Type(short ID);
}
namespace AcaciaStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short AcaciaStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 7376;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 7378;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 7380;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 7382;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 7384;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 7386;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7388;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 7390;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7392;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 7394;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 7396;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 7398;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 7400;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 7402;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 7404;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 7406;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7408;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 7410;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7412;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 7414;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 7416;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 7418;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 7420;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 7422;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 7424;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 7426;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7428;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 7430;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7432;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 7434;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 7436;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 7438;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 7440;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 7442;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 7444;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 7446;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7448;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 7450;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7452;
return 7454;
}
short AcaciaStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace AcaciaTrapdoor
{
enum class Half
{
Top,
Bottom
};
constexpr short AcaciaTrapdoor(eBlockFace Facing, enum Half Half, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Open && Powered) return 4368;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Open && !Powered) return 4370;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && !Open && Powered) return 4372;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && !Open && !Powered) return 4374;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Open && Powered) return 4376;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Open && !Powered) return 4378;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && !Open && Powered) return 4380;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && !Open && !Powered) return 4382;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Open && Powered) return 4384;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Open && !Powered) return 4386;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && !Open && Powered) return 4388;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && !Open && !Powered) return 4390;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Open && Powered) return 4392;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Open && !Powered) return 4394;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && !Open && Powered) return 4396;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && !Open && !Powered) return 4398;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Open && Powered) return 4400;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Open && !Powered) return 4402;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && !Open && Powered) return 4404;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && !Open && !Powered) return 4406;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Open && Powered) return 4408;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Open && !Powered) return 4410;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && !Open && Powered) return 4412;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && !Open && !Powered) return 4414;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Open && Powered) return 4416;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Open && !Powered) return 4418;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && !Open && Powered) return 4420;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && !Open && !Powered) return 4422;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Open && Powered) return 4424;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Open && !Powered) return 4426;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && !Open && Powered) return 4428;
return 4430;
}
short AcaciaTrapdoor();
eBlockFace Facing(short ID);
enum Half Half(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace AcaciaWallSign
{
constexpr short AcaciaWallSign(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 3760;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 3762;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 3764;
return 3766;
}
short AcaciaWallSign();
eBlockFace Facing(short ID);
}
namespace AcaciaWood
{
enum class Axis
{
X,
Y,
Z
};
constexpr short AcaciaWood(enum Axis Axis)
{
if (Axis == Axis::X) return 121;
if (Axis == Axis::Y) return 122;
return 123;
}
short AcaciaWood();
enum Axis Axis(short ID);
}
namespace ActivatorRail
{
enum class Shape
{
NorthSouth,
EastWest,
AscendingEast,
AscendingWest,
AscendingNorth,
AscendingSouth
};
constexpr short ActivatorRail(bool Powered, enum Shape Shape)
{
if (Powered && Shape == Shape::NorthSouth) return 6823;
if (Powered && Shape == Shape::EastWest) return 6824;
if (Powered && Shape == Shape::AscendingEast) return 6825;
if (Powered && Shape == Shape::AscendingWest) return 6826;
if (Powered && Shape == Shape::AscendingNorth) return 6827;
if (Powered && Shape == Shape::AscendingSouth) return 6828;
if (!Powered && Shape == Shape::NorthSouth) return 6829;
if (!Powered && Shape == Shape::EastWest) return 6830;
if (!Powered && Shape == Shape::AscendingEast) return 6831;
if (!Powered && Shape == Shape::AscendingWest) return 6832;
if (!Powered && Shape == Shape::AscendingNorth) return 6833;
return 6834;
}
short ActivatorRail();
bool Powered(short ID);
enum Shape Shape(short ID);
}
namespace Air
{
constexpr short Air()
{
return -0;
}
}
namespace Allium
{
constexpr short Allium()
{
return 1415;
}
}
namespace AncientDebris
{
constexpr short AncientDebris()
{
return 15827;
}
}
namespace Andesite
{
constexpr short Andesite()
{
return 6;
}
}
namespace AndesiteSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short AndesiteSlab(enum Type Type)
{
if (Type == Type::Top) return 10844;
if (Type == Type::Bottom) return 10846;
return 10848;
}
short AndesiteSlab();
enum Type Type(short ID);
}
namespace AndesiteStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short AndesiteStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 10470;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 10472;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 10474;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 10476;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 10478;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 10480;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10482;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10484;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10486;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10488;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 10490;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 10492;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 10494;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 10496;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 10498;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 10500;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10502;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10504;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10506;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 10508;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 10510;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 10512;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 10514;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 10516;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 10518;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 10520;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10522;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10524;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10526;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10528;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 10530;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 10532;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 10534;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 10536;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 10538;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 10540;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10542;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10544;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10546;
return 10548;
}
short AndesiteStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace AndesiteWall
{
enum class East
{
None,
Low,
Tall
};
enum class North
{
None,
Low,
Tall
};
enum class South
{
None,
Low,
Tall
};
enum class West
{
None,
Low,
Tall
};
constexpr short AndesiteWall(enum East East, enum North North, enum South South, bool Up, enum West West)
{
if (East == East::None && North == North::None && South == South::None && Up && West == West::None) return 13138;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Low) return 13139;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Tall) return 13140;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::None) return 13144;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Low) return 13145;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Tall) return 13146;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::None) return 13150;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Low) return 13151;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Tall) return 13152;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::None) return 13156;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Low) return 13157;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Tall) return 13158;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::None) return 13162;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Low) return 13163;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Tall) return 13164;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::None) return 13168;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Low) return 13169;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Tall) return 13170;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::None) return 13174;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Low) return 13175;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Tall) return 13176;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::None) return 13180;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Low) return 13181;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Tall) return 13182;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::None) return 13186;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Low) return 13187;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Tall) return 13188;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::None) return 13192;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Low) return 13193;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Tall) return 13194;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::None) return 13198;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Low) return 13199;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Tall) return 13200;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::None) return 13204;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Low) return 13205;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 13206;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::None) return 13210;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Low) return 13211;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Tall) return 13212;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::None) return 13216;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Low) return 13217;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Tall) return 13218;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::None) return 13222;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Low) return 13223;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Tall) return 13224;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::None) return 13228;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Low) return 13229;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 13230;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::None) return 13234;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Low) return 13235;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 13236;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::None) return 13240;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 13241;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 13242;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::None) return 13246;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Low) return 13247;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Tall) return 13248;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::None) return 13252;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Low) return 13253;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Tall) return 13254;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::None) return 13258;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Low) return 13259;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Tall) return 13260;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::None) return 13264;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Low) return 13265;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Tall) return 13266;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::None) return 13270;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Low) return 13271;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Tall) return 13272;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::None) return 13276;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Low) return 13277;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Tall) return 13278;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::None) return 13282;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Low) return 13283;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Tall) return 13284;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::None) return 13288;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Low) return 13289;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Tall) return 13290;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::None) return 13294;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Low) return 13295;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Tall) return 13296;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::None) return 13300;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Low) return 13301;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Tall) return 13302;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::None) return 13306;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Low) return 13307;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Tall) return 13308;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::None) return 13312;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Low) return 13313;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 13314;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::None) return 13318;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Low) return 13319;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Tall) return 13320;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::None) return 13324;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Low) return 13325;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Tall) return 13326;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::None) return 13330;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Low) return 13331;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Tall) return 13332;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::None) return 13336;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Low) return 13337;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 13338;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::None) return 13342;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Low) return 13343;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 13344;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::None) return 13348;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 13349;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 13350;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::None) return 13354;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Low) return 13355;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Tall) return 13356;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::None) return 13360;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Low) return 13361;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Tall) return 13362;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::None) return 13366;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Low) return 13367;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Tall) return 13368;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::None) return 13372;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Low) return 13373;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Tall) return 13374;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::None) return 13378;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Low) return 13379;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Tall) return 13380;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::None) return 13384;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Low) return 13385;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Tall) return 13386;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::None) return 13390;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Low) return 13391;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Tall) return 13392;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::None) return 13396;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Low) return 13397;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Tall) return 13398;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::None) return 13402;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Low) return 13403;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Tall) return 13404;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::None) return 13408;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Low) return 13409;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Tall) return 13410;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::None) return 13414;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Low) return 13415;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Tall) return 13416;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::None) return 13420;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Low) return 13421;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 13422;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::None) return 13426;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Low) return 13427;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Tall) return 13428;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::None) return 13432;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Low) return 13433;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Tall) return 13434;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::None) return 13438;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Low) return 13439;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Tall) return 13440;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::None) return 13444;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Low) return 13445;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 13446;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::None) return 13450;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Low) return 13451;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 13452;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::None) return 13456;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 13457;
return 13458;
}
short AndesiteWall();
enum East East(short ID);
enum North North(short ID);
enum South South(short ID);
bool Up(short ID);
enum West West(short ID);
}
namespace Anvil
{
constexpr short Anvil(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6610;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6611;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 6612;
return 6613;
}
short Anvil();
eBlockFace Facing(short ID);
}
namespace AttachedMelonStem
{
constexpr short AttachedMelonStem(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 4768;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 4769;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 4770;
return 4771;
}
short AttachedMelonStem();
eBlockFace Facing(short ID);
}
namespace AttachedPumpkinStem
{
constexpr short AttachedPumpkinStem(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 4764;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 4765;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 4766;
return 4767;
}
short AttachedPumpkinStem();
eBlockFace Facing(short ID);
}
namespace AzureBluet
{
constexpr short AzureBluet()
{
return 1416;
}
}
namespace Bamboo
{
enum class Leaves
{
None,
Small,
Large
};
constexpr short Bamboo(unsigned char Age, enum Leaves Leaves, unsigned char Stage)
{
if (Age == 0 && Leaves == Leaves::None && Stage == 0) return 9652;
if (Age == 0 && Leaves == Leaves::None && Stage == 1) return 9653;
if (Age == 0 && Leaves == Leaves::Small && Stage == 0) return 9654;
if (Age == 0 && Leaves == Leaves::Small && Stage == 1) return 9655;
if (Age == 0 && Leaves == Leaves::Large && Stage == 0) return 9656;
if (Age == 0 && Leaves == Leaves::Large && Stage == 1) return 9657;
if (Age == 1 && Leaves == Leaves::None && Stage == 0) return 9658;
if (Age == 1 && Leaves == Leaves::None && Stage == 1) return 9659;
if (Age == 1 && Leaves == Leaves::Small && Stage == 0) return 9660;
if (Age == 1 && Leaves == Leaves::Small && Stage == 1) return 9661;
if (Age == 1 && Leaves == Leaves::Large && Stage == 0) return 9662;
return 9663;
}
short Bamboo();
unsigned char Age(short ID);
enum Leaves Leaves(short ID);
unsigned char Stage(short ID);
}
namespace BambooSapling
{
constexpr short BambooSapling()
{
return 9651;
}
}
namespace Barrel
{
constexpr short Barrel(eBlockFace Facing, bool Open)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Open) return 14791;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Open) return 14792;
if (Facing == eBlockFace::BLOCK_FACE_XP && Open) return 14793;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Open) return 14794;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Open) return 14795;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Open) return 14796;
if (Facing == eBlockFace::BLOCK_FACE_XM && Open) return 14797;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Open) return 14798;
if (Facing == eBlockFace::BLOCK_FACE_YP && Open) return 14799;
if (Facing == eBlockFace::BLOCK_FACE_YP && !Open) return 14800;
if (Facing == eBlockFace::BLOCK_FACE_YM && Open) return 14801;
return 14802;
}
short Barrel();
eBlockFace Facing(short ID);
bool Open(short ID);
}
namespace Barrier
{
constexpr short Barrier()
{
return 7536;
}
}
namespace Basalt
{
enum class Axis
{
X,
Y,
Z
};
constexpr short Basalt(enum Axis Axis)
{
if (Axis == Axis::X) return 4002;
if (Axis == Axis::Y) return 4003;
return 4004;
}
short Basalt();
enum Axis Axis(short ID);
}
namespace Beacon
{
constexpr short Beacon()
{
return 5656;
}
}
namespace Bedrock
{
constexpr short Bedrock()
{
return 33;
}
}
namespace BeeNest
{
constexpr short BeeNest(eBlockFace Facing, unsigned char HoneyLevel)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && HoneyLevel == 0) return 15776;
if (Facing == eBlockFace::BLOCK_FACE_ZM && HoneyLevel == 1) return 15777;
if (Facing == eBlockFace::BLOCK_FACE_ZM && HoneyLevel == 2) return 15778;
if (Facing == eBlockFace::BLOCK_FACE_ZM && HoneyLevel == 3) return 15779;
if (Facing == eBlockFace::BLOCK_FACE_ZM && HoneyLevel == 4) return 15780;
if (Facing == eBlockFace::BLOCK_FACE_ZM && HoneyLevel == 5) return 15781;
if (Facing == eBlockFace::BLOCK_FACE_ZP && HoneyLevel == 0) return 15782;
if (Facing == eBlockFace::BLOCK_FACE_ZP && HoneyLevel == 1) return 15783;
if (Facing == eBlockFace::BLOCK_FACE_ZP && HoneyLevel == 2) return 15784;
if (Facing == eBlockFace::BLOCK_FACE_ZP && HoneyLevel == 3) return 15785;
if (Facing == eBlockFace::BLOCK_FACE_ZP && HoneyLevel == 4) return 15786;
if (Facing == eBlockFace::BLOCK_FACE_ZP && HoneyLevel == 5) return 15787;
if (Facing == eBlockFace::BLOCK_FACE_XM && HoneyLevel == 0) return 15788;
if (Facing == eBlockFace::BLOCK_FACE_XM && HoneyLevel == 1) return 15789;
if (Facing == eBlockFace::BLOCK_FACE_XM && HoneyLevel == 2) return 15790;
if (Facing == eBlockFace::BLOCK_FACE_XM && HoneyLevel == 3) return 15791;
if (Facing == eBlockFace::BLOCK_FACE_XM && HoneyLevel == 4) return 15792;
if (Facing == eBlockFace::BLOCK_FACE_XM && HoneyLevel == 5) return 15793;
if (Facing == eBlockFace::BLOCK_FACE_XP && HoneyLevel == 0) return 15794;
if (Facing == eBlockFace::BLOCK_FACE_XP && HoneyLevel == 1) return 15795;
if (Facing == eBlockFace::BLOCK_FACE_XP && HoneyLevel == 2) return 15796;
if (Facing == eBlockFace::BLOCK_FACE_XP && HoneyLevel == 3) return 15797;
if (Facing == eBlockFace::BLOCK_FACE_XP && HoneyLevel == 4) return 15798;
return 15799;
}
short BeeNest();
eBlockFace Facing(short ID);
unsigned char HoneyLevel(short ID);
}
namespace Beehive
{
constexpr short Beehive(eBlockFace Facing, unsigned char HoneyLevel)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && HoneyLevel == 0) return 15800;
if (Facing == eBlockFace::BLOCK_FACE_ZM && HoneyLevel == 1) return 15801;
if (Facing == eBlockFace::BLOCK_FACE_ZM && HoneyLevel == 2) return 15802;
if (Facing == eBlockFace::BLOCK_FACE_ZM && HoneyLevel == 3) return 15803;
if (Facing == eBlockFace::BLOCK_FACE_ZM && HoneyLevel == 4) return 15804;
if (Facing == eBlockFace::BLOCK_FACE_ZM && HoneyLevel == 5) return 15805;
if (Facing == eBlockFace::BLOCK_FACE_ZP && HoneyLevel == 0) return 15806;
if (Facing == eBlockFace::BLOCK_FACE_ZP && HoneyLevel == 1) return 15807;
if (Facing == eBlockFace::BLOCK_FACE_ZP && HoneyLevel == 2) return 15808;
if (Facing == eBlockFace::BLOCK_FACE_ZP && HoneyLevel == 3) return 15809;
if (Facing == eBlockFace::BLOCK_FACE_ZP && HoneyLevel == 4) return 15810;
if (Facing == eBlockFace::BLOCK_FACE_ZP && HoneyLevel == 5) return 15811;
if (Facing == eBlockFace::BLOCK_FACE_XM && HoneyLevel == 0) return 15812;
if (Facing == eBlockFace::BLOCK_FACE_XM && HoneyLevel == 1) return 15813;
if (Facing == eBlockFace::BLOCK_FACE_XM && HoneyLevel == 2) return 15814;
if (Facing == eBlockFace::BLOCK_FACE_XM && HoneyLevel == 3) return 15815;
if (Facing == eBlockFace::BLOCK_FACE_XM && HoneyLevel == 4) return 15816;
if (Facing == eBlockFace::BLOCK_FACE_XM && HoneyLevel == 5) return 15817;
if (Facing == eBlockFace::BLOCK_FACE_XP && HoneyLevel == 0) return 15818;
if (Facing == eBlockFace::BLOCK_FACE_XP && HoneyLevel == 1) return 15819;
if (Facing == eBlockFace::BLOCK_FACE_XP && HoneyLevel == 2) return 15820;
if (Facing == eBlockFace::BLOCK_FACE_XP && HoneyLevel == 3) return 15821;
if (Facing == eBlockFace::BLOCK_FACE_XP && HoneyLevel == 4) return 15822;
return 15823;
}
short Beehive();
eBlockFace Facing(short ID);
unsigned char HoneyLevel(short ID);
}
namespace Beetroots
{
constexpr short Beetroots(unsigned char Age)
{
if (Age == 0) return 9219;
if (Age == 1) return 9220;
if (Age == 2) return 9221;
return 9222;
}
short Beetroots();
unsigned char Age(short ID);
}
namespace Bell
{
enum class Attachment
{
Floor,
Ceiling,
SingleWall,
DoubleWall
};
constexpr short Bell(enum Attachment Attachment, eBlockFace Facing, bool Powered)
{
if (Attachment == Attachment::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 14854;
if (Attachment == Attachment::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 14855;
if (Attachment == Attachment::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 14856;
if (Attachment == Attachment::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 14857;
if (Attachment == Attachment::Floor && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 14858;
if (Attachment == Attachment::Floor && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 14859;
if (Attachment == Attachment::Floor && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 14860;
if (Attachment == Attachment::Floor && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 14861;
if (Attachment == Attachment::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 14862;
if (Attachment == Attachment::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 14863;
if (Attachment == Attachment::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 14864;
if (Attachment == Attachment::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 14865;
if (Attachment == Attachment::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 14866;
if (Attachment == Attachment::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 14867;
if (Attachment == Attachment::Ceiling && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 14868;
if (Attachment == Attachment::Ceiling && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 14869;
if (Attachment == Attachment::SingleWall && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 14870;
if (Attachment == Attachment::SingleWall && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 14871;
if (Attachment == Attachment::SingleWall && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 14872;
if (Attachment == Attachment::SingleWall && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 14873;
if (Attachment == Attachment::SingleWall && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 14874;
if (Attachment == Attachment::SingleWall && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 14875;
if (Attachment == Attachment::SingleWall && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 14876;
if (Attachment == Attachment::SingleWall && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 14877;
if (Attachment == Attachment::DoubleWall && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 14878;
if (Attachment == Attachment::DoubleWall && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 14879;
if (Attachment == Attachment::DoubleWall && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 14880;
if (Attachment == Attachment::DoubleWall && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 14881;
if (Attachment == Attachment::DoubleWall && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 14882;
if (Attachment == Attachment::DoubleWall && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 14883;
if (Attachment == Attachment::DoubleWall && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 14884;
return 14885;
}
short Bell();
enum Attachment Attachment(short ID);
eBlockFace Facing(short ID);
bool Powered(short ID);
}
namespace BirchButton
{
enum class Face
{
Floor,
Wall,
Ceiling
};
constexpr short BirchButton(enum Face Face, eBlockFace Facing, bool Powered)
{
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 6394;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 6395;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 6396;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 6397;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 6398;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 6399;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 6400;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 6401;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 6402;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 6403;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 6404;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 6405;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 6406;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 6407;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 6408;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 6409;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 6410;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 6411;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 6412;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 6413;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 6414;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 6415;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 6416;
return 6417;
}
short BirchButton();
enum Face Face(short ID);
eBlockFace Facing(short ID);
bool Powered(short ID);
}
namespace BirchDoor
{
enum class Half
{
Upper,
Lower
};
enum class Hinge
{
Left,
Right
};
constexpr short BirchDoor(eBlockFace Facing, enum Half Half, enum Hinge Hinge, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 8802;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 8803;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 8804;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 8805;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 8806;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 8807;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 8808;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 8809;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 8810;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 8811;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 8812;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 8813;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 8814;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 8815;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 8816;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 8817;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 8818;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 8819;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 8820;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 8821;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 8822;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 8823;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 8824;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 8825;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 8826;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 8827;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 8828;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 8829;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 8830;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 8831;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 8832;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 8833;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 8834;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 8835;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 8836;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 8837;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 8838;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 8839;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 8840;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 8841;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 8842;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 8843;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 8844;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 8845;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 8846;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 8847;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 8848;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 8849;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 8850;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 8851;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 8852;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 8853;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 8854;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 8855;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 8856;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 8857;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 8858;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 8859;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 8860;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 8861;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 8862;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 8863;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 8864;
return 8865;
}
short BirchDoor();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Hinge Hinge(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace BirchFence
{
constexpr short BirchFence(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 8612;
if (East && North && South && !West) return 8613;
if (East && North && !South && West) return 8616;
if (East && North && !South && !West) return 8617;
if (East && !North && South && West) return 8620;
if (East && !North && South && !West) return 8621;
if (East && !North && !South && West) return 8624;
if (East && !North && !South && !West) return 8625;
if (!East && North && South && West) return 8628;
if (!East && North && South && !West) return 8629;
if (!East && North && !South && West) return 8632;
if (!East && North && !South && !West) return 8633;
if (!East && !North && South && West) return 8636;
if (!East && !North && South && !West) return 8637;
if (!East && !North && !South && West) return 8640;
return 8641;
}
short BirchFence();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace BirchFenceGate
{
constexpr short BirchFenceGate(eBlockFace Facing, bool InWall, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && Open && Powered) return 8450;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && Open && !Powered) return 8451;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && !Open && Powered) return 8452;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && !Open && !Powered) return 8453;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && Open && Powered) return 8454;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && Open && !Powered) return 8455;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && !Open && Powered) return 8456;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && !Open && !Powered) return 8457;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && Open && Powered) return 8458;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && Open && !Powered) return 8459;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && !Open && Powered) return 8460;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && !Open && !Powered) return 8461;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && Open && Powered) return 8462;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && Open && !Powered) return 8463;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && !Open && Powered) return 8464;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && !Open && !Powered) return 8465;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && Open && Powered) return 8466;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && Open && !Powered) return 8467;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && !Open && Powered) return 8468;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && !Open && !Powered) return 8469;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && Open && Powered) return 8470;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && Open && !Powered) return 8471;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && !Open && Powered) return 8472;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && !Open && !Powered) return 8473;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && Open && Powered) return 8474;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && Open && !Powered) return 8475;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && !Open && Powered) return 8476;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && !Open && !Powered) return 8477;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && Open && Powered) return 8478;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && Open && !Powered) return 8479;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && !Open && Powered) return 8480;
return 8481;
}
short BirchFenceGate();
eBlockFace Facing(short ID);
bool InWall(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace BirchLeaves
{
constexpr short BirchLeaves(unsigned char Distance, bool Persistent)
{
if (Distance == 1 && Persistent) return 173;
if (Distance == 1 && !Persistent) return 174;
if (Distance == 2 && Persistent) return 175;
if (Distance == 2 && !Persistent) return 176;
if (Distance == 3 && Persistent) return 177;
if (Distance == 3 && !Persistent) return 178;
if (Distance == 4 && Persistent) return 179;
if (Distance == 4 && !Persistent) return 180;
if (Distance == 5 && Persistent) return 181;
if (Distance == 5 && !Persistent) return 182;
if (Distance == 6 && Persistent) return 183;
if (Distance == 6 && !Persistent) return 184;
if (Distance == 7 && Persistent) return 185;
return 186;
}
short BirchLeaves();
unsigned char Distance(short ID);
bool Persistent(short ID);
}
namespace BirchLog
{
enum class Axis
{
X,
Y,
Z
};
constexpr short BirchLog(enum Axis Axis)
{
if (Axis == Axis::X) return 79;
if (Axis == Axis::Y) return 80;
return 81;
}
short BirchLog();
enum Axis Axis(short ID);
}
namespace BirchPlanks
{
constexpr short BirchPlanks()
{
return 17;
}
}
namespace BirchPressurePlate
{
constexpr short BirchPressurePlate(bool Powered)
{
if (Powered) return 3877;
return 3878;
}
short BirchPressurePlate();
bool Powered(short ID);
}
namespace BirchSapling
{
constexpr short BirchSapling(unsigned char Stage)
{
if (Stage == 0) return 25;
return 26;
}
short BirchSapling();
unsigned char Stage(short ID);
}
namespace BirchSign
{
constexpr short BirchSign(unsigned char Rotation)
{
if (Rotation == 0) return 3446;
if (Rotation == 1) return 3448;
if (Rotation == 2) return 3450;
if (Rotation == 3) return 3452;
if (Rotation == 4) return 3454;
if (Rotation == 5) return 3456;
if (Rotation == 6) return 3458;
if (Rotation == 7) return 3460;
if (Rotation == 8) return 3462;
if (Rotation == 9) return 3464;
if (Rotation == 10) return 3466;
if (Rotation == 11) return 3468;
if (Rotation == 12) return 3470;
if (Rotation == 13) return 3472;
if (Rotation == 14) return 3474;
return 3476;
}
short BirchSign();
unsigned char Rotation(short ID);
}
namespace BirchSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short BirchSlab(enum Type Type)
{
if (Type == Type::Top) return 8313;
if (Type == Type::Bottom) return 8315;
return 8317;
}
short BirchSlab();
enum Type Type(short ID);
}
namespace BirchStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short BirchStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 5485;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 5487;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 5489;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 5491;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 5493;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 5495;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5497;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 5499;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5501;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 5503;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 5505;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 5507;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 5509;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 5511;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 5513;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 5515;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5517;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 5519;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5521;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 5523;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 5525;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 5527;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 5529;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 5531;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 5533;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 5535;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5537;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 5539;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5541;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 5543;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 5545;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 5547;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 5549;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 5551;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 5553;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 5555;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5557;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 5559;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5561;
return 5563;
}
short BirchStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace BirchTrapdoor
{
enum class Half
{
Top,
Bottom
};
constexpr short BirchTrapdoor(eBlockFace Facing, enum Half Half, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Open && Powered) return 4240;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Open && !Powered) return 4242;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && !Open && Powered) return 4244;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && !Open && !Powered) return 4246;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Open && Powered) return 4248;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Open && !Powered) return 4250;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && !Open && Powered) return 4252;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && !Open && !Powered) return 4254;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Open && Powered) return 4256;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Open && !Powered) return 4258;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && !Open && Powered) return 4260;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && !Open && !Powered) return 4262;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Open && Powered) return 4264;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Open && !Powered) return 4266;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && !Open && Powered) return 4268;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && !Open && !Powered) return 4270;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Open && Powered) return 4272;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Open && !Powered) return 4274;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && !Open && Powered) return 4276;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && !Open && !Powered) return 4278;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Open && Powered) return 4280;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Open && !Powered) return 4282;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && !Open && Powered) return 4284;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && !Open && !Powered) return 4286;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Open && Powered) return 4288;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Open && !Powered) return 4290;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && !Open && Powered) return 4292;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && !Open && !Powered) return 4294;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Open && Powered) return 4296;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Open && !Powered) return 4298;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && !Open && Powered) return 4300;
return 4302;
}
short BirchTrapdoor();
eBlockFace Facing(short ID);
enum Half Half(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace BirchWallSign
{
constexpr short BirchWallSign(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 3752;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 3754;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 3756;
return 3758;
}
short BirchWallSign();
eBlockFace Facing(short ID);
}
namespace BirchWood
{
enum class Axis
{
X,
Y,
Z
};
constexpr short BirchWood(enum Axis Axis)
{
if (Axis == Axis::X) return 115;
if (Axis == Axis::Y) return 116;
return 117;
}
short BirchWood();
enum Axis Axis(short ID);
}
namespace BlackBanner
{
constexpr short BlackBanner(unsigned char Rotation)
{
if (Rotation == 0) return 8137;
if (Rotation == 1) return 8138;
if (Rotation == 2) return 8139;
if (Rotation == 3) return 8140;
if (Rotation == 4) return 8141;
if (Rotation == 5) return 8142;
if (Rotation == 6) return 8143;
if (Rotation == 7) return 8144;
if (Rotation == 8) return 8145;
if (Rotation == 9) return 8146;
if (Rotation == 10) return 8147;
if (Rotation == 11) return 8148;
if (Rotation == 12) return 8149;
if (Rotation == 13) return 8150;
if (Rotation == 14) return 8151;
return 8152;
}
short BlackBanner();
unsigned char Rotation(short ID);
}
namespace BlackBed
{
enum class Part
{
Head,
Foot
};
constexpr short BlackBed(eBlockFace Facing, bool Occupied, enum Part Part)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Head) return 1289;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Foot) return 1290;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Head) return 1291;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Foot) return 1292;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Head) return 1293;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Foot) return 1294;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Head) return 1295;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Foot) return 1296;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Head) return 1297;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Foot) return 1298;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Head) return 1299;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Foot) return 1300;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Head) return 1301;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Foot) return 1302;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Occupied && Part == Part::Head) return 1303;
return 1304;
}
short BlackBed();
eBlockFace Facing(short ID);
bool Occupied(short ID);
enum Part Part(short ID);
}
namespace BlackCarpet
{
constexpr short BlackCarpet()
{
return 7881;
}
}
namespace BlackConcrete
{
constexpr short BlackConcrete()
{
return 9453;
}
}
namespace BlackConcretePowder
{
constexpr short BlackConcretePowder()
{
return 9469;
}
}
namespace BlackGlazedTerracotta
{
constexpr short BlackGlazedTerracotta(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9434;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9435;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9436;
return 9437;
}
short BlackGlazedTerracotta();
eBlockFace Facing(short ID);
}
namespace BlackShulkerBox
{
constexpr short BlackShulkerBox(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9368;
if (Facing == eBlockFace::BLOCK_FACE_XP) return 9369;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9370;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9371;
if (Facing == eBlockFace::BLOCK_FACE_YP) return 9372;
return 9373;
}
short BlackShulkerBox();
eBlockFace Facing(short ID);
}
namespace BlackStainedGlass
{
constexpr short BlackStainedGlass()
{
return 4110;
}
}
namespace BlackStainedGlassPane
{
constexpr short BlackStainedGlassPane(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 7345;
if (East && North && South && !West) return 7346;
if (East && North && !South && West) return 7349;
if (East && North && !South && !West) return 7350;
if (East && !North && South && West) return 7353;
if (East && !North && South && !West) return 7354;
if (East && !North && !South && West) return 7357;
if (East && !North && !South && !West) return 7358;
if (!East && North && South && West) return 7361;
if (!East && North && South && !West) return 7362;
if (!East && North && !South && West) return 7365;
if (!East && North && !South && !West) return 7366;
if (!East && !North && South && West) return 7369;
if (!East && !North && South && !West) return 7370;
if (!East && !North && !South && West) return 7373;
return 7374;
}
short BlackStainedGlassPane();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace BlackTerracotta
{
constexpr short BlackTerracotta()
{
return 6862;
}
}
namespace BlackWallBanner
{
constexpr short BlackWallBanner(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8213;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8214;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 8215;
return 8216;
}
short BlackWallBanner();
eBlockFace Facing(short ID);
}
namespace BlackWool
{
constexpr short BlackWool()
{
return 1399;
}
}
namespace Blackstone
{
constexpr short Blackstone()
{
return 15839;
}
}
namespace BlackstoneSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short BlackstoneSlab(enum Type Type)
{
if (Type == Type::Top) return 16245;
if (Type == Type::Bottom) return 16247;
return 16249;
}
short BlackstoneSlab();
enum Type Type(short ID);
}
namespace BlackstoneStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short BlackstoneStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 15841;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 15843;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 15845;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 15847;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 15849;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 15851;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 15853;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 15855;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 15857;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 15859;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 15861;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 15863;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 15865;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 15867;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 15869;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 15871;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 15873;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 15875;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 15877;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 15879;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 15881;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 15883;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 15885;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 15887;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 15889;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 15891;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 15893;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 15895;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 15897;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 15899;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 15901;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 15903;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 15905;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 15907;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 15909;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 15911;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 15913;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 15915;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 15917;
return 15919;
}
short BlackstoneStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace BlackstoneWall
{
enum class East
{
None,
Low,
Tall
};
enum class North
{
None,
Low,
Tall
};
enum class South
{
None,
Low,
Tall
};
enum class West
{
None,
Low,
Tall
};
constexpr short BlackstoneWall(enum East East, enum North North, enum South South, bool Up, enum West West)
{
if (East == East::None && North == North::None && South == South::None && Up && West == West::None) return 15923;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Low) return 15924;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Tall) return 15925;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::None) return 15929;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Low) return 15930;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Tall) return 15931;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::None) return 15935;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Low) return 15936;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Tall) return 15937;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::None) return 15941;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Low) return 15942;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Tall) return 15943;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::None) return 15947;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Low) return 15948;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Tall) return 15949;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::None) return 15953;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Low) return 15954;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Tall) return 15955;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::None) return 15959;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Low) return 15960;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Tall) return 15961;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::None) return 15965;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Low) return 15966;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Tall) return 15967;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::None) return 15971;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Low) return 15972;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Tall) return 15973;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::None) return 15977;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Low) return 15978;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Tall) return 15979;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::None) return 15983;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Low) return 15984;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Tall) return 15985;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::None) return 15989;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Low) return 15990;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 15991;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::None) return 15995;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Low) return 15996;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Tall) return 15997;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::None) return 16001;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Low) return 16002;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Tall) return 16003;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::None) return 16007;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Low) return 16008;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Tall) return 16009;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::None) return 16013;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Low) return 16014;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 16015;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::None) return 16019;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Low) return 16020;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 16021;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::None) return 16025;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 16026;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 16027;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::None) return 16031;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Low) return 16032;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Tall) return 16033;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::None) return 16037;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Low) return 16038;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Tall) return 16039;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::None) return 16043;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Low) return 16044;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Tall) return 16045;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::None) return 16049;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Low) return 16050;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Tall) return 16051;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::None) return 16055;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Low) return 16056;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Tall) return 16057;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::None) return 16061;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Low) return 16062;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Tall) return 16063;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::None) return 16067;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Low) return 16068;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Tall) return 16069;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::None) return 16073;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Low) return 16074;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Tall) return 16075;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::None) return 16079;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Low) return 16080;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Tall) return 16081;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::None) return 16085;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Low) return 16086;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Tall) return 16087;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::None) return 16091;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Low) return 16092;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Tall) return 16093;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::None) return 16097;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Low) return 16098;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 16099;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::None) return 16103;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Low) return 16104;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Tall) return 16105;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::None) return 16109;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Low) return 16110;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Tall) return 16111;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::None) return 16115;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Low) return 16116;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Tall) return 16117;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::None) return 16121;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Low) return 16122;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 16123;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::None) return 16127;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Low) return 16128;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 16129;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::None) return 16133;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 16134;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 16135;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::None) return 16139;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Low) return 16140;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Tall) return 16141;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::None) return 16145;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Low) return 16146;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Tall) return 16147;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::None) return 16151;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Low) return 16152;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Tall) return 16153;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::None) return 16157;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Low) return 16158;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Tall) return 16159;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::None) return 16163;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Low) return 16164;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Tall) return 16165;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::None) return 16169;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Low) return 16170;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Tall) return 16171;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::None) return 16175;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Low) return 16176;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Tall) return 16177;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::None) return 16181;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Low) return 16182;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Tall) return 16183;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::None) return 16187;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Low) return 16188;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Tall) return 16189;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::None) return 16193;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Low) return 16194;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Tall) return 16195;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::None) return 16199;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Low) return 16200;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Tall) return 16201;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::None) return 16205;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Low) return 16206;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 16207;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::None) return 16211;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Low) return 16212;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Tall) return 16213;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::None) return 16217;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Low) return 16218;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Tall) return 16219;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::None) return 16223;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Low) return 16224;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Tall) return 16225;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::None) return 16229;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Low) return 16230;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 16231;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::None) return 16235;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Low) return 16236;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 16237;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::None) return 16241;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 16242;
return 16243;
}
short BlackstoneWall();
enum East East(short ID);
enum North North(short ID);
enum South South(short ID);
bool Up(short ID);
enum West West(short ID);
}
namespace BlastFurnace
{
constexpr short BlastFurnace(eBlockFace Facing, bool Lit)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Lit) return 14811;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Lit) return 14812;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Lit) return 14813;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Lit) return 14814;
if (Facing == eBlockFace::BLOCK_FACE_XM && Lit) return 14815;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Lit) return 14816;
if (Facing == eBlockFace::BLOCK_FACE_XP && Lit) return 14817;
return 14818;
}
short BlastFurnace();
eBlockFace Facing(short ID);
bool Lit(short ID);
}
namespace BlueBanner
{
constexpr short BlueBanner(unsigned char Rotation)
{
if (Rotation == 0) return 8073;
if (Rotation == 1) return 8074;
if (Rotation == 2) return 8075;
if (Rotation == 3) return 8076;
if (Rotation == 4) return 8077;
if (Rotation == 5) return 8078;
if (Rotation == 6) return 8079;
if (Rotation == 7) return 8080;
if (Rotation == 8) return 8081;
if (Rotation == 9) return 8082;
if (Rotation == 10) return 8083;
if (Rotation == 11) return 8084;
if (Rotation == 12) return 8085;
if (Rotation == 13) return 8086;
if (Rotation == 14) return 8087;
return 8088;
}
short BlueBanner();
unsigned char Rotation(short ID);
}
namespace BlueBed
{
enum class Part
{
Head,
Foot
};
constexpr short BlueBed(eBlockFace Facing, bool Occupied, enum Part Part)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Head) return 1225;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Foot) return 1226;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Head) return 1227;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Foot) return 1228;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Head) return 1229;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Foot) return 1230;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Head) return 1231;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Foot) return 1232;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Head) return 1233;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Foot) return 1234;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Head) return 1235;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Foot) return 1236;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Head) return 1237;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Foot) return 1238;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Occupied && Part == Part::Head) return 1239;
return 1240;
}
short BlueBed();
eBlockFace Facing(short ID);
bool Occupied(short ID);
enum Part Part(short ID);
}
namespace BlueCarpet
{
constexpr short BlueCarpet()
{
return 7877;
}
}
namespace BlueConcrete
{
constexpr short BlueConcrete()
{
return 9449;
}
}
namespace BlueConcretePowder
{
constexpr short BlueConcretePowder()
{
return 9465;
}
}
namespace BlueGlazedTerracotta
{
constexpr short BlueGlazedTerracotta(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9418;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9419;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9420;
return 9421;
}
short BlueGlazedTerracotta();
eBlockFace Facing(short ID);
}
namespace BlueIce
{
constexpr short BlueIce()
{
return 9648;
}
}
namespace BlueOrchid
{
constexpr short BlueOrchid()
{
return 1414;
}
}
namespace BlueShulkerBox
{
constexpr short BlueShulkerBox(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9344;
if (Facing == eBlockFace::BLOCK_FACE_XP) return 9345;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9346;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9347;
if (Facing == eBlockFace::BLOCK_FACE_YP) return 9348;
return 9349;
}
short BlueShulkerBox();
eBlockFace Facing(short ID);
}
namespace BlueStainedGlass
{
constexpr short BlueStainedGlass()
{
return 4106;
}
}
namespace BlueStainedGlassPane
{
constexpr short BlueStainedGlassPane(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 7217;
if (East && North && South && !West) return 7218;
if (East && North && !South && West) return 7221;
if (East && North && !South && !West) return 7222;
if (East && !North && South && West) return 7225;
if (East && !North && South && !West) return 7226;
if (East && !North && !South && West) return 7229;
if (East && !North && !South && !West) return 7230;
if (!East && North && South && West) return 7233;
if (!East && North && South && !West) return 7234;
if (!East && North && !South && West) return 7237;
if (!East && North && !South && !West) return 7238;
if (!East && !North && South && West) return 7241;
if (!East && !North && South && !West) return 7242;
if (!East && !North && !South && West) return 7245;
return 7246;
}
short BlueStainedGlassPane();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace BlueTerracotta
{
constexpr short BlueTerracotta()
{
return 6858;
}
}
namespace BlueWallBanner
{
constexpr short BlueWallBanner(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8197;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8198;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 8199;
return 8200;
}
short BlueWallBanner();
eBlockFace Facing(short ID);
}
namespace BlueWool
{
constexpr short BlueWool()
{
return 1395;
}
}
namespace BoneBlock
{
enum class Axis
{
X,
Y,
Z
};
constexpr short BoneBlock(enum Axis Axis)
{
if (Axis == Axis::X) return 9256;
if (Axis == Axis::Y) return 9257;
return 9258;
}
short BoneBlock();
enum Axis Axis(short ID);
}
namespace Bookshelf
{
constexpr short Bookshelf()
{
return 1432;
}
}
namespace BrainCoral
{
constexpr short BrainCoral()
{
return 9533;
}
}
namespace BrainCoralBlock
{
constexpr short BrainCoralBlock()
{
return 9516;
}
}
namespace BrainCoralFan
{
constexpr short BrainCoralFan()
{
return 9553;
}
}
namespace BrainCoralWallFan
{
constexpr short BrainCoralWallFan(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9609;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9611;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9613;
return 9615;
}
short BrainCoralWallFan();
eBlockFace Facing(short ID);
}
namespace BrewingStand
{
constexpr short BrewingStand(bool HasBottle_0, bool HasBottle_1, bool HasBottle_2)
{
if (HasBottle_0 && HasBottle_1 && HasBottle_2) return 5133;
if (HasBottle_0 && HasBottle_1 && !HasBottle_2) return 5134;
if (HasBottle_0 && !HasBottle_1 && HasBottle_2) return 5135;
if (HasBottle_0 && !HasBottle_1 && !HasBottle_2) return 5136;
if (!HasBottle_0 && HasBottle_1 && HasBottle_2) return 5137;
if (!HasBottle_0 && HasBottle_1 && !HasBottle_2) return 5138;
if (!HasBottle_0 && !HasBottle_1 && HasBottle_2) return 5139;
return 5140;
}
short BrewingStand();
bool HasBottle_0(short ID);
bool HasBottle_1(short ID);
bool HasBottle_2(short ID);
}
namespace BrickSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short BrickSlab(enum Type Type)
{
if (Type == Type::Top) return 8373;
if (Type == Type::Bottom) return 8375;
return 8377;
}
short BrickSlab();
enum Type Type(short ID);
}
namespace BrickStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short BrickStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 4853;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 4855;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 4857;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 4859;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 4861;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 4863;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 4865;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 4867;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 4869;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 4871;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 4873;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 4875;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 4877;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 4879;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 4881;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 4883;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 4885;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 4887;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 4889;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 4891;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 4893;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 4895;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 4897;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 4899;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 4901;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 4903;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 4905;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 4907;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 4909;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 4911;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 4913;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 4915;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 4917;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 4919;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 4921;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 4923;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 4925;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 4927;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 4929;
return 4931;
}
short BrickStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace BrickWall
{
enum class East
{
None,
Low,
Tall
};
enum class North
{
None,
Low,
Tall
};
enum class South
{
None,
Low,
Tall
};
enum class West
{
None,
Low,
Tall
};
constexpr short BrickWall(enum East East, enum North North, enum South South, bool Up, enum West West)
{
if (East == East::None && North == North::None && South == South::None && Up && West == West::None) return 10870;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Low) return 10871;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Tall) return 10872;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::None) return 10876;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Low) return 10877;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Tall) return 10878;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::None) return 10882;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Low) return 10883;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Tall) return 10884;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::None) return 10888;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Low) return 10889;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Tall) return 10890;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::None) return 10894;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Low) return 10895;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Tall) return 10896;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::None) return 10900;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Low) return 10901;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Tall) return 10902;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::None) return 10906;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Low) return 10907;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Tall) return 10908;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::None) return 10912;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Low) return 10913;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Tall) return 10914;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::None) return 10918;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Low) return 10919;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Tall) return 10920;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::None) return 10924;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Low) return 10925;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Tall) return 10926;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::None) return 10930;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Low) return 10931;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Tall) return 10932;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::None) return 10936;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Low) return 10937;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 10938;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::None) return 10942;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Low) return 10943;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Tall) return 10944;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::None) return 10948;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Low) return 10949;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Tall) return 10950;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::None) return 10954;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Low) return 10955;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Tall) return 10956;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::None) return 10960;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Low) return 10961;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 10962;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::None) return 10966;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Low) return 10967;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 10968;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::None) return 10972;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 10973;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 10974;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::None) return 10978;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Low) return 10979;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Tall) return 10980;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::None) return 10984;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Low) return 10985;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Tall) return 10986;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::None) return 10990;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Low) return 10991;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Tall) return 10992;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::None) return 10996;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Low) return 10997;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Tall) return 10998;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::None) return 11002;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Low) return 11003;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Tall) return 11004;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::None) return 11008;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Low) return 11009;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Tall) return 11010;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::None) return 11014;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Low) return 11015;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Tall) return 11016;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::None) return 11020;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Low) return 11021;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Tall) return 11022;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::None) return 11026;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Low) return 11027;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Tall) return 11028;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::None) return 11032;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Low) return 11033;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Tall) return 11034;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::None) return 11038;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Low) return 11039;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Tall) return 11040;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::None) return 11044;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Low) return 11045;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 11046;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::None) return 11050;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Low) return 11051;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Tall) return 11052;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::None) return 11056;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Low) return 11057;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Tall) return 11058;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::None) return 11062;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Low) return 11063;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Tall) return 11064;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::None) return 11068;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Low) return 11069;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 11070;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::None) return 11074;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Low) return 11075;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 11076;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::None) return 11080;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 11081;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 11082;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::None) return 11086;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Low) return 11087;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Tall) return 11088;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::None) return 11092;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Low) return 11093;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Tall) return 11094;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::None) return 11098;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Low) return 11099;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Tall) return 11100;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::None) return 11104;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Low) return 11105;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Tall) return 11106;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::None) return 11110;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Low) return 11111;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Tall) return 11112;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::None) return 11116;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Low) return 11117;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Tall) return 11118;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::None) return 11122;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Low) return 11123;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Tall) return 11124;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::None) return 11128;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Low) return 11129;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Tall) return 11130;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::None) return 11134;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Low) return 11135;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Tall) return 11136;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::None) return 11140;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Low) return 11141;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Tall) return 11142;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::None) return 11146;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Low) return 11147;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Tall) return 11148;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::None) return 11152;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Low) return 11153;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 11154;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::None) return 11158;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Low) return 11159;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Tall) return 11160;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::None) return 11164;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Low) return 11165;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Tall) return 11166;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::None) return 11170;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Low) return 11171;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Tall) return 11172;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::None) return 11176;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Low) return 11177;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 11178;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::None) return 11182;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Low) return 11183;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 11184;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::None) return 11188;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 11189;
return 11190;
}
short BrickWall();
enum East East(short ID);
enum North North(short ID);
enum South South(short ID);
bool Up(short ID);
enum West West(short ID);
}
namespace Bricks
{
constexpr short Bricks()
{
return 1429;
}
}
namespace BrownBanner
{
constexpr short BrownBanner(unsigned char Rotation)
{
if (Rotation == 0) return 8089;
if (Rotation == 1) return 8090;
if (Rotation == 2) return 8091;
if (Rotation == 3) return 8092;
if (Rotation == 4) return 8093;
if (Rotation == 5) return 8094;
if (Rotation == 6) return 8095;
if (Rotation == 7) return 8096;
if (Rotation == 8) return 8097;
if (Rotation == 9) return 8098;
if (Rotation == 10) return 8099;
if (Rotation == 11) return 8100;
if (Rotation == 12) return 8101;
if (Rotation == 13) return 8102;
if (Rotation == 14) return 8103;
return 8104;
}
short BrownBanner();
unsigned char Rotation(short ID);
}
namespace BrownBed
{
enum class Part
{
Head,
Foot
};
constexpr short BrownBed(eBlockFace Facing, bool Occupied, enum Part Part)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Head) return 1241;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Foot) return 1242;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Head) return 1243;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Foot) return 1244;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Head) return 1245;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Foot) return 1246;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Head) return 1247;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Foot) return 1248;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Head) return 1249;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Foot) return 1250;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Head) return 1251;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Foot) return 1252;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Head) return 1253;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Foot) return 1254;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Occupied && Part == Part::Head) return 1255;
return 1256;
}
short BrownBed();
eBlockFace Facing(short ID);
bool Occupied(short ID);
enum Part Part(short ID);
}
namespace BrownCarpet
{
constexpr short BrownCarpet()
{
return 7878;
}
}
namespace BrownConcrete
{
constexpr short BrownConcrete()
{
return 9450;
}
}
namespace BrownConcretePowder
{
constexpr short BrownConcretePowder()
{
return 9466;
}
}
namespace BrownGlazedTerracotta
{
constexpr short BrownGlazedTerracotta(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9422;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9423;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9424;
return 9425;
}
short BrownGlazedTerracotta();
eBlockFace Facing(short ID);
}
namespace BrownMushroom
{
constexpr short BrownMushroom()
{
return 1425;
}
}
namespace BrownMushroomBlock
{
constexpr short BrownMushroomBlock(bool Down, bool East, bool North, bool South, bool Up, bool West)
{
if (Down && East && North && South && Up && West) return 4505;
if (Down && East && North && South && Up && !West) return 4506;
if (Down && East && North && South && !Up && West) return 4507;
if (Down && East && North && South && !Up && !West) return 4508;
if (Down && East && North && !South && Up && West) return 4509;
if (Down && East && North && !South && Up && !West) return 4510;
if (Down && East && North && !South && !Up && West) return 4511;
if (Down && East && North && !South && !Up && !West) return 4512;
if (Down && East && !North && South && Up && West) return 4513;
if (Down && East && !North && South && Up && !West) return 4514;
if (Down && East && !North && South && !Up && West) return 4515;
if (Down && East && !North && South && !Up && !West) return 4516;
if (Down && East && !North && !South && Up && West) return 4517;
if (Down && East && !North && !South && Up && !West) return 4518;
if (Down && East && !North && !South && !Up && West) return 4519;
if (Down && East && !North && !South && !Up && !West) return 4520;
if (Down && !East && North && South && Up && West) return 4521;
if (Down && !East && North && South && Up && !West) return 4522;
if (Down && !East && North && South && !Up && West) return 4523;
if (Down && !East && North && South && !Up && !West) return 4524;
if (Down && !East && North && !South && Up && West) return 4525;
if (Down && !East && North && !South && Up && !West) return 4526;
if (Down && !East && North && !South && !Up && West) return 4527;
if (Down && !East && North && !South && !Up && !West) return 4528;
if (Down && !East && !North && South && Up && West) return 4529;
if (Down && !East && !North && South && Up && !West) return 4530;
if (Down && !East && !North && South && !Up && West) return 4531;
if (Down && !East && !North && South && !Up && !West) return 4532;
if (Down && !East && !North && !South && Up && West) return 4533;
if (Down && !East && !North && !South && Up && !West) return 4534;
if (Down && !East && !North && !South && !Up && West) return 4535;
if (Down && !East && !North && !South && !Up && !West) return 4536;
if (!Down && East && North && South && Up && West) return 4537;
if (!Down && East && North && South && Up && !West) return 4538;
if (!Down && East && North && South && !Up && West) return 4539;
if (!Down && East && North && South && !Up && !West) return 4540;
if (!Down && East && North && !South && Up && West) return 4541;
if (!Down && East && North && !South && Up && !West) return 4542;
if (!Down && East && North && !South && !Up && West) return 4543;
if (!Down && East && North && !South && !Up && !West) return 4544;
if (!Down && East && !North && South && Up && West) return 4545;
if (!Down && East && !North && South && Up && !West) return 4546;
if (!Down && East && !North && South && !Up && West) return 4547;
if (!Down && East && !North && South && !Up && !West) return 4548;
if (!Down && East && !North && !South && Up && West) return 4549;
if (!Down && East && !North && !South && Up && !West) return 4550;
if (!Down && East && !North && !South && !Up && West) return 4551;
if (!Down && East && !North && !South && !Up && !West) return 4552;
if (!Down && !East && North && South && Up && West) return 4553;
if (!Down && !East && North && South && Up && !West) return 4554;
if (!Down && !East && North && South && !Up && West) return 4555;
if (!Down && !East && North && South && !Up && !West) return 4556;
if (!Down && !East && North && !South && Up && West) return 4557;
if (!Down && !East && North && !South && Up && !West) return 4558;
if (!Down && !East && North && !South && !Up && West) return 4559;
if (!Down && !East && North && !South && !Up && !West) return 4560;
if (!Down && !East && !North && South && Up && West) return 4561;
if (!Down && !East && !North && South && Up && !West) return 4562;
if (!Down && !East && !North && South && !Up && West) return 4563;
if (!Down && !East && !North && South && !Up && !West) return 4564;
if (!Down && !East && !North && !South && Up && West) return 4565;
if (!Down && !East && !North && !South && Up && !West) return 4566;
if (!Down && !East && !North && !South && !Up && West) return 4567;
return 4568;
}
short BrownMushroomBlock();
bool Down(short ID);
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool Up(short ID);
bool West(short ID);
}
namespace BrownShulkerBox
{
constexpr short BrownShulkerBox(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9350;
if (Facing == eBlockFace::BLOCK_FACE_XP) return 9351;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9352;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9353;
if (Facing == eBlockFace::BLOCK_FACE_YP) return 9354;
return 9355;
}
short BrownShulkerBox();
eBlockFace Facing(short ID);
}
namespace BrownStainedGlass
{
constexpr short BrownStainedGlass()
{
return 4107;
}
}
namespace BrownStainedGlassPane
{
constexpr short BrownStainedGlassPane(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 7249;
if (East && North && South && !West) return 7250;
if (East && North && !South && West) return 7253;
if (East && North && !South && !West) return 7254;
if (East && !North && South && West) return 7257;
if (East && !North && South && !West) return 7258;
if (East && !North && !South && West) return 7261;
if (East && !North && !South && !West) return 7262;
if (!East && North && South && West) return 7265;
if (!East && North && South && !West) return 7266;
if (!East && North && !South && West) return 7269;
if (!East && North && !South && !West) return 7270;
if (!East && !North && South && West) return 7273;
if (!East && !North && South && !West) return 7274;
if (!East && !North && !South && West) return 7277;
return 7278;
}
short BrownStainedGlassPane();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace BrownTerracotta
{
constexpr short BrownTerracotta()
{
return 6859;
}
}
namespace BrownWallBanner
{
constexpr short BrownWallBanner(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8201;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8202;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 8203;
return 8204;
}
short BrownWallBanner();
eBlockFace Facing(short ID);
}
namespace BrownWool
{
constexpr short BrownWool()
{
return 1396;
}
}
namespace BubbleColumn
{
constexpr short BubbleColumn(bool Drag)
{
if (Drag) return 9667;
return 9668;
}
short BubbleColumn();
bool Drag(short ID);
}
namespace BubbleCoral
{
constexpr short BubbleCoral()
{
return 9535;
}
}
namespace BubbleCoralBlock
{
constexpr short BubbleCoralBlock()
{
return 9517;
}
}
namespace BubbleCoralFan
{
constexpr short BubbleCoralFan()
{
return 9555;
}
}
namespace BubbleCoralWallFan
{
constexpr short BubbleCoralWallFan(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9617;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9619;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9621;
return 9623;
}
short BubbleCoralWallFan();
eBlockFace Facing(short ID);
}
namespace Cactus
{
constexpr short Cactus(unsigned char Age)
{
if (Age == 0) return 3931;
if (Age == 1) return 3932;
if (Age == 2) return 3933;
if (Age == 3) return 3934;
if (Age == 4) return 3935;
if (Age == 5) return 3936;
if (Age == 6) return 3937;
if (Age == 7) return 3938;
if (Age == 8) return 3939;
if (Age == 9) return 3940;
if (Age == 10) return 3941;
if (Age == 11) return 3942;
if (Age == 12) return 3943;
if (Age == 13) return 3944;
if (Age == 14) return 3945;
return 3946;
}
short Cactus();
unsigned char Age(short ID);
}
namespace Cake
{
constexpr short Cake(unsigned char Bites)
{
if (Bites == 0) return 4024;
if (Bites == 1) return 4025;
if (Bites == 2) return 4026;
if (Bites == 3) return 4027;
if (Bites == 4) return 4028;
if (Bites == 5) return 4029;
return 4030;
}
short Cake();
unsigned char Bites(short ID);
}
namespace Campfire
{
constexpr short Campfire(eBlockFace Facing, bool Lit, bool SignalFire)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Lit && SignalFire) return 14891;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Lit && !SignalFire) return 14893;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Lit && SignalFire) return 14895;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Lit && !SignalFire) return 14897;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Lit && SignalFire) return 14899;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Lit && !SignalFire) return 14901;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Lit && SignalFire) return 14903;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Lit && !SignalFire) return 14905;
if (Facing == eBlockFace::BLOCK_FACE_XM && Lit && SignalFire) return 14907;
if (Facing == eBlockFace::BLOCK_FACE_XM && Lit && !SignalFire) return 14909;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Lit && SignalFire) return 14911;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Lit && !SignalFire) return 14913;
if (Facing == eBlockFace::BLOCK_FACE_XP && Lit && SignalFire) return 14915;
if (Facing == eBlockFace::BLOCK_FACE_XP && Lit && !SignalFire) return 14917;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Lit && SignalFire) return 14919;
return 14921;
}
short Campfire();
eBlockFace Facing(short ID);
bool Lit(short ID);
bool SignalFire(short ID);
}
namespace Carrots
{
constexpr short Carrots(unsigned char Age)
{
if (Age == 0) return 6330;
if (Age == 1) return 6331;
if (Age == 2) return 6332;
if (Age == 3) return 6333;
if (Age == 4) return 6334;
if (Age == 5) return 6335;
if (Age == 6) return 6336;
return 6337;
}
short Carrots();
unsigned char Age(short ID);
}
namespace CartographyTable
{
constexpr short CartographyTable()
{
return 14819;
}
}
namespace CarvedPumpkin
{
constexpr short CarvedPumpkin(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 4016;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 4017;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 4018;
return 4019;
}
short CarvedPumpkin();
eBlockFace Facing(short ID);
}
namespace Cauldron
{
constexpr short Cauldron(unsigned char Level)
{
if (Level == 0) return 5141;
if (Level == 1) return 5142;
if (Level == 2) return 5143;
return 5144;
}
short Cauldron();
unsigned char Level(short ID);
}
namespace CaveAir
{
constexpr short CaveAir()
{
return 9666;
}
}
namespace Chain
{
constexpr short Chain()
{
return 4730;
}
}
namespace ChainCommandBlock
{
constexpr short ChainCommandBlock(bool Conditional, eBlockFace Facing)
{
if (Conditional && Facing == eBlockFace::BLOCK_FACE_ZM) return 9237;
if (Conditional && Facing == eBlockFace::BLOCK_FACE_XP) return 9238;
if (Conditional && Facing == eBlockFace::BLOCK_FACE_ZP) return 9239;
if (Conditional && Facing == eBlockFace::BLOCK_FACE_XM) return 9240;
if (Conditional && Facing == eBlockFace::BLOCK_FACE_YP) return 9241;
if (Conditional && Facing == eBlockFace::BLOCK_FACE_YM) return 9242;
if (!Conditional && Facing == eBlockFace::BLOCK_FACE_ZM) return 9243;
if (!Conditional && Facing == eBlockFace::BLOCK_FACE_XP) return 9244;
if (!Conditional && Facing == eBlockFace::BLOCK_FACE_ZP) return 9245;
if (!Conditional && Facing == eBlockFace::BLOCK_FACE_XM) return 9246;
if (!Conditional && Facing == eBlockFace::BLOCK_FACE_YP) return 9247;
return 9248;
}
short ChainCommandBlock();
bool Conditional(short ID);
eBlockFace Facing(short ID);
}
namespace Chest
{
enum class Type
{
Single,
Left,
Right
};
constexpr short Chest(eBlockFace Facing, enum Type Type)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Type == Type::Single) return 2035;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Type == Type::Left) return 2037;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Type == Type::Right) return 2039;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Type == Type::Single) return 2041;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Type == Type::Left) return 2043;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Type == Type::Right) return 2045;
if (Facing == eBlockFace::BLOCK_FACE_XM && Type == Type::Single) return 2047;
if (Facing == eBlockFace::BLOCK_FACE_XM && Type == Type::Left) return 2049;
if (Facing == eBlockFace::BLOCK_FACE_XM && Type == Type::Right) return 2051;
if (Facing == eBlockFace::BLOCK_FACE_XP && Type == Type::Single) return 2053;
if (Facing == eBlockFace::BLOCK_FACE_XP && Type == Type::Left) return 2055;
return 2057;
}
short Chest();
eBlockFace Facing(short ID);
enum Type Type(short ID);
}
namespace ChippedAnvil
{
constexpr short ChippedAnvil(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6614;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6615;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 6616;
return 6617;
}
short ChippedAnvil();
eBlockFace Facing(short ID);
}
namespace ChiseledNetherBricks
{
constexpr short ChiseledNetherBricks()
{
return 17101;
}
}
namespace ChiseledPolishedBlackstone
{
constexpr short ChiseledPolishedBlackstone()
{
return 16253;
}
}
namespace ChiseledQuartzBlock
{
constexpr short ChiseledQuartzBlock()
{
return 6739;
}
}
namespace ChiseledRedSandstone
{
constexpr short ChiseledRedSandstone()
{
return 8218;
}
}
namespace ChiseledSandstone
{
constexpr short ChiseledSandstone()
{
return 247;
}
}
namespace ChiseledStoneBricks
{
constexpr short ChiseledStoneBricks()
{
return 4498;
}
}
namespace ChorusFlower
{
constexpr short ChorusFlower(unsigned char Age)
{
if (Age == 0) return 9128;
if (Age == 1) return 9129;
if (Age == 2) return 9130;
if (Age == 3) return 9131;
if (Age == 4) return 9132;
return 9133;
}
short ChorusFlower();
unsigned char Age(short ID);
}
namespace ChorusPlant
{
constexpr short ChorusPlant(bool Down, bool East, bool North, bool South, bool Up, bool West)
{
if (Down && East && North && South && Up && West) return 9064;
if (Down && East && North && South && Up && !West) return 9065;
if (Down && East && North && South && !Up && West) return 9066;
if (Down && East && North && South && !Up && !West) return 9067;
if (Down && East && North && !South && Up && West) return 9068;
if (Down && East && North && !South && Up && !West) return 9069;
if (Down && East && North && !South && !Up && West) return 9070;
if (Down && East && North && !South && !Up && !West) return 9071;
if (Down && East && !North && South && Up && West) return 9072;
if (Down && East && !North && South && Up && !West) return 9073;
if (Down && East && !North && South && !Up && West) return 9074;
if (Down && East && !North && South && !Up && !West) return 9075;
if (Down && East && !North && !South && Up && West) return 9076;
if (Down && East && !North && !South && Up && !West) return 9077;
if (Down && East && !North && !South && !Up && West) return 9078;
if (Down && East && !North && !South && !Up && !West) return 9079;
if (Down && !East && North && South && Up && West) return 9080;
if (Down && !East && North && South && Up && !West) return 9081;
if (Down && !East && North && South && !Up && West) return 9082;
if (Down && !East && North && South && !Up && !West) return 9083;
if (Down && !East && North && !South && Up && West) return 9084;
if (Down && !East && North && !South && Up && !West) return 9085;
if (Down && !East && North && !South && !Up && West) return 9086;
if (Down && !East && North && !South && !Up && !West) return 9087;
if (Down && !East && !North && South && Up && West) return 9088;
if (Down && !East && !North && South && Up && !West) return 9089;
if (Down && !East && !North && South && !Up && West) return 9090;
if (Down && !East && !North && South && !Up && !West) return 9091;
if (Down && !East && !North && !South && Up && West) return 9092;
if (Down && !East && !North && !South && Up && !West) return 9093;
if (Down && !East && !North && !South && !Up && West) return 9094;
if (Down && !East && !North && !South && !Up && !West) return 9095;
if (!Down && East && North && South && Up && West) return 9096;
if (!Down && East && North && South && Up && !West) return 9097;
if (!Down && East && North && South && !Up && West) return 9098;
if (!Down && East && North && South && !Up && !West) return 9099;
if (!Down && East && North && !South && Up && West) return 9100;
if (!Down && East && North && !South && Up && !West) return 9101;
if (!Down && East && North && !South && !Up && West) return 9102;
if (!Down && East && North && !South && !Up && !West) return 9103;
if (!Down && East && !North && South && Up && West) return 9104;
if (!Down && East && !North && South && Up && !West) return 9105;
if (!Down && East && !North && South && !Up && West) return 9106;
if (!Down && East && !North && South && !Up && !West) return 9107;
if (!Down && East && !North && !South && Up && West) return 9108;
if (!Down && East && !North && !South && Up && !West) return 9109;
if (!Down && East && !North && !South && !Up && West) return 9110;
if (!Down && East && !North && !South && !Up && !West) return 9111;
if (!Down && !East && North && South && Up && West) return 9112;
if (!Down && !East && North && South && Up && !West) return 9113;
if (!Down && !East && North && South && !Up && West) return 9114;
if (!Down && !East && North && South && !Up && !West) return 9115;
if (!Down && !East && North && !South && Up && West) return 9116;
if (!Down && !East && North && !South && Up && !West) return 9117;
if (!Down && !East && North && !South && !Up && West) return 9118;
if (!Down && !East && North && !South && !Up && !West) return 9119;
if (!Down && !East && !North && South && Up && West) return 9120;
if (!Down && !East && !North && South && Up && !West) return 9121;
if (!Down && !East && !North && South && !Up && West) return 9122;
if (!Down && !East && !North && South && !Up && !West) return 9123;
if (!Down && !East && !North && !South && Up && West) return 9124;
if (!Down && !East && !North && !South && Up && !West) return 9125;
if (!Down && !East && !North && !South && !Up && West) return 9126;
return 9127;
}
short ChorusPlant();
bool Down(short ID);
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool Up(short ID);
bool West(short ID);
}
namespace Clay
{
constexpr short Clay()
{
return 3947;
}
}
namespace CoalBlock
{
constexpr short CoalBlock()
{
return 7883;
}
}
namespace CoalOre
{
constexpr short CoalOre()
{
return 71;
}
}
namespace CoarseDirt
{
constexpr short CoarseDirt()
{
return 11;
}
}
namespace Cobblestone
{
constexpr short Cobblestone()
{
return 14;
}
}
namespace CobblestoneSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short CobblestoneSlab(enum Type Type)
{
if (Type == Type::Top) return 8367;
if (Type == Type::Bottom) return 8369;
return 8371;
}
short CobblestoneSlab();
enum Type Type(short ID);
}
namespace CobblestoneStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short CobblestoneStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 3656;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 3658;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 3660;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 3662;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 3664;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 3666;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 3668;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 3670;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 3672;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 3674;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 3676;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 3678;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 3680;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 3682;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 3684;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 3686;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 3688;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 3690;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 3692;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 3694;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 3696;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 3698;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 3700;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 3702;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 3704;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 3706;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 3708;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 3710;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 3712;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 3714;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 3716;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 3718;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 3720;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 3722;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 3724;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 3726;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 3728;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 3730;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 3732;
return 3734;
}
short CobblestoneStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace CobblestoneWall
{
enum class East
{
None,
Low,
Tall
};
enum class North
{
None,
Low,
Tall
};
enum class South
{
None,
Low,
Tall
};
enum class West
{
None,
Low,
Tall
};
constexpr short CobblestoneWall(enum East East, enum North North, enum South South, bool Up, enum West West)
{
if (East == East::None && North == North::None && South == South::None && Up && West == West::None) return 5660;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Low) return 5661;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Tall) return 5662;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::None) return 5666;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Low) return 5667;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Tall) return 5668;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::None) return 5672;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Low) return 5673;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Tall) return 5674;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::None) return 5678;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Low) return 5679;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Tall) return 5680;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::None) return 5684;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Low) return 5685;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Tall) return 5686;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::None) return 5690;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Low) return 5691;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Tall) return 5692;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::None) return 5696;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Low) return 5697;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Tall) return 5698;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::None) return 5702;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Low) return 5703;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Tall) return 5704;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::None) return 5708;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Low) return 5709;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Tall) return 5710;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::None) return 5714;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Low) return 5715;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Tall) return 5716;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::None) return 5720;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Low) return 5721;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Tall) return 5722;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::None) return 5726;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Low) return 5727;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 5728;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::None) return 5732;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Low) return 5733;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Tall) return 5734;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::None) return 5738;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Low) return 5739;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Tall) return 5740;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::None) return 5744;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Low) return 5745;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Tall) return 5746;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::None) return 5750;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Low) return 5751;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 5752;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::None) return 5756;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Low) return 5757;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 5758;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::None) return 5762;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 5763;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 5764;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::None) return 5768;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Low) return 5769;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Tall) return 5770;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::None) return 5774;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Low) return 5775;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Tall) return 5776;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::None) return 5780;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Low) return 5781;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Tall) return 5782;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::None) return 5786;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Low) return 5787;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Tall) return 5788;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::None) return 5792;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Low) return 5793;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Tall) return 5794;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::None) return 5798;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Low) return 5799;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Tall) return 5800;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::None) return 5804;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Low) return 5805;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Tall) return 5806;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::None) return 5810;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Low) return 5811;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Tall) return 5812;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::None) return 5816;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Low) return 5817;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Tall) return 5818;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::None) return 5822;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Low) return 5823;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Tall) return 5824;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::None) return 5828;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Low) return 5829;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Tall) return 5830;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::None) return 5834;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Low) return 5835;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 5836;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::None) return 5840;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Low) return 5841;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Tall) return 5842;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::None) return 5846;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Low) return 5847;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Tall) return 5848;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::None) return 5852;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Low) return 5853;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Tall) return 5854;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::None) return 5858;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Low) return 5859;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 5860;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::None) return 5864;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Low) return 5865;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 5866;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::None) return 5870;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 5871;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 5872;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::None) return 5876;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Low) return 5877;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Tall) return 5878;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::None) return 5882;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Low) return 5883;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Tall) return 5884;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::None) return 5888;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Low) return 5889;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Tall) return 5890;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::None) return 5894;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Low) return 5895;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Tall) return 5896;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::None) return 5900;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Low) return 5901;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Tall) return 5902;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::None) return 5906;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Low) return 5907;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Tall) return 5908;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::None) return 5912;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Low) return 5913;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Tall) return 5914;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::None) return 5918;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Low) return 5919;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Tall) return 5920;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::None) return 5924;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Low) return 5925;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Tall) return 5926;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::None) return 5930;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Low) return 5931;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Tall) return 5932;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::None) return 5936;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Low) return 5937;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Tall) return 5938;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::None) return 5942;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Low) return 5943;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 5944;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::None) return 5948;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Low) return 5949;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Tall) return 5950;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::None) return 5954;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Low) return 5955;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Tall) return 5956;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::None) return 5960;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Low) return 5961;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Tall) return 5962;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::None) return 5966;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Low) return 5967;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 5968;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::None) return 5972;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Low) return 5973;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 5974;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::None) return 5978;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 5979;
return 5980;
}
short CobblestoneWall();
enum East East(short ID);
enum North North(short ID);
enum South South(short ID);
bool Up(short ID);
enum West West(short ID);
}
namespace Cobweb
{
constexpr short Cobweb()
{
return 1341;
}
}
namespace Cocoa
{
constexpr short Cocoa(unsigned char Age, eBlockFace Facing)
{
if (Age == 0 && Facing == eBlockFace::BLOCK_FACE_ZM) return 5158;
if (Age == 0 && Facing == eBlockFace::BLOCK_FACE_ZP) return 5159;
if (Age == 0 && Facing == eBlockFace::BLOCK_FACE_XM) return 5160;
if (Age == 0 && Facing == eBlockFace::BLOCK_FACE_XP) return 5161;
if (Age == 1 && Facing == eBlockFace::BLOCK_FACE_ZM) return 5162;
if (Age == 1 && Facing == eBlockFace::BLOCK_FACE_ZP) return 5163;
if (Age == 1 && Facing == eBlockFace::BLOCK_FACE_XM) return 5164;
if (Age == 1 && Facing == eBlockFace::BLOCK_FACE_XP) return 5165;
if (Age == 2 && Facing == eBlockFace::BLOCK_FACE_ZM) return 5166;
if (Age == 2 && Facing == eBlockFace::BLOCK_FACE_ZP) return 5167;
if (Age == 2 && Facing == eBlockFace::BLOCK_FACE_XM) return 5168;
return 5169;
}
short Cocoa();
unsigned char Age(short ID);
eBlockFace Facing(short ID);
}
namespace CommandBlock
{
constexpr short CommandBlock(bool Conditional, eBlockFace Facing)
{
if (Conditional && Facing == eBlockFace::BLOCK_FACE_ZM) return 5644;
if (Conditional && Facing == eBlockFace::BLOCK_FACE_XP) return 5645;
if (Conditional && Facing == eBlockFace::BLOCK_FACE_ZP) return 5646;
if (Conditional && Facing == eBlockFace::BLOCK_FACE_XM) return 5647;
if (Conditional && Facing == eBlockFace::BLOCK_FACE_YP) return 5648;
if (Conditional && Facing == eBlockFace::BLOCK_FACE_YM) return 5649;
if (!Conditional && Facing == eBlockFace::BLOCK_FACE_ZM) return 5650;
if (!Conditional && Facing == eBlockFace::BLOCK_FACE_XP) return 5651;
if (!Conditional && Facing == eBlockFace::BLOCK_FACE_ZP) return 5652;
if (!Conditional && Facing == eBlockFace::BLOCK_FACE_XM) return 5653;
if (!Conditional && Facing == eBlockFace::BLOCK_FACE_YP) return 5654;
return 5655;
}
short CommandBlock();
bool Conditional(short ID);
eBlockFace Facing(short ID);
}
namespace Comparator
{
enum class Mode
{
Compare,
Subtract
};
constexpr short Comparator(eBlockFace Facing, enum Mode Mode, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Mode == Mode::Compare && Powered) return 6678;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Mode == Mode::Compare && !Powered) return 6679;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Mode == Mode::Subtract && Powered) return 6680;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Mode == Mode::Subtract && !Powered) return 6681;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Mode == Mode::Compare && Powered) return 6682;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Mode == Mode::Compare && !Powered) return 6683;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Mode == Mode::Subtract && Powered) return 6684;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Mode == Mode::Subtract && !Powered) return 6685;
if (Facing == eBlockFace::BLOCK_FACE_XM && Mode == Mode::Compare && Powered) return 6686;
if (Facing == eBlockFace::BLOCK_FACE_XM && Mode == Mode::Compare && !Powered) return 6687;
if (Facing == eBlockFace::BLOCK_FACE_XM && Mode == Mode::Subtract && Powered) return 6688;
if (Facing == eBlockFace::BLOCK_FACE_XM && Mode == Mode::Subtract && !Powered) return 6689;
if (Facing == eBlockFace::BLOCK_FACE_XP && Mode == Mode::Compare && Powered) return 6690;
if (Facing == eBlockFace::BLOCK_FACE_XP && Mode == Mode::Compare && !Powered) return 6691;
if (Facing == eBlockFace::BLOCK_FACE_XP && Mode == Mode::Subtract && Powered) return 6692;
return 6693;
}
short Comparator();
eBlockFace Facing(short ID);
enum Mode Mode(short ID);
bool Powered(short ID);
}
namespace Composter
{
constexpr short Composter(unsigned char Level)
{
if (Level == 0) return 15751;
if (Level == 1) return 15752;
if (Level == 2) return 15753;
if (Level == 3) return 15754;
if (Level == 4) return 15755;
if (Level == 5) return 15756;
if (Level == 6) return 15757;
if (Level == 7) return 15758;
return 15759;
}
short Composter();
unsigned char Level(short ID);
}
namespace Conduit
{
constexpr short Conduit()
{
return 9650;
}
}
namespace Cornflower
{
constexpr short Cornflower()
{
return 1422;
}
}
namespace CrackedNetherBricks
{
constexpr short CrackedNetherBricks()
{
return 17102;
}
}
namespace CrackedPolishedBlackstoneBricks
{
constexpr short CrackedPolishedBlackstoneBricks()
{
return 16252;
}
}
namespace CrackedStoneBricks
{
constexpr short CrackedStoneBricks()
{
return 4497;
}
}
namespace CraftingTable
{
constexpr short CraftingTable()
{
return 3356;
}
}
namespace CreeperHead
{
constexpr short CreeperHead(unsigned char Rotation)
{
if (Rotation == 0) return 6570;
if (Rotation == 1) return 6571;
if (Rotation == 2) return 6572;
if (Rotation == 3) return 6573;
if (Rotation == 4) return 6574;
if (Rotation == 5) return 6575;
if (Rotation == 6) return 6576;
if (Rotation == 7) return 6577;
if (Rotation == 8) return 6578;
if (Rotation == 9) return 6579;
if (Rotation == 10) return 6580;
if (Rotation == 11) return 6581;
if (Rotation == 12) return 6582;
if (Rotation == 13) return 6583;
if (Rotation == 14) return 6584;
return 6585;
}
short CreeperHead();
unsigned char Rotation(short ID);
}
namespace CreeperWallHead
{
constexpr short CreeperWallHead(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6586;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6587;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 6588;
return 6589;
}
short CreeperWallHead();
eBlockFace Facing(short ID);
}
namespace CrimsonButton
{
enum class Face
{
Floor,
Wall,
Ceiling
};
constexpr short CrimsonButton(enum Face Face, eBlockFace Facing, bool Powered)
{
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 15479;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 15480;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 15481;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 15482;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 15483;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 15484;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 15485;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 15486;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 15487;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 15488;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 15489;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 15490;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 15491;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 15492;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 15493;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 15494;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 15495;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 15496;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 15497;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 15498;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 15499;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 15500;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 15501;
return 15502;
}
short CrimsonButton();
enum Face Face(short ID);
eBlockFace Facing(short ID);
bool Powered(short ID);
}
namespace CrimsonDoor
{
enum class Half
{
Upper,
Lower
};
enum class Hinge
{
Left,
Right
};
constexpr short CrimsonDoor(eBlockFace Facing, enum Half Half, enum Hinge Hinge, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 15527;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 15528;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 15529;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 15530;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 15531;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 15532;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 15533;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 15534;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 15535;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 15536;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 15537;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 15538;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 15539;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 15540;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 15541;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 15542;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 15543;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 15544;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 15545;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 15546;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 15547;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 15548;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 15549;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 15550;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 15551;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 15552;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 15553;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 15554;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 15555;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 15556;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 15557;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 15558;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 15559;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 15560;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 15561;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 15562;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 15563;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 15564;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 15565;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 15566;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 15567;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 15568;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 15569;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 15570;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 15571;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 15572;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 15573;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 15574;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 15575;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 15576;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 15577;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 15578;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 15579;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 15580;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 15581;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 15582;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 15583;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 15584;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 15585;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 15586;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 15587;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 15588;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 15589;
return 15590;
}
short CrimsonDoor();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Hinge Hinge(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace CrimsonFence
{
constexpr short CrimsonFence(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 15065;
if (East && North && South && !West) return 15066;
if (East && North && !South && West) return 15069;
if (East && North && !South && !West) return 15070;
if (East && !North && South && West) return 15073;
if (East && !North && South && !West) return 15074;
if (East && !North && !South && West) return 15077;
if (East && !North && !South && !West) return 15078;
if (!East && North && South && West) return 15081;
if (!East && North && South && !West) return 15082;
if (!East && North && !South && West) return 15085;
if (!East && North && !South && !West) return 15086;
if (!East && !North && South && West) return 15089;
if (!East && !North && South && !West) return 15090;
if (!East && !North && !South && West) return 15093;
return 15094;
}
short CrimsonFence();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace CrimsonFenceGate
{
constexpr short CrimsonFenceGate(eBlockFace Facing, bool InWall, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && Open && Powered) return 15255;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && Open && !Powered) return 15256;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && !Open && Powered) return 15257;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && !Open && !Powered) return 15258;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && Open && Powered) return 15259;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && Open && !Powered) return 15260;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && !Open && Powered) return 15261;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && !Open && !Powered) return 15262;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && Open && Powered) return 15263;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && Open && !Powered) return 15264;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && !Open && Powered) return 15265;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && !Open && !Powered) return 15266;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && Open && Powered) return 15267;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && Open && !Powered) return 15268;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && !Open && Powered) return 15269;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && !Open && !Powered) return 15270;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && Open && Powered) return 15271;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && Open && !Powered) return 15272;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && !Open && Powered) return 15273;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && !Open && !Powered) return 15274;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && Open && Powered) return 15275;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && Open && !Powered) return 15276;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && !Open && Powered) return 15277;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && !Open && !Powered) return 15278;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && Open && Powered) return 15279;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && Open && !Powered) return 15280;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && !Open && Powered) return 15281;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && !Open && !Powered) return 15282;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && Open && Powered) return 15283;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && Open && !Powered) return 15284;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && !Open && Powered) return 15285;
return 15286;
}
short CrimsonFenceGate();
eBlockFace Facing(short ID);
bool InWall(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace CrimsonFungus
{
constexpr short CrimsonFungus()
{
return 14988;
}
}
namespace CrimsonHyphae
{
enum class Axis
{
X,
Y,
Z
};
constexpr short CrimsonHyphae(enum Axis Axis)
{
if (Axis == Axis::X) return 14981;
if (Axis == Axis::Y) return 14982;
return 14983;
}
short CrimsonHyphae();
enum Axis Axis(short ID);
}
namespace CrimsonNylium
{
constexpr short CrimsonNylium()
{
return 14987;
}
}
namespace CrimsonPlanks
{
constexpr short CrimsonPlanks()
{
return 15045;
}
}
namespace CrimsonPressurePlate
{
constexpr short CrimsonPressurePlate(bool Powered)
{
if (Powered) return 15059;
return 15060;
}
short CrimsonPressurePlate();
bool Powered(short ID);
}
namespace CrimsonRoots
{
constexpr short CrimsonRoots()
{
return 15044;
}
}
namespace CrimsonSign
{
constexpr short CrimsonSign(unsigned char Rotation)
{
if (Rotation == 0) return 15656;
if (Rotation == 1) return 15658;
if (Rotation == 2) return 15660;
if (Rotation == 3) return 15662;
if (Rotation == 4) return 15664;
if (Rotation == 5) return 15666;
if (Rotation == 6) return 15668;
if (Rotation == 7) return 15670;
if (Rotation == 8) return 15672;
if (Rotation == 9) return 15674;
if (Rotation == 10) return 15676;
if (Rotation == 11) return 15678;
if (Rotation == 12) return 15680;
if (Rotation == 13) return 15682;
if (Rotation == 14) return 15684;
return 15686;
}
short CrimsonSign();
unsigned char Rotation(short ID);
}
namespace CrimsonSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short CrimsonSlab(enum Type Type)
{
if (Type == Type::Top) return 15048;
if (Type == Type::Bottom) return 15050;
return 15052;
}
short CrimsonSlab();
enum Type Type(short ID);
}
namespace CrimsonStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short CrimsonStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 15320;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 15322;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 15324;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 15326;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 15328;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 15330;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 15332;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 15334;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 15336;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 15338;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 15340;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 15342;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 15344;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 15346;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 15348;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 15350;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 15352;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 15354;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 15356;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 15358;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 15360;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 15362;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 15364;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 15366;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 15368;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 15370;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 15372;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 15374;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 15376;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 15378;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 15380;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 15382;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 15384;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 15386;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 15388;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 15390;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 15392;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 15394;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 15396;
return 15398;
}
short CrimsonStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace CrimsonStem
{
enum class Axis
{
X,
Y,
Z
};
constexpr short CrimsonStem(enum Axis Axis)
{
if (Axis == Axis::X) return 14975;
if (Axis == Axis::Y) return 14976;
return 14977;
}
short CrimsonStem();
enum Axis Axis(short ID);
}
namespace CrimsonTrapdoor
{
enum class Half
{
Top,
Bottom
};
constexpr short CrimsonTrapdoor(eBlockFace Facing, enum Half Half, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Open && Powered) return 15128;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Open && !Powered) return 15130;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && !Open && Powered) return 15132;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && !Open && !Powered) return 15134;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Open && Powered) return 15136;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Open && !Powered) return 15138;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && !Open && Powered) return 15140;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && !Open && !Powered) return 15142;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Open && Powered) return 15144;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Open && !Powered) return 15146;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && !Open && Powered) return 15148;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && !Open && !Powered) return 15150;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Open && Powered) return 15152;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Open && !Powered) return 15154;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && !Open && Powered) return 15156;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && !Open && !Powered) return 15158;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Open && Powered) return 15160;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Open && !Powered) return 15162;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && !Open && Powered) return 15164;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && !Open && !Powered) return 15166;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Open && Powered) return 15168;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Open && !Powered) return 15170;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && !Open && Powered) return 15172;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && !Open && !Powered) return 15174;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Open && Powered) return 15176;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Open && !Powered) return 15178;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && !Open && Powered) return 15180;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && !Open && !Powered) return 15182;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Open && Powered) return 15184;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Open && !Powered) return 15186;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && !Open && Powered) return 15188;
return 15190;
}
short CrimsonTrapdoor();
eBlockFace Facing(short ID);
enum Half Half(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace CrimsonWallSign
{
constexpr short CrimsonWallSign(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 15720;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 15722;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 15724;
return 15726;
}
short CrimsonWallSign();
eBlockFace Facing(short ID);
}
namespace CryingObsidian
{
constexpr short CryingObsidian()
{
return 15828;
}
}
namespace CutRedSandstone
{
constexpr short CutRedSandstone()
{
return 8219;
}
}
namespace CutRedSandstoneSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short CutRedSandstoneSlab(enum Type Type)
{
if (Type == Type::Top) return 8403;
if (Type == Type::Bottom) return 8405;
return 8407;
}
short CutRedSandstoneSlab();
enum Type Type(short ID);
}
namespace CutSandstone
{
constexpr short CutSandstone()
{
return 248;
}
}
namespace CutSandstoneSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short CutSandstoneSlab(enum Type Type)
{
if (Type == Type::Top) return 8355;
if (Type == Type::Bottom) return 8357;
return 8359;
}
short CutSandstoneSlab();
enum Type Type(short ID);
}
namespace CyanBanner
{
constexpr short CyanBanner(unsigned char Rotation)
{
if (Rotation == 0) return 8041;
if (Rotation == 1) return 8042;
if (Rotation == 2) return 8043;
if (Rotation == 3) return 8044;
if (Rotation == 4) return 8045;
if (Rotation == 5) return 8046;
if (Rotation == 6) return 8047;
if (Rotation == 7) return 8048;
if (Rotation == 8) return 8049;
if (Rotation == 9) return 8050;
if (Rotation == 10) return 8051;
if (Rotation == 11) return 8052;
if (Rotation == 12) return 8053;
if (Rotation == 13) return 8054;
if (Rotation == 14) return 8055;
return 8056;
}
short CyanBanner();
unsigned char Rotation(short ID);
}
namespace CyanBed
{
enum class Part
{
Head,
Foot
};
constexpr short CyanBed(eBlockFace Facing, bool Occupied, enum Part Part)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Head) return 1193;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Foot) return 1194;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Head) return 1195;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Foot) return 1196;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Head) return 1197;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Foot) return 1198;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Head) return 1199;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Foot) return 1200;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Head) return 1201;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Foot) return 1202;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Head) return 1203;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Foot) return 1204;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Head) return 1205;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Foot) return 1206;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Occupied && Part == Part::Head) return 1207;
return 1208;
}
short CyanBed();
eBlockFace Facing(short ID);
bool Occupied(short ID);
enum Part Part(short ID);
}
namespace CyanCarpet
{
constexpr short CyanCarpet()
{
return 7875;
}
}
namespace CyanConcrete
{
constexpr short CyanConcrete()
{
return 9447;
}
}
namespace CyanConcretePowder
{
constexpr short CyanConcretePowder()
{
return 9463;
}
}
namespace CyanGlazedTerracotta
{
constexpr short CyanGlazedTerracotta(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9410;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9411;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9412;
return 9413;
}
short CyanGlazedTerracotta();
eBlockFace Facing(short ID);
}
namespace CyanShulkerBox
{
constexpr short CyanShulkerBox(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9332;
if (Facing == eBlockFace::BLOCK_FACE_XP) return 9333;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9334;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9335;
if (Facing == eBlockFace::BLOCK_FACE_YP) return 9336;
return 9337;
}
short CyanShulkerBox();
eBlockFace Facing(short ID);
}
namespace CyanStainedGlass
{
constexpr short CyanStainedGlass()
{
return 4104;
}
}
namespace CyanStainedGlassPane
{
constexpr short CyanStainedGlassPane(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 7153;
if (East && North && South && !West) return 7154;
if (East && North && !South && West) return 7157;
if (East && North && !South && !West) return 7158;
if (East && !North && South && West) return 7161;
if (East && !North && South && !West) return 7162;
if (East && !North && !South && West) return 7165;
if (East && !North && !South && !West) return 7166;
if (!East && North && South && West) return 7169;
if (!East && North && South && !West) return 7170;
if (!East && North && !South && West) return 7173;
if (!East && North && !South && !West) return 7174;
if (!East && !North && South && West) return 7177;
if (!East && !North && South && !West) return 7178;
if (!East && !North && !South && West) return 7181;
return 7182;
}
short CyanStainedGlassPane();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace CyanTerracotta
{
constexpr short CyanTerracotta()
{
return 6856;
}
}
namespace CyanWallBanner
{
constexpr short CyanWallBanner(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8189;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8190;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 8191;
return 8192;
}
short CyanWallBanner();
eBlockFace Facing(short ID);
}
namespace CyanWool
{
constexpr short CyanWool()
{
return 1393;
}
}
namespace DamagedAnvil
{
constexpr short DamagedAnvil(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6618;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6619;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 6620;
return 6621;
}
short DamagedAnvil();
eBlockFace Facing(short ID);
}
namespace Dandelion
{
constexpr short Dandelion()
{
return 1412;
}
}
namespace DarkOakButton
{
enum class Face
{
Floor,
Wall,
Ceiling
};
constexpr short DarkOakButton(enum Face Face, eBlockFace Facing, bool Powered)
{
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 6466;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 6467;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 6468;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 6469;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 6470;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 6471;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 6472;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 6473;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 6474;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 6475;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 6476;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 6477;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 6478;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 6479;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 6480;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 6481;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 6482;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 6483;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 6484;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 6485;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 6486;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 6487;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 6488;
return 6489;
}
short DarkOakButton();
enum Face Face(short ID);
eBlockFace Facing(short ID);
bool Powered(short ID);
}
namespace DarkOakDoor
{
enum class Half
{
Upper,
Lower
};
enum class Hinge
{
Left,
Right
};
constexpr short DarkOakDoor(eBlockFace Facing, enum Half Half, enum Hinge Hinge, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 8994;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 8995;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 8996;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 8997;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 8998;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 8999;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 9000;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 9001;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 9002;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 9003;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 9004;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 9005;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 9006;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 9007;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 9008;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 9009;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 9010;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 9011;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 9012;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 9013;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 9014;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 9015;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 9016;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 9017;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 9018;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 9019;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 9020;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 9021;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 9022;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 9023;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 9024;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 9025;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 9026;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 9027;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 9028;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 9029;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 9030;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 9031;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 9032;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 9033;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 9034;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 9035;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 9036;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 9037;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 9038;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 9039;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 9040;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 9041;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 9042;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 9043;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 9044;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 9045;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 9046;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 9047;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 9048;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 9049;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 9050;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 9051;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 9052;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 9053;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 9054;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 9055;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 9056;
return 9057;
}
short DarkOakDoor();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Hinge Hinge(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace DarkOakFence
{
constexpr short DarkOakFence(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 8708;
if (East && North && South && !West) return 8709;
if (East && North && !South && West) return 8712;
if (East && North && !South && !West) return 8713;
if (East && !North && South && West) return 8716;
if (East && !North && South && !West) return 8717;
if (East && !North && !South && West) return 8720;
if (East && !North && !South && !West) return 8721;
if (!East && North && South && West) return 8724;
if (!East && North && South && !West) return 8725;
if (!East && North && !South && West) return 8728;
if (!East && North && !South && !West) return 8729;
if (!East && !North && South && West) return 8732;
if (!East && !North && South && !West) return 8733;
if (!East && !North && !South && West) return 8736;
return 8737;
}
short DarkOakFence();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace DarkOakFenceGate
{
constexpr short DarkOakFenceGate(eBlockFace Facing, bool InWall, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && Open && Powered) return 8546;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && Open && !Powered) return 8547;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && !Open && Powered) return 8548;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && !Open && !Powered) return 8549;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && Open && Powered) return 8550;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && Open && !Powered) return 8551;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && !Open && Powered) return 8552;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && !Open && !Powered) return 8553;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && Open && Powered) return 8554;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && Open && !Powered) return 8555;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && !Open && Powered) return 8556;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && !Open && !Powered) return 8557;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && Open && Powered) return 8558;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && Open && !Powered) return 8559;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && !Open && Powered) return 8560;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && !Open && !Powered) return 8561;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && Open && Powered) return 8562;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && Open && !Powered) return 8563;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && !Open && Powered) return 8564;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && !Open && !Powered) return 8565;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && Open && Powered) return 8566;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && Open && !Powered) return 8567;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && !Open && Powered) return 8568;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && !Open && !Powered) return 8569;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && Open && Powered) return 8570;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && Open && !Powered) return 8571;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && !Open && Powered) return 8572;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && !Open && !Powered) return 8573;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && Open && Powered) return 8574;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && Open && !Powered) return 8575;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && !Open && Powered) return 8576;
return 8577;
}
short DarkOakFenceGate();
eBlockFace Facing(short ID);
bool InWall(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace DarkOakLeaves
{
constexpr short DarkOakLeaves(unsigned char Distance, bool Persistent)
{
if (Distance == 1 && Persistent) return 215;
if (Distance == 1 && !Persistent) return 216;
if (Distance == 2 && Persistent) return 217;
if (Distance == 2 && !Persistent) return 218;
if (Distance == 3 && Persistent) return 219;
if (Distance == 3 && !Persistent) return 220;
if (Distance == 4 && Persistent) return 221;
if (Distance == 4 && !Persistent) return 222;
if (Distance == 5 && Persistent) return 223;
if (Distance == 5 && !Persistent) return 224;
if (Distance == 6 && Persistent) return 225;
if (Distance == 6 && !Persistent) return 226;
if (Distance == 7 && Persistent) return 227;
return 228;
}
short DarkOakLeaves();
unsigned char Distance(short ID);
bool Persistent(short ID);
}
namespace DarkOakLog
{
enum class Axis
{
X,
Y,
Z
};
constexpr short DarkOakLog(enum Axis Axis)
{
if (Axis == Axis::X) return 88;
if (Axis == Axis::Y) return 89;
return 90;
}
short DarkOakLog();
enum Axis Axis(short ID);
}
namespace DarkOakPlanks
{
constexpr short DarkOakPlanks()
{
return 20;
}
}
namespace DarkOakPressurePlate
{
constexpr short DarkOakPressurePlate(bool Powered)
{
if (Powered) return 3883;
return 3884;
}
short DarkOakPressurePlate();
bool Powered(short ID);
}
namespace DarkOakSapling
{
constexpr short DarkOakSapling(unsigned char Stage)
{
if (Stage == 0) return 31;
return 32;
}
short DarkOakSapling();
unsigned char Stage(short ID);
}
namespace DarkOakSign
{
constexpr short DarkOakSign(unsigned char Rotation)
{
if (Rotation == 0) return 3542;
if (Rotation == 1) return 3544;
if (Rotation == 2) return 3546;
if (Rotation == 3) return 3548;
if (Rotation == 4) return 3550;
if (Rotation == 5) return 3552;
if (Rotation == 6) return 3554;
if (Rotation == 7) return 3556;
if (Rotation == 8) return 3558;
if (Rotation == 9) return 3560;
if (Rotation == 10) return 3562;
if (Rotation == 11) return 3564;
if (Rotation == 12) return 3566;
if (Rotation == 13) return 3568;
if (Rotation == 14) return 3570;
return 3572;
}
short DarkOakSign();
unsigned char Rotation(short ID);
}
namespace DarkOakSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short DarkOakSlab(enum Type Type)
{
if (Type == Type::Top) return 8331;
if (Type == Type::Bottom) return 8333;
return 8335;
}
short DarkOakSlab();
enum Type Type(short ID);
}
namespace DarkOakStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short DarkOakStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 7456;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 7458;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 7460;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 7462;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 7464;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 7466;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7468;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 7470;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7472;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 7474;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 7476;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 7478;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 7480;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 7482;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 7484;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 7486;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7488;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 7490;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7492;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 7494;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 7496;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 7498;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 7500;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 7502;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 7504;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 7506;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7508;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 7510;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7512;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 7514;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 7516;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 7518;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 7520;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 7522;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 7524;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 7526;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7528;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 7530;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7532;
return 7534;
}
short DarkOakStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace DarkOakTrapdoor
{
enum class Half
{
Top,
Bottom
};
constexpr short DarkOakTrapdoor(eBlockFace Facing, enum Half Half, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Open && Powered) return 4432;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Open && !Powered) return 4434;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && !Open && Powered) return 4436;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && !Open && !Powered) return 4438;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Open && Powered) return 4440;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Open && !Powered) return 4442;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && !Open && Powered) return 4444;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && !Open && !Powered) return 4446;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Open && Powered) return 4448;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Open && !Powered) return 4450;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && !Open && Powered) return 4452;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && !Open && !Powered) return 4454;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Open && Powered) return 4456;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Open && !Powered) return 4458;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && !Open && Powered) return 4460;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && !Open && !Powered) return 4462;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Open && Powered) return 4464;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Open && !Powered) return 4466;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && !Open && Powered) return 4468;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && !Open && !Powered) return 4470;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Open && Powered) return 4472;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Open && !Powered) return 4474;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && !Open && Powered) return 4476;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && !Open && !Powered) return 4478;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Open && Powered) return 4480;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Open && !Powered) return 4482;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && !Open && Powered) return 4484;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && !Open && !Powered) return 4486;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Open && Powered) return 4488;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Open && !Powered) return 4490;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && !Open && Powered) return 4492;
return 4494;
}
short DarkOakTrapdoor();
eBlockFace Facing(short ID);
enum Half Half(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace DarkOakWallSign
{
constexpr short DarkOakWallSign(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 3776;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 3778;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 3780;
return 3782;
}
short DarkOakWallSign();
eBlockFace Facing(short ID);
}
namespace DarkOakWood
{
enum class Axis
{
X,
Y,
Z
};
constexpr short DarkOakWood(enum Axis Axis)
{
if (Axis == Axis::X) return 124;
if (Axis == Axis::Y) return 125;
return 126;
}
short DarkOakWood();
enum Axis Axis(short ID);
}
namespace DarkPrismarine
{
constexpr short DarkPrismarine()
{
return 7603;
}
}
namespace DarkPrismarineSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short DarkPrismarineSlab(enum Type Type)
{
if (Type == Type::Top) return 7857;
if (Type == Type::Bottom) return 7859;
return 7861;
}
short DarkPrismarineSlab();
enum Type Type(short ID);
}
namespace DarkPrismarineStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short DarkPrismarineStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 7765;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 7767;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 7769;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 7771;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 7773;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 7775;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7777;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 7779;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7781;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 7783;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 7785;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 7787;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 7789;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 7791;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 7793;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 7795;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7797;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 7799;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7801;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 7803;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 7805;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 7807;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 7809;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 7811;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 7813;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 7815;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7817;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 7819;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7821;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 7823;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 7825;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 7827;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 7829;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 7831;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 7833;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 7835;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7837;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 7839;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7841;
return 7843;
}
short DarkPrismarineStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace DaylightDetector
{
constexpr short DaylightDetector(bool Inverted, unsigned char Power)
{
if (Inverted && Power == 0) return 6694;
if (Inverted && Power == 1) return 6695;
if (Inverted && Power == 2) return 6696;
if (Inverted && Power == 3) return 6697;
if (Inverted && Power == 4) return 6698;
if (Inverted && Power == 5) return 6699;
if (Inverted && Power == 6) return 6700;
if (Inverted && Power == 7) return 6701;
if (Inverted && Power == 8) return 6702;
if (Inverted && Power == 9) return 6703;
if (Inverted && Power == 10) return 6704;
if (Inverted && Power == 11) return 6705;
if (Inverted && Power == 12) return 6706;
if (Inverted && Power == 13) return 6707;
if (Inverted && Power == 14) return 6708;
if (Inverted && Power == 15) return 6709;
if (!Inverted && Power == 0) return 6710;
if (!Inverted && Power == 1) return 6711;
if (!Inverted && Power == 2) return 6712;
if (!Inverted && Power == 3) return 6713;
if (!Inverted && Power == 4) return 6714;
if (!Inverted && Power == 5) return 6715;
if (!Inverted && Power == 6) return 6716;
if (!Inverted && Power == 7) return 6717;
if (!Inverted && Power == 8) return 6718;
if (!Inverted && Power == 9) return 6719;
if (!Inverted && Power == 10) return 6720;
if (!Inverted && Power == 11) return 6721;
if (!Inverted && Power == 12) return 6722;
if (!Inverted && Power == 13) return 6723;
if (!Inverted && Power == 14) return 6724;
return 6725;
}
short DaylightDetector();
bool Inverted(short ID);
unsigned char Power(short ID);
}
namespace DeadBrainCoral
{
constexpr short DeadBrainCoral()
{
return 9523;
}
}
namespace DeadBrainCoralBlock
{
constexpr short DeadBrainCoralBlock()
{
return 9511;
}
}
namespace DeadBrainCoralFan
{
constexpr short DeadBrainCoralFan()
{
return 9543;
}
}
namespace DeadBrainCoralWallFan
{
constexpr short DeadBrainCoralWallFan(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9569;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9571;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9573;
return 9575;
}
short DeadBrainCoralWallFan();
eBlockFace Facing(short ID);
}
namespace DeadBubbleCoral
{
constexpr short DeadBubbleCoral()
{
return 9525;
}
}
namespace DeadBubbleCoralBlock
{
constexpr short DeadBubbleCoralBlock()
{
return 9512;
}
}
namespace DeadBubbleCoralFan
{
constexpr short DeadBubbleCoralFan()
{
return 9545;
}
}
namespace DeadBubbleCoralWallFan
{
constexpr short DeadBubbleCoralWallFan(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9577;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9579;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9581;
return 9583;
}
short DeadBubbleCoralWallFan();
eBlockFace Facing(short ID);
}
namespace DeadBush
{
constexpr short DeadBush()
{
return 1344;
}
}
namespace DeadFireCoral
{
constexpr short DeadFireCoral()
{
return 9527;
}
}
namespace DeadFireCoralBlock
{
constexpr short DeadFireCoralBlock()
{
return 9513;
}
}
namespace DeadFireCoralFan
{
constexpr short DeadFireCoralFan()
{
return 9547;
}
}
namespace DeadFireCoralWallFan
{
constexpr short DeadFireCoralWallFan(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9585;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9587;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9589;
return 9591;
}
short DeadFireCoralWallFan();
eBlockFace Facing(short ID);
}
namespace DeadHornCoral
{
constexpr short DeadHornCoral()
{
return 9529;
}
}
namespace DeadHornCoralBlock
{
constexpr short DeadHornCoralBlock()
{
return 9514;
}
}
namespace DeadHornCoralFan
{
constexpr short DeadHornCoralFan()
{
return 9549;
}
}
namespace DeadHornCoralWallFan
{
constexpr short DeadHornCoralWallFan(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9593;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9595;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9597;
return 9599;
}
short DeadHornCoralWallFan();
eBlockFace Facing(short ID);
}
namespace DeadTubeCoral
{
constexpr short DeadTubeCoral()
{
return 9521;
}
}
namespace DeadTubeCoralBlock
{
constexpr short DeadTubeCoralBlock()
{
return 9510;
}
}
namespace DeadTubeCoralFan
{
constexpr short DeadTubeCoralFan()
{
return 9541;
}
}
namespace DeadTubeCoralWallFan
{
constexpr short DeadTubeCoralWallFan(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9561;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9563;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9565;
return 9567;
}
short DeadTubeCoralWallFan();
eBlockFace Facing(short ID);
}
namespace DetectorRail
{
enum class Shape
{
NorthSouth,
EastWest,
AscendingEast,
AscendingWest,
AscendingNorth,
AscendingSouth
};
constexpr short DetectorRail(bool Powered, enum Shape Shape)
{
if (Powered && Shape == Shape::NorthSouth) return 1317;
if (Powered && Shape == Shape::EastWest) return 1318;
if (Powered && Shape == Shape::AscendingEast) return 1319;
if (Powered && Shape == Shape::AscendingWest) return 1320;
if (Powered && Shape == Shape::AscendingNorth) return 1321;
if (Powered && Shape == Shape::AscendingSouth) return 1322;
if (!Powered && Shape == Shape::NorthSouth) return 1323;
if (!Powered && Shape == Shape::EastWest) return 1324;
if (!Powered && Shape == Shape::AscendingEast) return 1325;
if (!Powered && Shape == Shape::AscendingWest) return 1326;
if (!Powered && Shape == Shape::AscendingNorth) return 1327;
return 1328;
}
short DetectorRail();
bool Powered(short ID);
enum Shape Shape(short ID);
}
namespace DiamondBlock
{
constexpr short DiamondBlock()
{
return 3355;
}
}
namespace DiamondOre
{
constexpr short DiamondOre()
{
return 3354;
}
}
namespace Diorite
{
constexpr short Diorite()
{
return 4;
}
}
namespace DioriteSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short DioriteSlab(enum Type Type)
{
if (Type == Type::Top) return 10862;
if (Type == Type::Bottom) return 10864;
return 10866;
}
short DioriteSlab();
enum Type Type(short ID);
}
namespace DioriteStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short DioriteStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 10710;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 10712;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 10714;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 10716;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 10718;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 10720;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10722;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10724;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10726;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10728;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 10730;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 10732;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 10734;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 10736;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 10738;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 10740;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10742;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10744;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10746;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 10748;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 10750;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 10752;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 10754;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 10756;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 10758;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 10760;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10762;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10764;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10766;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10768;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 10770;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 10772;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 10774;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 10776;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 10778;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 10780;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10782;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10784;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10786;
return 10788;
}
short DioriteStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace DioriteWall
{
enum class East
{
None,
Low,
Tall
};
enum class North
{
None,
Low,
Tall
};
enum class South
{
None,
Low,
Tall
};
enum class West
{
None,
Low,
Tall
};
constexpr short DioriteWall(enum East East, enum North North, enum South South, bool Up, enum West West)
{
if (East == East::None && North == North::None && South == South::None && Up && West == West::None) return 14434;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Low) return 14435;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Tall) return 14436;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::None) return 14440;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Low) return 14441;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Tall) return 14442;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::None) return 14446;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Low) return 14447;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Tall) return 14448;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::None) return 14452;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Low) return 14453;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Tall) return 14454;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::None) return 14458;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Low) return 14459;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Tall) return 14460;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::None) return 14464;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Low) return 14465;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Tall) return 14466;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::None) return 14470;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Low) return 14471;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Tall) return 14472;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::None) return 14476;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Low) return 14477;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Tall) return 14478;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::None) return 14482;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Low) return 14483;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Tall) return 14484;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::None) return 14488;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Low) return 14489;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Tall) return 14490;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::None) return 14494;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Low) return 14495;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Tall) return 14496;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::None) return 14500;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Low) return 14501;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 14502;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::None) return 14506;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Low) return 14507;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Tall) return 14508;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::None) return 14512;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Low) return 14513;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Tall) return 14514;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::None) return 14518;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Low) return 14519;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Tall) return 14520;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::None) return 14524;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Low) return 14525;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 14526;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::None) return 14530;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Low) return 14531;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 14532;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::None) return 14536;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 14537;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 14538;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::None) return 14542;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Low) return 14543;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Tall) return 14544;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::None) return 14548;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Low) return 14549;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Tall) return 14550;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::None) return 14554;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Low) return 14555;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Tall) return 14556;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::None) return 14560;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Low) return 14561;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Tall) return 14562;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::None) return 14566;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Low) return 14567;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Tall) return 14568;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::None) return 14572;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Low) return 14573;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Tall) return 14574;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::None) return 14578;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Low) return 14579;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Tall) return 14580;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::None) return 14584;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Low) return 14585;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Tall) return 14586;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::None) return 14590;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Low) return 14591;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Tall) return 14592;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::None) return 14596;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Low) return 14597;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Tall) return 14598;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::None) return 14602;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Low) return 14603;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Tall) return 14604;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::None) return 14608;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Low) return 14609;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 14610;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::None) return 14614;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Low) return 14615;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Tall) return 14616;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::None) return 14620;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Low) return 14621;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Tall) return 14622;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::None) return 14626;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Low) return 14627;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Tall) return 14628;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::None) return 14632;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Low) return 14633;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 14634;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::None) return 14638;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Low) return 14639;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 14640;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::None) return 14644;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 14645;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 14646;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::None) return 14650;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Low) return 14651;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Tall) return 14652;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::None) return 14656;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Low) return 14657;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Tall) return 14658;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::None) return 14662;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Low) return 14663;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Tall) return 14664;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::None) return 14668;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Low) return 14669;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Tall) return 14670;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::None) return 14674;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Low) return 14675;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Tall) return 14676;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::None) return 14680;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Low) return 14681;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Tall) return 14682;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::None) return 14686;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Low) return 14687;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Tall) return 14688;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::None) return 14692;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Low) return 14693;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Tall) return 14694;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::None) return 14698;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Low) return 14699;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Tall) return 14700;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::None) return 14704;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Low) return 14705;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Tall) return 14706;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::None) return 14710;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Low) return 14711;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Tall) return 14712;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::None) return 14716;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Low) return 14717;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 14718;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::None) return 14722;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Low) return 14723;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Tall) return 14724;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::None) return 14728;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Low) return 14729;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Tall) return 14730;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::None) return 14734;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Low) return 14735;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Tall) return 14736;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::None) return 14740;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Low) return 14741;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 14742;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::None) return 14746;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Low) return 14747;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 14748;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::None) return 14752;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 14753;
return 14754;
}
short DioriteWall();
enum East East(short ID);
enum North North(short ID);
enum South South(short ID);
bool Up(short ID);
enum West West(short ID);
}
namespace Dirt
{
constexpr short Dirt()
{
return 10;
}
}
namespace Dispenser
{
constexpr short Dispenser(eBlockFace Facing, bool Triggered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Triggered) return 234;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Triggered) return 235;
if (Facing == eBlockFace::BLOCK_FACE_XP && Triggered) return 236;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Triggered) return 237;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Triggered) return 238;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Triggered) return 239;
if (Facing == eBlockFace::BLOCK_FACE_XM && Triggered) return 240;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Triggered) return 241;
if (Facing == eBlockFace::BLOCK_FACE_YP && Triggered) return 242;
if (Facing == eBlockFace::BLOCK_FACE_YP && !Triggered) return 243;
if (Facing == eBlockFace::BLOCK_FACE_YM && Triggered) return 244;
return 245;
}
short Dispenser();
eBlockFace Facing(short ID);
bool Triggered(short ID);
}
namespace DragonEgg
{
constexpr short DragonEgg()
{
return 5155;
}
}
namespace DragonHead
{
constexpr short DragonHead(unsigned char Rotation)
{
if (Rotation == 0) return 6590;
if (Rotation == 1) return 6591;
if (Rotation == 2) return 6592;
if (Rotation == 3) return 6593;
if (Rotation == 4) return 6594;
if (Rotation == 5) return 6595;
if (Rotation == 6) return 6596;
if (Rotation == 7) return 6597;
if (Rotation == 8) return 6598;
if (Rotation == 9) return 6599;
if (Rotation == 10) return 6600;
if (Rotation == 11) return 6601;
if (Rotation == 12) return 6602;
if (Rotation == 13) return 6603;
if (Rotation == 14) return 6604;
return 6605;
}
short DragonHead();
unsigned char Rotation(short ID);
}
namespace DragonWallHead
{
constexpr short DragonWallHead(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6606;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6607;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 6608;
return 6609;
}
short DragonWallHead();
eBlockFace Facing(short ID);
}
namespace DriedKelpBlock
{
constexpr short DriedKelpBlock()
{
return 9497;
}
}
namespace Dropper
{
constexpr short Dropper(eBlockFace Facing, bool Triggered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Triggered) return 6835;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Triggered) return 6836;
if (Facing == eBlockFace::BLOCK_FACE_XP && Triggered) return 6837;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Triggered) return 6838;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Triggered) return 6839;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Triggered) return 6840;
if (Facing == eBlockFace::BLOCK_FACE_XM && Triggered) return 6841;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Triggered) return 6842;
if (Facing == eBlockFace::BLOCK_FACE_YP && Triggered) return 6843;
if (Facing == eBlockFace::BLOCK_FACE_YP && !Triggered) return 6844;
if (Facing == eBlockFace::BLOCK_FACE_YM && Triggered) return 6845;
return 6846;
}
short Dropper();
eBlockFace Facing(short ID);
bool Triggered(short ID);
}
namespace EmeraldBlock
{
constexpr short EmeraldBlock()
{
return 5403;
}
}
namespace EmeraldOre
{
constexpr short EmeraldOre()
{
return 5250;
}
}
namespace EnchantingTable
{
constexpr short EnchantingTable()
{
return 5132;
}
}
namespace EndGateway
{
constexpr short EndGateway()
{
return 9224;
}
}
namespace EndPortal
{
constexpr short EndPortal()
{
return 5145;
}
}
namespace EndPortalFrame
{
constexpr short EndPortalFrame(bool Eye, eBlockFace Facing)
{
if (Eye && Facing == eBlockFace::BLOCK_FACE_ZM) return 5146;
if (Eye && Facing == eBlockFace::BLOCK_FACE_ZP) return 5147;
if (Eye && Facing == eBlockFace::BLOCK_FACE_XM) return 5148;
if (Eye && Facing == eBlockFace::BLOCK_FACE_XP) return 5149;
if (!Eye && Facing == eBlockFace::BLOCK_FACE_ZM) return 5150;
if (!Eye && Facing == eBlockFace::BLOCK_FACE_ZP) return 5151;
if (!Eye && Facing == eBlockFace::BLOCK_FACE_XM) return 5152;
return 5153;
}
short EndPortalFrame();
bool Eye(short ID);
eBlockFace Facing(short ID);
}
namespace EndRod
{
constexpr short EndRod(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9058;
if (Facing == eBlockFace::BLOCK_FACE_XP) return 9059;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9060;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9061;
if (Facing == eBlockFace::BLOCK_FACE_YP) return 9062;
return 9063;
}
short EndRod();
eBlockFace Facing(short ID);
}
namespace EndStone
{
constexpr short EndStone()
{
return 5154;
}
}
namespace EndStoneBrickSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short EndStoneBrickSlab(enum Type Type)
{
if (Type == Type::Top) return 10820;
if (Type == Type::Bottom) return 10822;
return 10824;
}
short EndStoneBrickSlab();
enum Type Type(short ID);
}
namespace EndStoneBrickStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short EndStoneBrickStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 10070;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 10072;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 10074;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 10076;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 10078;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 10080;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10082;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10084;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10086;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10088;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 10090;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 10092;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 10094;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 10096;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 10098;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 10100;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10102;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10104;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10106;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 10108;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 10110;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 10112;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 10114;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 10116;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 10118;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 10120;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10122;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10124;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10126;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10128;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 10130;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 10132;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 10134;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 10136;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 10138;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 10140;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10142;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10144;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10146;
return 10148;
}
short EndStoneBrickStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace EndStoneBrickWall
{
enum class East
{
None,
Low,
Tall
};
enum class North
{
None,
Low,
Tall
};
enum class South
{
None,
Low,
Tall
};
enum class West
{
None,
Low,
Tall
};
constexpr short EndStoneBrickWall(enum East East, enum North North, enum South South, bool Up, enum West West)
{
if (East == East::None && North == North::None && South == South::None && Up && West == West::None) return 14110;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Low) return 14111;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Tall) return 14112;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::None) return 14116;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Low) return 14117;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Tall) return 14118;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::None) return 14122;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Low) return 14123;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Tall) return 14124;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::None) return 14128;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Low) return 14129;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Tall) return 14130;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::None) return 14134;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Low) return 14135;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Tall) return 14136;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::None) return 14140;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Low) return 14141;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Tall) return 14142;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::None) return 14146;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Low) return 14147;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Tall) return 14148;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::None) return 14152;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Low) return 14153;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Tall) return 14154;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::None) return 14158;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Low) return 14159;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Tall) return 14160;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::None) return 14164;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Low) return 14165;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Tall) return 14166;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::None) return 14170;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Low) return 14171;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Tall) return 14172;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::None) return 14176;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Low) return 14177;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 14178;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::None) return 14182;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Low) return 14183;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Tall) return 14184;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::None) return 14188;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Low) return 14189;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Tall) return 14190;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::None) return 14194;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Low) return 14195;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Tall) return 14196;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::None) return 14200;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Low) return 14201;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 14202;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::None) return 14206;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Low) return 14207;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 14208;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::None) return 14212;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 14213;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 14214;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::None) return 14218;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Low) return 14219;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Tall) return 14220;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::None) return 14224;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Low) return 14225;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Tall) return 14226;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::None) return 14230;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Low) return 14231;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Tall) return 14232;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::None) return 14236;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Low) return 14237;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Tall) return 14238;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::None) return 14242;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Low) return 14243;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Tall) return 14244;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::None) return 14248;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Low) return 14249;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Tall) return 14250;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::None) return 14254;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Low) return 14255;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Tall) return 14256;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::None) return 14260;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Low) return 14261;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Tall) return 14262;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::None) return 14266;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Low) return 14267;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Tall) return 14268;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::None) return 14272;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Low) return 14273;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Tall) return 14274;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::None) return 14278;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Low) return 14279;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Tall) return 14280;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::None) return 14284;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Low) return 14285;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 14286;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::None) return 14290;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Low) return 14291;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Tall) return 14292;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::None) return 14296;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Low) return 14297;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Tall) return 14298;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::None) return 14302;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Low) return 14303;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Tall) return 14304;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::None) return 14308;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Low) return 14309;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 14310;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::None) return 14314;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Low) return 14315;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 14316;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::None) return 14320;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 14321;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 14322;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::None) return 14326;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Low) return 14327;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Tall) return 14328;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::None) return 14332;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Low) return 14333;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Tall) return 14334;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::None) return 14338;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Low) return 14339;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Tall) return 14340;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::None) return 14344;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Low) return 14345;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Tall) return 14346;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::None) return 14350;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Low) return 14351;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Tall) return 14352;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::None) return 14356;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Low) return 14357;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Tall) return 14358;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::None) return 14362;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Low) return 14363;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Tall) return 14364;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::None) return 14368;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Low) return 14369;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Tall) return 14370;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::None) return 14374;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Low) return 14375;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Tall) return 14376;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::None) return 14380;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Low) return 14381;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Tall) return 14382;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::None) return 14386;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Low) return 14387;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Tall) return 14388;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::None) return 14392;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Low) return 14393;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 14394;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::None) return 14398;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Low) return 14399;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Tall) return 14400;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::None) return 14404;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Low) return 14405;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Tall) return 14406;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::None) return 14410;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Low) return 14411;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Tall) return 14412;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::None) return 14416;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Low) return 14417;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 14418;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::None) return 14422;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Low) return 14423;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 14424;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::None) return 14428;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 14429;
return 14430;
}
short EndStoneBrickWall();
enum East East(short ID);
enum North North(short ID);
enum South South(short ID);
bool Up(short ID);
enum West West(short ID);
}
namespace EndStoneBricks
{
constexpr short EndStoneBricks()
{
return 9218;
}
}
namespace EnderChest
{
constexpr short EnderChest(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 5252;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 5254;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 5256;
return 5258;
}
short EnderChest();
eBlockFace Facing(short ID);
}
namespace Farmland
{
constexpr short Farmland(unsigned char Moisture)
{
if (Moisture == 0) return 3365;
if (Moisture == 1) return 3366;
if (Moisture == 2) return 3367;
if (Moisture == 3) return 3368;
if (Moisture == 4) return 3369;
if (Moisture == 5) return 3370;
if (Moisture == 6) return 3371;
return 3372;
}
short Farmland();
unsigned char Moisture(short ID);
}
namespace Fern
{
constexpr short Fern()
{
return 1343;
}
}
namespace Fire
{
constexpr short Fire(unsigned char Age, bool East, bool North, bool South, bool Up, bool West)
{
if (Age == 0 && East && North && South && Up && West) return 1440;
if (Age == 0 && East && North && South && Up && !West) return 1441;
if (Age == 0 && East && North && South && !Up && West) return 1442;
if (Age == 0 && East && North && South && !Up && !West) return 1443;
if (Age == 0 && East && North && !South && Up && West) return 1444;
if (Age == 0 && East && North && !South && Up && !West) return 1445;
if (Age == 0 && East && North && !South && !Up && West) return 1446;
if (Age == 0 && East && North && !South && !Up && !West) return 1447;
if (Age == 0 && East && !North && South && Up && West) return 1448;
if (Age == 0 && East && !North && South && Up && !West) return 1449;
if (Age == 0 && East && !North && South && !Up && West) return 1450;
if (Age == 0 && East && !North && South && !Up && !West) return 1451;
if (Age == 0 && East && !North && !South && Up && West) return 1452;
if (Age == 0 && East && !North && !South && Up && !West) return 1453;
if (Age == 0 && East && !North && !South && !Up && West) return 1454;
if (Age == 0 && East && !North && !South && !Up && !West) return 1455;
if (Age == 0 && !East && North && South && Up && West) return 1456;
if (Age == 0 && !East && North && South && Up && !West) return 1457;
if (Age == 0 && !East && North && South && !Up && West) return 1458;
if (Age == 0 && !East && North && South && !Up && !West) return 1459;
if (Age == 0 && !East && North && !South && Up && West) return 1460;
if (Age == 0 && !East && North && !South && Up && !West) return 1461;
if (Age == 0 && !East && North && !South && !Up && West) return 1462;
if (Age == 0 && !East && North && !South && !Up && !West) return 1463;
if (Age == 0 && !East && !North && South && Up && West) return 1464;
if (Age == 0 && !East && !North && South && Up && !West) return 1465;
if (Age == 0 && !East && !North && South && !Up && West) return 1466;
if (Age == 0 && !East && !North && South && !Up && !West) return 1467;
if (Age == 0 && !East && !North && !South && Up && West) return 1468;
if (Age == 0 && !East && !North && !South && Up && !West) return 1469;
if (Age == 0 && !East && !North && !South && !Up && West) return 1470;
if (Age == 0 && !East && !North && !South && !Up && !West) return 1471;
if (Age == 1 && East && North && South && Up && West) return 1472;
if (Age == 1 && East && North && South && Up && !West) return 1473;
if (Age == 1 && East && North && South && !Up && West) return 1474;
if (Age == 1 && East && North && South && !Up && !West) return 1475;
if (Age == 1 && East && North && !South && Up && West) return 1476;
if (Age == 1 && East && North && !South && Up && !West) return 1477;
if (Age == 1 && East && North && !South && !Up && West) return 1478;
if (Age == 1 && East && North && !South && !Up && !West) return 1479;
if (Age == 1 && East && !North && South && Up && West) return 1480;
if (Age == 1 && East && !North && South && Up && !West) return 1481;
if (Age == 1 && East && !North && South && !Up && West) return 1482;
if (Age == 1 && East && !North && South && !Up && !West) return 1483;
if (Age == 1 && East && !North && !South && Up && West) return 1484;
if (Age == 1 && East && !North && !South && Up && !West) return 1485;
if (Age == 1 && East && !North && !South && !Up && West) return 1486;
if (Age == 1 && East && !North && !South && !Up && !West) return 1487;
if (Age == 1 && !East && North && South && Up && West) return 1488;
if (Age == 1 && !East && North && South && Up && !West) return 1489;
if (Age == 1 && !East && North && South && !Up && West) return 1490;
if (Age == 1 && !East && North && South && !Up && !West) return 1491;
if (Age == 1 && !East && North && !South && Up && West) return 1492;
if (Age == 1 && !East && North && !South && Up && !West) return 1493;
if (Age == 1 && !East && North && !South && !Up && West) return 1494;
if (Age == 1 && !East && North && !South && !Up && !West) return 1495;
if (Age == 1 && !East && !North && South && Up && West) return 1496;
if (Age == 1 && !East && !North && South && Up && !West) return 1497;
if (Age == 1 && !East && !North && South && !Up && West) return 1498;
if (Age == 1 && !East && !North && South && !Up && !West) return 1499;
if (Age == 1 && !East && !North && !South && Up && West) return 1500;
if (Age == 1 && !East && !North && !South && Up && !West) return 1501;
if (Age == 1 && !East && !North && !South && !Up && West) return 1502;
if (Age == 1 && !East && !North && !South && !Up && !West) return 1503;
if (Age == 2 && East && North && South && Up && West) return 1504;
if (Age == 2 && East && North && South && Up && !West) return 1505;
if (Age == 2 && East && North && South && !Up && West) return 1506;
if (Age == 2 && East && North && South && !Up && !West) return 1507;
if (Age == 2 && East && North && !South && Up && West) return 1508;
if (Age == 2 && East && North && !South && Up && !West) return 1509;
if (Age == 2 && East && North && !South && !Up && West) return 1510;
if (Age == 2 && East && North && !South && !Up && !West) return 1511;
if (Age == 2 && East && !North && South && Up && West) return 1512;
if (Age == 2 && East && !North && South && Up && !West) return 1513;
if (Age == 2 && East && !North && South && !Up && West) return 1514;
if (Age == 2 && East && !North && South && !Up && !West) return 1515;
if (Age == 2 && East && !North && !South && Up && West) return 1516;
if (Age == 2 && East && !North && !South && Up && !West) return 1517;
if (Age == 2 && East && !North && !South && !Up && West) return 1518;
if (Age == 2 && East && !North && !South && !Up && !West) return 1519;
if (Age == 2 && !East && North && South && Up && West) return 1520;
if (Age == 2 && !East && North && South && Up && !West) return 1521;
if (Age == 2 && !East && North && South && !Up && West) return 1522;
if (Age == 2 && !East && North && South && !Up && !West) return 1523;
if (Age == 2 && !East && North && !South && Up && West) return 1524;
if (Age == 2 && !East && North && !South && Up && !West) return 1525;
if (Age == 2 && !East && North && !South && !Up && West) return 1526;
if (Age == 2 && !East && North && !South && !Up && !West) return 1527;
if (Age == 2 && !East && !North && South && Up && West) return 1528;
if (Age == 2 && !East && !North && South && Up && !West) return 1529;
if (Age == 2 && !East && !North && South && !Up && West) return 1530;
if (Age == 2 && !East && !North && South && !Up && !West) return 1531;
if (Age == 2 && !East && !North && !South && Up && West) return 1532;
if (Age == 2 && !East && !North && !South && Up && !West) return 1533;
if (Age == 2 && !East && !North && !South && !Up && West) return 1534;
if (Age == 2 && !East && !North && !South && !Up && !West) return 1535;
if (Age == 3 && East && North && South && Up && West) return 1536;
if (Age == 3 && East && North && South && Up && !West) return 1537;
if (Age == 3 && East && North && South && !Up && West) return 1538;
if (Age == 3 && East && North && South && !Up && !West) return 1539;
if (Age == 3 && East && North && !South && Up && West) return 1540;
if (Age == 3 && East && North && !South && Up && !West) return 1541;
if (Age == 3 && East && North && !South && !Up && West) return 1542;
if (Age == 3 && East && North && !South && !Up && !West) return 1543;
if (Age == 3 && East && !North && South && Up && West) return 1544;
if (Age == 3 && East && !North && South && Up && !West) return 1545;
if (Age == 3 && East && !North && South && !Up && West) return 1546;
if (Age == 3 && East && !North && South && !Up && !West) return 1547;
if (Age == 3 && East && !North && !South && Up && West) return 1548;
if (Age == 3 && East && !North && !South && Up && !West) return 1549;
if (Age == 3 && East && !North && !South && !Up && West) return 1550;
if (Age == 3 && East && !North && !South && !Up && !West) return 1551;
if (Age == 3 && !East && North && South && Up && West) return 1552;
if (Age == 3 && !East && North && South && Up && !West) return 1553;
if (Age == 3 && !East && North && South && !Up && West) return 1554;
if (Age == 3 && !East && North && South && !Up && !West) return 1555;
if (Age == 3 && !East && North && !South && Up && West) return 1556;
if (Age == 3 && !East && North && !South && Up && !West) return 1557;
if (Age == 3 && !East && North && !South && !Up && West) return 1558;
if (Age == 3 && !East && North && !South && !Up && !West) return 1559;
if (Age == 3 && !East && !North && South && Up && West) return 1560;
if (Age == 3 && !East && !North && South && Up && !West) return 1561;
if (Age == 3 && !East && !North && South && !Up && West) return 1562;
if (Age == 3 && !East && !North && South && !Up && !West) return 1563;
if (Age == 3 && !East && !North && !South && Up && West) return 1564;
if (Age == 3 && !East && !North && !South && Up && !West) return 1565;
if (Age == 3 && !East && !North && !South && !Up && West) return 1566;
if (Age == 3 && !East && !North && !South && !Up && !West) return 1567;
if (Age == 4 && East && North && South && Up && West) return 1568;
if (Age == 4 && East && North && South && Up && !West) return 1569;
if (Age == 4 && East && North && South && !Up && West) return 1570;
if (Age == 4 && East && North && South && !Up && !West) return 1571;
if (Age == 4 && East && North && !South && Up && West) return 1572;
if (Age == 4 && East && North && !South && Up && !West) return 1573;
if (Age == 4 && East && North && !South && !Up && West) return 1574;
if (Age == 4 && East && North && !South && !Up && !West) return 1575;
if (Age == 4 && East && !North && South && Up && West) return 1576;
if (Age == 4 && East && !North && South && Up && !West) return 1577;
if (Age == 4 && East && !North && South && !Up && West) return 1578;
if (Age == 4 && East && !North && South && !Up && !West) return 1579;
if (Age == 4 && East && !North && !South && Up && West) return 1580;
if (Age == 4 && East && !North && !South && Up && !West) return 1581;
if (Age == 4 && East && !North && !South && !Up && West) return 1582;
if (Age == 4 && East && !North && !South && !Up && !West) return 1583;
if (Age == 4 && !East && North && South && Up && West) return 1584;
if (Age == 4 && !East && North && South && Up && !West) return 1585;
if (Age == 4 && !East && North && South && !Up && West) return 1586;
if (Age == 4 && !East && North && South && !Up && !West) return 1587;
if (Age == 4 && !East && North && !South && Up && West) return 1588;
if (Age == 4 && !East && North && !South && Up && !West) return 1589;
if (Age == 4 && !East && North && !South && !Up && West) return 1590;
if (Age == 4 && !East && North && !South && !Up && !West) return 1591;
if (Age == 4 && !East && !North && South && Up && West) return 1592;
if (Age == 4 && !East && !North && South && Up && !West) return 1593;
if (Age == 4 && !East && !North && South && !Up && West) return 1594;
if (Age == 4 && !East && !North && South && !Up && !West) return 1595;
if (Age == 4 && !East && !North && !South && Up && West) return 1596;
if (Age == 4 && !East && !North && !South && Up && !West) return 1597;
if (Age == 4 && !East && !North && !South && !Up && West) return 1598;
if (Age == 4 && !East && !North && !South && !Up && !West) return 1599;
if (Age == 5 && East && North && South && Up && West) return 1600;
if (Age == 5 && East && North && South && Up && !West) return 1601;
if (Age == 5 && East && North && South && !Up && West) return 1602;
if (Age == 5 && East && North && South && !Up && !West) return 1603;
if (Age == 5 && East && North && !South && Up && West) return 1604;
if (Age == 5 && East && North && !South && Up && !West) return 1605;
if (Age == 5 && East && North && !South && !Up && West) return 1606;
if (Age == 5 && East && North && !South && !Up && !West) return 1607;
if (Age == 5 && East && !North && South && Up && West) return 1608;
if (Age == 5 && East && !North && South && Up && !West) return 1609;
if (Age == 5 && East && !North && South && !Up && West) return 1610;
if (Age == 5 && East && !North && South && !Up && !West) return 1611;
if (Age == 5 && East && !North && !South && Up && West) return 1612;
if (Age == 5 && East && !North && !South && Up && !West) return 1613;
if (Age == 5 && East && !North && !South && !Up && West) return 1614;
if (Age == 5 && East && !North && !South && !Up && !West) return 1615;
if (Age == 5 && !East && North && South && Up && West) return 1616;
if (Age == 5 && !East && North && South && Up && !West) return 1617;
if (Age == 5 && !East && North && South && !Up && West) return 1618;
if (Age == 5 && !East && North && South && !Up && !West) return 1619;
if (Age == 5 && !East && North && !South && Up && West) return 1620;
if (Age == 5 && !East && North && !South && Up && !West) return 1621;
if (Age == 5 && !East && North && !South && !Up && West) return 1622;
if (Age == 5 && !East && North && !South && !Up && !West) return 1623;
if (Age == 5 && !East && !North && South && Up && West) return 1624;
if (Age == 5 && !East && !North && South && Up && !West) return 1625;
if (Age == 5 && !East && !North && South && !Up && West) return 1626;
if (Age == 5 && !East && !North && South && !Up && !West) return 1627;
if (Age == 5 && !East && !North && !South && Up && West) return 1628;
if (Age == 5 && !East && !North && !South && Up && !West) return 1629;
if (Age == 5 && !East && !North && !South && !Up && West) return 1630;
if (Age == 5 && !East && !North && !South && !Up && !West) return 1631;
if (Age == 6 && East && North && South && Up && West) return 1632;
if (Age == 6 && East && North && South && Up && !West) return 1633;
if (Age == 6 && East && North && South && !Up && West) return 1634;
if (Age == 6 && East && North && South && !Up && !West) return 1635;
if (Age == 6 && East && North && !South && Up && West) return 1636;
if (Age == 6 && East && North && !South && Up && !West) return 1637;
if (Age == 6 && East && North && !South && !Up && West) return 1638;
if (Age == 6 && East && North && !South && !Up && !West) return 1639;
if (Age == 6 && East && !North && South && Up && West) return 1640;
if (Age == 6 && East && !North && South && Up && !West) return 1641;
if (Age == 6 && East && !North && South && !Up && West) return 1642;
if (Age == 6 && East && !North && South && !Up && !West) return 1643;
if (Age == 6 && East && !North && !South && Up && West) return 1644;
if (Age == 6 && East && !North && !South && Up && !West) return 1645;
if (Age == 6 && East && !North && !South && !Up && West) return 1646;
if (Age == 6 && East && !North && !South && !Up && !West) return 1647;
if (Age == 6 && !East && North && South && Up && West) return 1648;
if (Age == 6 && !East && North && South && Up && !West) return 1649;
if (Age == 6 && !East && North && South && !Up && West) return 1650;
if (Age == 6 && !East && North && South && !Up && !West) return 1651;
if (Age == 6 && !East && North && !South && Up && West) return 1652;
if (Age == 6 && !East && North && !South && Up && !West) return 1653;
if (Age == 6 && !East && North && !South && !Up && West) return 1654;
if (Age == 6 && !East && North && !South && !Up && !West) return 1655;
if (Age == 6 && !East && !North && South && Up && West) return 1656;
if (Age == 6 && !East && !North && South && Up && !West) return 1657;
if (Age == 6 && !East && !North && South && !Up && West) return 1658;
if (Age == 6 && !East && !North && South && !Up && !West) return 1659;
if (Age == 6 && !East && !North && !South && Up && West) return 1660;
if (Age == 6 && !East && !North && !South && Up && !West) return 1661;
if (Age == 6 && !East && !North && !South && !Up && West) return 1662;
if (Age == 6 && !East && !North && !South && !Up && !West) return 1663;
if (Age == 7 && East && North && South && Up && West) return 1664;
if (Age == 7 && East && North && South && Up && !West) return 1665;
if (Age == 7 && East && North && South && !Up && West) return 1666;
if (Age == 7 && East && North && South && !Up && !West) return 1667;
if (Age == 7 && East && North && !South && Up && West) return 1668;
if (Age == 7 && East && North && !South && Up && !West) return 1669;
if (Age == 7 && East && North && !South && !Up && West) return 1670;
if (Age == 7 && East && North && !South && !Up && !West) return 1671;
if (Age == 7 && East && !North && South && Up && West) return 1672;
if (Age == 7 && East && !North && South && Up && !West) return 1673;
if (Age == 7 && East && !North && South && !Up && West) return 1674;
if (Age == 7 && East && !North && South && !Up && !West) return 1675;
if (Age == 7 && East && !North && !South && Up && West) return 1676;
if (Age == 7 && East && !North && !South && Up && !West) return 1677;
if (Age == 7 && East && !North && !South && !Up && West) return 1678;
if (Age == 7 && East && !North && !South && !Up && !West) return 1679;
if (Age == 7 && !East && North && South && Up && West) return 1680;
if (Age == 7 && !East && North && South && Up && !West) return 1681;
if (Age == 7 && !East && North && South && !Up && West) return 1682;
if (Age == 7 && !East && North && South && !Up && !West) return 1683;
if (Age == 7 && !East && North && !South && Up && West) return 1684;
if (Age == 7 && !East && North && !South && Up && !West) return 1685;
if (Age == 7 && !East && North && !South && !Up && West) return 1686;
if (Age == 7 && !East && North && !South && !Up && !West) return 1687;
if (Age == 7 && !East && !North && South && Up && West) return 1688;
if (Age == 7 && !East && !North && South && Up && !West) return 1689;
if (Age == 7 && !East && !North && South && !Up && West) return 1690;
if (Age == 7 && !East && !North && South && !Up && !West) return 1691;
if (Age == 7 && !East && !North && !South && Up && West) return 1692;
if (Age == 7 && !East && !North && !South && Up && !West) return 1693;
if (Age == 7 && !East && !North && !South && !Up && West) return 1694;
if (Age == 7 && !East && !North && !South && !Up && !West) return 1695;
if (Age == 8 && East && North && South && Up && West) return 1696;
if (Age == 8 && East && North && South && Up && !West) return 1697;
if (Age == 8 && East && North && South && !Up && West) return 1698;
if (Age == 8 && East && North && South && !Up && !West) return 1699;
if (Age == 8 && East && North && !South && Up && West) return 1700;
if (Age == 8 && East && North && !South && Up && !West) return 1701;
if (Age == 8 && East && North && !South && !Up && West) return 1702;
if (Age == 8 && East && North && !South && !Up && !West) return 1703;
if (Age == 8 && East && !North && South && Up && West) return 1704;
if (Age == 8 && East && !North && South && Up && !West) return 1705;
if (Age == 8 && East && !North && South && !Up && West) return 1706;
if (Age == 8 && East && !North && South && !Up && !West) return 1707;
if (Age == 8 && East && !North && !South && Up && West) return 1708;
if (Age == 8 && East && !North && !South && Up && !West) return 1709;
if (Age == 8 && East && !North && !South && !Up && West) return 1710;
if (Age == 8 && East && !North && !South && !Up && !West) return 1711;
if (Age == 8 && !East && North && South && Up && West) return 1712;
if (Age == 8 && !East && North && South && Up && !West) return 1713;
if (Age == 8 && !East && North && South && !Up && West) return 1714;
if (Age == 8 && !East && North && South && !Up && !West) return 1715;
if (Age == 8 && !East && North && !South && Up && West) return 1716;
if (Age == 8 && !East && North && !South && Up && !West) return 1717;
if (Age == 8 && !East && North && !South && !Up && West) return 1718;
if (Age == 8 && !East && North && !South && !Up && !West) return 1719;
if (Age == 8 && !East && !North && South && Up && West) return 1720;
if (Age == 8 && !East && !North && South && Up && !West) return 1721;
if (Age == 8 && !East && !North && South && !Up && West) return 1722;
if (Age == 8 && !East && !North && South && !Up && !West) return 1723;
if (Age == 8 && !East && !North && !South && Up && West) return 1724;
if (Age == 8 && !East && !North && !South && Up && !West) return 1725;
if (Age == 8 && !East && !North && !South && !Up && West) return 1726;
if (Age == 8 && !East && !North && !South && !Up && !West) return 1727;
if (Age == 9 && East && North && South && Up && West) return 1728;
if (Age == 9 && East && North && South && Up && !West) return 1729;
if (Age == 9 && East && North && South && !Up && West) return 1730;
if (Age == 9 && East && North && South && !Up && !West) return 1731;
if (Age == 9 && East && North && !South && Up && West) return 1732;
if (Age == 9 && East && North && !South && Up && !West) return 1733;
if (Age == 9 && East && North && !South && !Up && West) return 1734;
if (Age == 9 && East && North && !South && !Up && !West) return 1735;
if (Age == 9 && East && !North && South && Up && West) return 1736;
if (Age == 9 && East && !North && South && Up && !West) return 1737;
if (Age == 9 && East && !North && South && !Up && West) return 1738;
if (Age == 9 && East && !North && South && !Up && !West) return 1739;
if (Age == 9 && East && !North && !South && Up && West) return 1740;
if (Age == 9 && East && !North && !South && Up && !West) return 1741;
if (Age == 9 && East && !North && !South && !Up && West) return 1742;
if (Age == 9 && East && !North && !South && !Up && !West) return 1743;
if (Age == 9 && !East && North && South && Up && West) return 1744;
if (Age == 9 && !East && North && South && Up && !West) return 1745;
if (Age == 9 && !East && North && South && !Up && West) return 1746;
if (Age == 9 && !East && North && South && !Up && !West) return 1747;
if (Age == 9 && !East && North && !South && Up && West) return 1748;
if (Age == 9 && !East && North && !South && Up && !West) return 1749;
if (Age == 9 && !East && North && !South && !Up && West) return 1750;
if (Age == 9 && !East && North && !South && !Up && !West) return 1751;
if (Age == 9 && !East && !North && South && Up && West) return 1752;
if (Age == 9 && !East && !North && South && Up && !West) return 1753;
if (Age == 9 && !East && !North && South && !Up && West) return 1754;
if (Age == 9 && !East && !North && South && !Up && !West) return 1755;
if (Age == 9 && !East && !North && !South && Up && West) return 1756;
if (Age == 9 && !East && !North && !South && Up && !West) return 1757;
if (Age == 9 && !East && !North && !South && !Up && West) return 1758;
if (Age == 9 && !East && !North && !South && !Up && !West) return 1759;
if (Age == 10 && East && North && South && Up && West) return 1760;
if (Age == 10 && East && North && South && Up && !West) return 1761;
if (Age == 10 && East && North && South && !Up && West) return 1762;
if (Age == 10 && East && North && South && !Up && !West) return 1763;
if (Age == 10 && East && North && !South && Up && West) return 1764;
if (Age == 10 && East && North && !South && Up && !West) return 1765;
if (Age == 10 && East && North && !South && !Up && West) return 1766;
if (Age == 10 && East && North && !South && !Up && !West) return 1767;
if (Age == 10 && East && !North && South && Up && West) return 1768;
if (Age == 10 && East && !North && South && Up && !West) return 1769;
if (Age == 10 && East && !North && South && !Up && West) return 1770;
if (Age == 10 && East && !North && South && !Up && !West) return 1771;
if (Age == 10 && East && !North && !South && Up && West) return 1772;
if (Age == 10 && East && !North && !South && Up && !West) return 1773;
if (Age == 10 && East && !North && !South && !Up && West) return 1774;
if (Age == 10 && East && !North && !South && !Up && !West) return 1775;
if (Age == 10 && !East && North && South && Up && West) return 1776;
if (Age == 10 && !East && North && South && Up && !West) return 1777;
if (Age == 10 && !East && North && South && !Up && West) return 1778;
if (Age == 10 && !East && North && South && !Up && !West) return 1779;
if (Age == 10 && !East && North && !South && Up && West) return 1780;
if (Age == 10 && !East && North && !South && Up && !West) return 1781;
if (Age == 10 && !East && North && !South && !Up && West) return 1782;
if (Age == 10 && !East && North && !South && !Up && !West) return 1783;
if (Age == 10 && !East && !North && South && Up && West) return 1784;
if (Age == 10 && !East && !North && South && Up && !West) return 1785;
if (Age == 10 && !East && !North && South && !Up && West) return 1786;
if (Age == 10 && !East && !North && South && !Up && !West) return 1787;
if (Age == 10 && !East && !North && !South && Up && West) return 1788;
if (Age == 10 && !East && !North && !South && Up && !West) return 1789;
if (Age == 10 && !East && !North && !South && !Up && West) return 1790;
if (Age == 10 && !East && !North && !South && !Up && !West) return 1791;
if (Age == 11 && East && North && South && Up && West) return 1792;
if (Age == 11 && East && North && South && Up && !West) return 1793;
if (Age == 11 && East && North && South && !Up && West) return 1794;
if (Age == 11 && East && North && South && !Up && !West) return 1795;
if (Age == 11 && East && North && !South && Up && West) return 1796;
if (Age == 11 && East && North && !South && Up && !West) return 1797;
if (Age == 11 && East && North && !South && !Up && West) return 1798;
if (Age == 11 && East && North && !South && !Up && !West) return 1799;
if (Age == 11 && East && !North && South && Up && West) return 1800;
if (Age == 11 && East && !North && South && Up && !West) return 1801;
if (Age == 11 && East && !North && South && !Up && West) return 1802;
if (Age == 11 && East && !North && South && !Up && !West) return 1803;
if (Age == 11 && East && !North && !South && Up && West) return 1804;
if (Age == 11 && East && !North && !South && Up && !West) return 1805;
if (Age == 11 && East && !North && !South && !Up && West) return 1806;
if (Age == 11 && East && !North && !South && !Up && !West) return 1807;
if (Age == 11 && !East && North && South && Up && West) return 1808;
if (Age == 11 && !East && North && South && Up && !West) return 1809;
if (Age == 11 && !East && North && South && !Up && West) return 1810;
if (Age == 11 && !East && North && South && !Up && !West) return 1811;
if (Age == 11 && !East && North && !South && Up && West) return 1812;
if (Age == 11 && !East && North && !South && Up && !West) return 1813;
if (Age == 11 && !East && North && !South && !Up && West) return 1814;
if (Age == 11 && !East && North && !South && !Up && !West) return 1815;
if (Age == 11 && !East && !North && South && Up && West) return 1816;
if (Age == 11 && !East && !North && South && Up && !West) return 1817;
if (Age == 11 && !East && !North && South && !Up && West) return 1818;
if (Age == 11 && !East && !North && South && !Up && !West) return 1819;
if (Age == 11 && !East && !North && !South && Up && West) return 1820;
if (Age == 11 && !East && !North && !South && Up && !West) return 1821;
if (Age == 11 && !East && !North && !South && !Up && West) return 1822;
if (Age == 11 && !East && !North && !South && !Up && !West) return 1823;
if (Age == 12 && East && North && South && Up && West) return 1824;
if (Age == 12 && East && North && South && Up && !West) return 1825;
if (Age == 12 && East && North && South && !Up && West) return 1826;
if (Age == 12 && East && North && South && !Up && !West) return 1827;
if (Age == 12 && East && North && !South && Up && West) return 1828;
if (Age == 12 && East && North && !South && Up && !West) return 1829;
if (Age == 12 && East && North && !South && !Up && West) return 1830;
if (Age == 12 && East && North && !South && !Up && !West) return 1831;
if (Age == 12 && East && !North && South && Up && West) return 1832;
if (Age == 12 && East && !North && South && Up && !West) return 1833;
if (Age == 12 && East && !North && South && !Up && West) return 1834;
if (Age == 12 && East && !North && South && !Up && !West) return 1835;
if (Age == 12 && East && !North && !South && Up && West) return 1836;
if (Age == 12 && East && !North && !South && Up && !West) return 1837;
if (Age == 12 && East && !North && !South && !Up && West) return 1838;
if (Age == 12 && East && !North && !South && !Up && !West) return 1839;
if (Age == 12 && !East && North && South && Up && West) return 1840;
if (Age == 12 && !East && North && South && Up && !West) return 1841;
if (Age == 12 && !East && North && South && !Up && West) return 1842;
if (Age == 12 && !East && North && South && !Up && !West) return 1843;
if (Age == 12 && !East && North && !South && Up && West) return 1844;
if (Age == 12 && !East && North && !South && Up && !West) return 1845;
if (Age == 12 && !East && North && !South && !Up && West) return 1846;
if (Age == 12 && !East && North && !South && !Up && !West) return 1847;
if (Age == 12 && !East && !North && South && Up && West) return 1848;
if (Age == 12 && !East && !North && South && Up && !West) return 1849;
if (Age == 12 && !East && !North && South && !Up && West) return 1850;
if (Age == 12 && !East && !North && South && !Up && !West) return 1851;
if (Age == 12 && !East && !North && !South && Up && West) return 1852;
if (Age == 12 && !East && !North && !South && Up && !West) return 1853;
if (Age == 12 && !East && !North && !South && !Up && West) return 1854;
if (Age == 12 && !East && !North && !South && !Up && !West) return 1855;
if (Age == 13 && East && North && South && Up && West) return 1856;
if (Age == 13 && East && North && South && Up && !West) return 1857;
if (Age == 13 && East && North && South && !Up && West) return 1858;
if (Age == 13 && East && North && South && !Up && !West) return 1859;
if (Age == 13 && East && North && !South && Up && West) return 1860;
if (Age == 13 && East && North && !South && Up && !West) return 1861;
if (Age == 13 && East && North && !South && !Up && West) return 1862;
if (Age == 13 && East && North && !South && !Up && !West) return 1863;
if (Age == 13 && East && !North && South && Up && West) return 1864;
if (Age == 13 && East && !North && South && Up && !West) return 1865;
if (Age == 13 && East && !North && South && !Up && West) return 1866;
if (Age == 13 && East && !North && South && !Up && !West) return 1867;
if (Age == 13 && East && !North && !South && Up && West) return 1868;
if (Age == 13 && East && !North && !South && Up && !West) return 1869;
if (Age == 13 && East && !North && !South && !Up && West) return 1870;
if (Age == 13 && East && !North && !South && !Up && !West) return 1871;
if (Age == 13 && !East && North && South && Up && West) return 1872;
if (Age == 13 && !East && North && South && Up && !West) return 1873;
if (Age == 13 && !East && North && South && !Up && West) return 1874;
if (Age == 13 && !East && North && South && !Up && !West) return 1875;
if (Age == 13 && !East && North && !South && Up && West) return 1876;
if (Age == 13 && !East && North && !South && Up && !West) return 1877;
if (Age == 13 && !East && North && !South && !Up && West) return 1878;
if (Age == 13 && !East && North && !South && !Up && !West) return 1879;
if (Age == 13 && !East && !North && South && Up && West) return 1880;
if (Age == 13 && !East && !North && South && Up && !West) return 1881;
if (Age == 13 && !East && !North && South && !Up && West) return 1882;
if (Age == 13 && !East && !North && South && !Up && !West) return 1883;
if (Age == 13 && !East && !North && !South && Up && West) return 1884;
if (Age == 13 && !East && !North && !South && Up && !West) return 1885;
if (Age == 13 && !East && !North && !South && !Up && West) return 1886;
if (Age == 13 && !East && !North && !South && !Up && !West) return 1887;
if (Age == 14 && East && North && South && Up && West) return 1888;
if (Age == 14 && East && North && South && Up && !West) return 1889;
if (Age == 14 && East && North && South && !Up && West) return 1890;
if (Age == 14 && East && North && South && !Up && !West) return 1891;
if (Age == 14 && East && North && !South && Up && West) return 1892;
if (Age == 14 && East && North && !South && Up && !West) return 1893;
if (Age == 14 && East && North && !South && !Up && West) return 1894;
if (Age == 14 && East && North && !South && !Up && !West) return 1895;
if (Age == 14 && East && !North && South && Up && West) return 1896;
if (Age == 14 && East && !North && South && Up && !West) return 1897;
if (Age == 14 && East && !North && South && !Up && West) return 1898;
if (Age == 14 && East && !North && South && !Up && !West) return 1899;
if (Age == 14 && East && !North && !South && Up && West) return 1900;
if (Age == 14 && East && !North && !South && Up && !West) return 1901;
if (Age == 14 && East && !North && !South && !Up && West) return 1902;
if (Age == 14 && East && !North && !South && !Up && !West) return 1903;
if (Age == 14 && !East && North && South && Up && West) return 1904;
if (Age == 14 && !East && North && South && Up && !West) return 1905;
if (Age == 14 && !East && North && South && !Up && West) return 1906;
if (Age == 14 && !East && North && South && !Up && !West) return 1907;
if (Age == 14 && !East && North && !South && Up && West) return 1908;
if (Age == 14 && !East && North && !South && Up && !West) return 1909;
if (Age == 14 && !East && North && !South && !Up && West) return 1910;
if (Age == 14 && !East && North && !South && !Up && !West) return 1911;
if (Age == 14 && !East && !North && South && Up && West) return 1912;
if (Age == 14 && !East && !North && South && Up && !West) return 1913;
if (Age == 14 && !East && !North && South && !Up && West) return 1914;
if (Age == 14 && !East && !North && South && !Up && !West) return 1915;
if (Age == 14 && !East && !North && !South && Up && West) return 1916;
if (Age == 14 && !East && !North && !South && Up && !West) return 1917;
if (Age == 14 && !East && !North && !South && !Up && West) return 1918;
if (Age == 14 && !East && !North && !South && !Up && !West) return 1919;
if (Age == 15 && East && North && South && Up && West) return 1920;
if (Age == 15 && East && North && South && Up && !West) return 1921;
if (Age == 15 && East && North && South && !Up && West) return 1922;
if (Age == 15 && East && North && South && !Up && !West) return 1923;
if (Age == 15 && East && North && !South && Up && West) return 1924;
if (Age == 15 && East && North && !South && Up && !West) return 1925;
if (Age == 15 && East && North && !South && !Up && West) return 1926;
if (Age == 15 && East && North && !South && !Up && !West) return 1927;
if (Age == 15 && East && !North && South && Up && West) return 1928;
if (Age == 15 && East && !North && South && Up && !West) return 1929;
if (Age == 15 && East && !North && South && !Up && West) return 1930;
if (Age == 15 && East && !North && South && !Up && !West) return 1931;
if (Age == 15 && East && !North && !South && Up && West) return 1932;
if (Age == 15 && East && !North && !South && Up && !West) return 1933;
if (Age == 15 && East && !North && !South && !Up && West) return 1934;
if (Age == 15 && East && !North && !South && !Up && !West) return 1935;
if (Age == 15 && !East && North && South && Up && West) return 1936;
if (Age == 15 && !East && North && South && Up && !West) return 1937;
if (Age == 15 && !East && North && South && !Up && West) return 1938;
if (Age == 15 && !East && North && South && !Up && !West) return 1939;
if (Age == 15 && !East && North && !South && Up && West) return 1940;
if (Age == 15 && !East && North && !South && Up && !West) return 1941;
if (Age == 15 && !East && North && !South && !Up && West) return 1942;
if (Age == 15 && !East && North && !South && !Up && !West) return 1943;
if (Age == 15 && !East && !North && South && Up && West) return 1944;
if (Age == 15 && !East && !North && South && Up && !West) return 1945;
if (Age == 15 && !East && !North && South && !Up && West) return 1946;
if (Age == 15 && !East && !North && South && !Up && !West) return 1947;
if (Age == 15 && !East && !North && !South && Up && West) return 1948;
if (Age == 15 && !East && !North && !South && Up && !West) return 1949;
if (Age == 15 && !East && !North && !South && !Up && West) return 1950;
return 1951;
}
short Fire();
unsigned char Age(short ID);
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool Up(short ID);
bool West(short ID);
}
namespace FireCoral
{
constexpr short FireCoral()
{
return 9537;
}
}
namespace FireCoralBlock
{
constexpr short FireCoralBlock()
{
return 9518;
}
}
namespace FireCoralFan
{
constexpr short FireCoralFan()
{
return 9557;
}
}
namespace FireCoralWallFan
{
constexpr short FireCoralWallFan(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9625;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9627;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9629;
return 9631;
}
short FireCoralWallFan();
eBlockFace Facing(short ID);
}
namespace FletchingTable
{
constexpr short FletchingTable()
{
return 14820;
}
}
namespace FlowerPot
{
constexpr short FlowerPot()
{
return 6305;
}
}
namespace FrostedIce
{
constexpr short FrostedIce(unsigned char Age)
{
if (Age == 0) return 9249;
if (Age == 1) return 9250;
if (Age == 2) return 9251;
return 9252;
}
short FrostedIce();
unsigned char Age(short ID);
}
namespace Furnace
{
constexpr short Furnace(eBlockFace Facing, bool Lit)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Lit) return 3373;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Lit) return 3374;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Lit) return 3375;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Lit) return 3376;
if (Facing == eBlockFace::BLOCK_FACE_XM && Lit) return 3377;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Lit) return 3378;
if (Facing == eBlockFace::BLOCK_FACE_XP && Lit) return 3379;
return 3380;
}
short Furnace();
eBlockFace Facing(short ID);
bool Lit(short ID);
}
namespace GildedBlackstone
{
constexpr short GildedBlackstone()
{
return 16664;
}
}
namespace Glass
{
constexpr short Glass()
{
return 231;
}
}
namespace GlassPane
{
constexpr short GlassPane(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 4733;
if (East && North && South && !West) return 4734;
if (East && North && !South && West) return 4737;
if (East && North && !South && !West) return 4738;
if (East && !North && South && West) return 4741;
if (East && !North && South && !West) return 4742;
if (East && !North && !South && West) return 4745;
if (East && !North && !South && !West) return 4746;
if (!East && North && South && West) return 4749;
if (!East && North && South && !West) return 4750;
if (!East && North && !South && West) return 4753;
if (!East && North && !South && !West) return 4754;
if (!East && !North && South && West) return 4757;
if (!East && !North && South && !West) return 4758;
if (!East && !North && !South && West) return 4761;
return 4762;
}
short GlassPane();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace Glowstone
{
constexpr short Glowstone()
{
return 4013;
}
}
namespace GoldBlock
{
constexpr short GoldBlock()
{
return 1427;
}
}
namespace GoldOre
{
constexpr short GoldOre()
{
return 69;
}
}
namespace Granite
{
constexpr short Granite()
{
return 2;
}
}
namespace GraniteSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short GraniteSlab(enum Type Type)
{
if (Type == Type::Top) return 10838;
if (Type == Type::Bottom) return 10840;
return 10842;
}
short GraniteSlab();
enum Type Type(short ID);
}
namespace GraniteStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short GraniteStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 10390;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 10392;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 10394;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 10396;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 10398;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 10400;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10402;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10404;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10406;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10408;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 10410;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 10412;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 10414;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 10416;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 10418;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 10420;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10422;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10424;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10426;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 10428;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 10430;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 10432;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 10434;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 10436;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 10438;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 10440;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10442;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10444;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10446;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10448;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 10450;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 10452;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 10454;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 10456;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 10458;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 10460;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10462;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10464;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10466;
return 10468;
}
short GraniteStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace GraniteWall
{
enum class East
{
None,
Low,
Tall
};
enum class North
{
None,
Low,
Tall
};
enum class South
{
None,
Low,
Tall
};
enum class West
{
None,
Low,
Tall
};
constexpr short GraniteWall(enum East East, enum North North, enum South South, bool Up, enum West West)
{
if (East == East::None && North == North::None && South == South::None && Up && West == West::None) return 12166;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Low) return 12167;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Tall) return 12168;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::None) return 12172;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Low) return 12173;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Tall) return 12174;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::None) return 12178;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Low) return 12179;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Tall) return 12180;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::None) return 12184;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Low) return 12185;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Tall) return 12186;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::None) return 12190;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Low) return 12191;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Tall) return 12192;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::None) return 12196;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Low) return 12197;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Tall) return 12198;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::None) return 12202;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Low) return 12203;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Tall) return 12204;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::None) return 12208;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Low) return 12209;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Tall) return 12210;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::None) return 12214;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Low) return 12215;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Tall) return 12216;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::None) return 12220;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Low) return 12221;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Tall) return 12222;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::None) return 12226;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Low) return 12227;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Tall) return 12228;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::None) return 12232;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Low) return 12233;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 12234;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::None) return 12238;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Low) return 12239;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Tall) return 12240;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::None) return 12244;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Low) return 12245;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Tall) return 12246;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::None) return 12250;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Low) return 12251;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Tall) return 12252;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::None) return 12256;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Low) return 12257;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 12258;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::None) return 12262;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Low) return 12263;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 12264;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::None) return 12268;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 12269;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 12270;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::None) return 12274;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Low) return 12275;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Tall) return 12276;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::None) return 12280;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Low) return 12281;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Tall) return 12282;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::None) return 12286;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Low) return 12287;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Tall) return 12288;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::None) return 12292;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Low) return 12293;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Tall) return 12294;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::None) return 12298;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Low) return 12299;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Tall) return 12300;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::None) return 12304;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Low) return 12305;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Tall) return 12306;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::None) return 12310;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Low) return 12311;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Tall) return 12312;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::None) return 12316;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Low) return 12317;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Tall) return 12318;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::None) return 12322;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Low) return 12323;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Tall) return 12324;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::None) return 12328;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Low) return 12329;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Tall) return 12330;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::None) return 12334;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Low) return 12335;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Tall) return 12336;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::None) return 12340;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Low) return 12341;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 12342;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::None) return 12346;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Low) return 12347;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Tall) return 12348;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::None) return 12352;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Low) return 12353;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Tall) return 12354;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::None) return 12358;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Low) return 12359;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Tall) return 12360;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::None) return 12364;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Low) return 12365;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 12366;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::None) return 12370;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Low) return 12371;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 12372;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::None) return 12376;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 12377;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 12378;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::None) return 12382;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Low) return 12383;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Tall) return 12384;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::None) return 12388;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Low) return 12389;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Tall) return 12390;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::None) return 12394;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Low) return 12395;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Tall) return 12396;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::None) return 12400;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Low) return 12401;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Tall) return 12402;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::None) return 12406;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Low) return 12407;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Tall) return 12408;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::None) return 12412;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Low) return 12413;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Tall) return 12414;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::None) return 12418;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Low) return 12419;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Tall) return 12420;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::None) return 12424;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Low) return 12425;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Tall) return 12426;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::None) return 12430;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Low) return 12431;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Tall) return 12432;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::None) return 12436;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Low) return 12437;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Tall) return 12438;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::None) return 12442;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Low) return 12443;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Tall) return 12444;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::None) return 12448;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Low) return 12449;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 12450;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::None) return 12454;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Low) return 12455;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Tall) return 12456;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::None) return 12460;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Low) return 12461;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Tall) return 12462;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::None) return 12466;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Low) return 12467;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Tall) return 12468;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::None) return 12472;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Low) return 12473;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 12474;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::None) return 12478;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Low) return 12479;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 12480;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::None) return 12484;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 12485;
return 12486;
}
short GraniteWall();
enum East East(short ID);
enum North North(short ID);
enum South South(short ID);
bool Up(short ID);
enum West West(short ID);
}
namespace Grass
{
constexpr short Grass()
{
return 1342;
}
}
namespace GrassBlock
{
constexpr short GrassBlock(bool Snowy)
{
if (Snowy) return 8;
return 9;
}
short GrassBlock();
bool Snowy(short ID);
}
namespace GrassPath
{
constexpr short GrassPath()
{
return 9223;
}
}
namespace Gravel
{
constexpr short Gravel()
{
return 68;
}
}
namespace GrayBanner
{
constexpr short GrayBanner(unsigned char Rotation)
{
if (Rotation == 0) return 8009;
if (Rotation == 1) return 8010;
if (Rotation == 2) return 8011;
if (Rotation == 3) return 8012;
if (Rotation == 4) return 8013;
if (Rotation == 5) return 8014;
if (Rotation == 6) return 8015;
if (Rotation == 7) return 8016;
if (Rotation == 8) return 8017;
if (Rotation == 9) return 8018;
if (Rotation == 10) return 8019;
if (Rotation == 11) return 8020;
if (Rotation == 12) return 8021;
if (Rotation == 13) return 8022;
if (Rotation == 14) return 8023;
return 8024;
}
short GrayBanner();
unsigned char Rotation(short ID);
}
namespace GrayBed
{
enum class Part
{
Head,
Foot
};
constexpr short GrayBed(eBlockFace Facing, bool Occupied, enum Part Part)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Head) return 1161;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Foot) return 1162;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Head) return 1163;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Foot) return 1164;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Head) return 1165;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Foot) return 1166;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Head) return 1167;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Foot) return 1168;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Head) return 1169;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Foot) return 1170;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Head) return 1171;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Foot) return 1172;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Head) return 1173;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Foot) return 1174;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Occupied && Part == Part::Head) return 1175;
return 1176;
}
short GrayBed();
eBlockFace Facing(short ID);
bool Occupied(short ID);
enum Part Part(short ID);
}
namespace GrayCarpet
{
constexpr short GrayCarpet()
{
return 7873;
}
}
namespace GrayConcrete
{
constexpr short GrayConcrete()
{
return 9445;
}
}
namespace GrayConcretePowder
{
constexpr short GrayConcretePowder()
{
return 9461;
}
}
namespace GrayGlazedTerracotta
{
constexpr short GrayGlazedTerracotta(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9402;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9403;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9404;
return 9405;
}
short GrayGlazedTerracotta();
eBlockFace Facing(short ID);
}
namespace GrayShulkerBox
{
constexpr short GrayShulkerBox(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9320;
if (Facing == eBlockFace::BLOCK_FACE_XP) return 9321;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9322;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9323;
if (Facing == eBlockFace::BLOCK_FACE_YP) return 9324;
return 9325;
}
short GrayShulkerBox();
eBlockFace Facing(short ID);
}
namespace GrayStainedGlass
{
constexpr short GrayStainedGlass()
{
return 4102;
}
}
namespace GrayStainedGlassPane
{
constexpr short GrayStainedGlassPane(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 7089;
if (East && North && South && !West) return 7090;
if (East && North && !South && West) return 7093;
if (East && North && !South && !West) return 7094;
if (East && !North && South && West) return 7097;
if (East && !North && South && !West) return 7098;
if (East && !North && !South && West) return 7101;
if (East && !North && !South && !West) return 7102;
if (!East && North && South && West) return 7105;
if (!East && North && South && !West) return 7106;
if (!East && North && !South && West) return 7109;
if (!East && North && !South && !West) return 7110;
if (!East && !North && South && West) return 7113;
if (!East && !North && South && !West) return 7114;
if (!East && !North && !South && West) return 7117;
return 7118;
}
short GrayStainedGlassPane();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace GrayTerracotta
{
constexpr short GrayTerracotta()
{
return 6854;
}
}
namespace GrayWallBanner
{
constexpr short GrayWallBanner(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8181;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8182;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 8183;
return 8184;
}
short GrayWallBanner();
eBlockFace Facing(short ID);
}
namespace GrayWool
{
constexpr short GrayWool()
{
return 1391;
}
}
namespace GreenBanner
{
constexpr short GreenBanner(unsigned char Rotation)
{
if (Rotation == 0) return 8105;
if (Rotation == 1) return 8106;
if (Rotation == 2) return 8107;
if (Rotation == 3) return 8108;
if (Rotation == 4) return 8109;
if (Rotation == 5) return 8110;
if (Rotation == 6) return 8111;
if (Rotation == 7) return 8112;
if (Rotation == 8) return 8113;
if (Rotation == 9) return 8114;
if (Rotation == 10) return 8115;
if (Rotation == 11) return 8116;
if (Rotation == 12) return 8117;
if (Rotation == 13) return 8118;
if (Rotation == 14) return 8119;
return 8120;
}
short GreenBanner();
unsigned char Rotation(short ID);
}
namespace GreenBed
{
enum class Part
{
Head,
Foot
};
constexpr short GreenBed(eBlockFace Facing, bool Occupied, enum Part Part)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Head) return 1257;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Foot) return 1258;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Head) return 1259;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Foot) return 1260;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Head) return 1261;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Foot) return 1262;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Head) return 1263;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Foot) return 1264;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Head) return 1265;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Foot) return 1266;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Head) return 1267;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Foot) return 1268;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Head) return 1269;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Foot) return 1270;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Occupied && Part == Part::Head) return 1271;
return 1272;
}
short GreenBed();
eBlockFace Facing(short ID);
bool Occupied(short ID);
enum Part Part(short ID);
}
namespace GreenCarpet
{
constexpr short GreenCarpet()
{
return 7879;
}
}
namespace GreenConcrete
{
constexpr short GreenConcrete()
{
return 9451;
}
}
namespace GreenConcretePowder
{
constexpr short GreenConcretePowder()
{
return 9467;
}
}
namespace GreenGlazedTerracotta
{
constexpr short GreenGlazedTerracotta(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9426;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9427;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9428;
return 9429;
}
short GreenGlazedTerracotta();
eBlockFace Facing(short ID);
}
namespace GreenShulkerBox
{
constexpr short GreenShulkerBox(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9356;
if (Facing == eBlockFace::BLOCK_FACE_XP) return 9357;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9358;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9359;
if (Facing == eBlockFace::BLOCK_FACE_YP) return 9360;
return 9361;
}
short GreenShulkerBox();
eBlockFace Facing(short ID);
}
namespace GreenStainedGlass
{
constexpr short GreenStainedGlass()
{
return 4108;
}
}
namespace GreenStainedGlassPane
{
constexpr short GreenStainedGlassPane(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 7281;
if (East && North && South && !West) return 7282;
if (East && North && !South && West) return 7285;
if (East && North && !South && !West) return 7286;
if (East && !North && South && West) return 7289;
if (East && !North && South && !West) return 7290;
if (East && !North && !South && West) return 7293;
if (East && !North && !South && !West) return 7294;
if (!East && North && South && West) return 7297;
if (!East && North && South && !West) return 7298;
if (!East && North && !South && West) return 7301;
if (!East && North && !South && !West) return 7302;
if (!East && !North && South && West) return 7305;
if (!East && !North && South && !West) return 7306;
if (!East && !North && !South && West) return 7309;
return 7310;
}
short GreenStainedGlassPane();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace GreenTerracotta
{
constexpr short GreenTerracotta()
{
return 6860;
}
}
namespace GreenWallBanner
{
constexpr short GreenWallBanner(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8205;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8206;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 8207;
return 8208;
}
short GreenWallBanner();
eBlockFace Facing(short ID);
}
namespace GreenWool
{
constexpr short GreenWool()
{
return 1397;
}
}
namespace Grindstone
{
enum class Face
{
Floor,
Wall,
Ceiling
};
constexpr short Grindstone(enum Face Face, eBlockFace Facing)
{
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM) return 14821;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP) return 14822;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM) return 14823;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP) return 14824;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM) return 14825;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP) return 14826;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM) return 14827;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP) return 14828;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM) return 14829;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP) return 14830;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM) return 14831;
return 14832;
}
short Grindstone();
enum Face Face(short ID);
eBlockFace Facing(short ID);
}
namespace HayBale
{
enum class Axis
{
X,
Y,
Z
};
constexpr short HayBale(enum Axis Axis)
{
if (Axis == Axis::X) return 7863;
if (Axis == Axis::Y) return 7864;
return 7865;
}
short HayBale();
enum Axis Axis(short ID);
}
namespace HeavyWeightedPressurePlate
{
constexpr short HeavyWeightedPressurePlate(unsigned char Power)
{
if (Power == 0) return 6662;
if (Power == 1) return 6663;
if (Power == 2) return 6664;
if (Power == 3) return 6665;
if (Power == 4) return 6666;
if (Power == 5) return 6667;
if (Power == 6) return 6668;
if (Power == 7) return 6669;
if (Power == 8) return 6670;
if (Power == 9) return 6671;
if (Power == 10) return 6672;
if (Power == 11) return 6673;
if (Power == 12) return 6674;
if (Power == 13) return 6675;
if (Power == 14) return 6676;
return 6677;
}
short HeavyWeightedPressurePlate();
unsigned char Power(short ID);
}
namespace HoneyBlock
{
constexpr short HoneyBlock()
{
return 15824;
}
}
namespace HoneycombBlock
{
constexpr short HoneycombBlock()
{
return 15825;
}
}
namespace Hopper
{
constexpr short Hopper(bool Enabled, eBlockFace Facing)
{
if (Enabled && Facing == eBlockFace::BLOCK_FACE_YM) return 6728;
if (Enabled && Facing == eBlockFace::BLOCK_FACE_ZM) return 6729;
if (Enabled && Facing == eBlockFace::BLOCK_FACE_ZP) return 6730;
if (Enabled && Facing == eBlockFace::BLOCK_FACE_XM) return 6731;
if (Enabled && Facing == eBlockFace::BLOCK_FACE_XP) return 6732;
if (!Enabled && Facing == eBlockFace::BLOCK_FACE_YM) return 6733;
if (!Enabled && Facing == eBlockFace::BLOCK_FACE_ZM) return 6734;
if (!Enabled && Facing == eBlockFace::BLOCK_FACE_ZP) return 6735;
if (!Enabled && Facing == eBlockFace::BLOCK_FACE_XM) return 6736;
return 6737;
}
short Hopper();
bool Enabled(short ID);
eBlockFace Facing(short ID);
}
namespace HornCoral
{
constexpr short HornCoral()
{
return 9539;
}
}
namespace HornCoralBlock
{
constexpr short HornCoralBlock()
{
return 9519;
}
}
namespace HornCoralFan
{
constexpr short HornCoralFan()
{
return 9559;
}
}
namespace HornCoralWallFan
{
constexpr short HornCoralWallFan(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9633;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9635;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9637;
return 9639;
}
short HornCoralWallFan();
eBlockFace Facing(short ID);
}
namespace Ice
{
constexpr short Ice()
{
return 3929;
}
}
namespace InfestedChiseledStoneBricks
{
constexpr short InfestedChiseledStoneBricks()
{
return 4504;
}
}
namespace InfestedCobblestone
{
constexpr short InfestedCobblestone()
{
return 4500;
}
}
namespace InfestedCrackedStoneBricks
{
constexpr short InfestedCrackedStoneBricks()
{
return 4503;
}
}
namespace InfestedMossyStoneBricks
{
constexpr short InfestedMossyStoneBricks()
{
return 4502;
}
}
namespace InfestedStone
{
constexpr short InfestedStone()
{
return 4499;
}
}
namespace InfestedStoneBricks
{
constexpr short InfestedStoneBricks()
{
return 4501;
}
}
namespace IronBars
{
constexpr short IronBars(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 4699;
if (East && North && South && !West) return 4700;
if (East && North && !South && West) return 4703;
if (East && North && !South && !West) return 4704;
if (East && !North && South && West) return 4707;
if (East && !North && South && !West) return 4708;
if (East && !North && !South && West) return 4711;
if (East && !North && !South && !West) return 4712;
if (!East && North && South && West) return 4715;
if (!East && North && South && !West) return 4716;
if (!East && North && !South && West) return 4719;
if (!East && North && !South && !West) return 4720;
if (!East && !North && South && West) return 4723;
if (!East && !North && South && !West) return 4724;
if (!East && !North && !South && West) return 4727;
return 4728;
}
short IronBars();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace IronBlock
{
constexpr short IronBlock()
{
return 1428;
}
}
namespace IronDoor
{
enum class Half
{
Upper,
Lower
};
enum class Hinge
{
Left,
Right
};
constexpr short IronDoor(eBlockFace Facing, enum Half Half, enum Hinge Hinge, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 3809;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 3810;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 3811;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 3812;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 3813;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 3814;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 3815;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 3816;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 3817;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 3818;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 3819;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 3820;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 3821;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 3822;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 3823;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 3824;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 3825;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 3826;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 3827;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 3828;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 3829;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 3830;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 3831;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 3832;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 3833;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 3834;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 3835;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 3836;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 3837;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 3838;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 3839;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 3840;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 3841;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 3842;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 3843;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 3844;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 3845;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 3846;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 3847;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 3848;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 3849;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 3850;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 3851;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 3852;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 3853;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 3854;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 3855;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 3856;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 3857;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 3858;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 3859;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 3860;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 3861;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 3862;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 3863;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 3864;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 3865;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 3866;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 3867;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 3868;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 3869;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 3870;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 3871;
return 3872;
}
short IronDoor();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Hinge Hinge(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace IronOre
{
constexpr short IronOre()
{
return 70;
}
}
namespace IronTrapdoor
{
enum class Half
{
Top,
Bottom
};
constexpr short IronTrapdoor(eBlockFace Facing, enum Half Half, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Open && Powered) return 7538;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Open && !Powered) return 7540;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && !Open && Powered) return 7542;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && !Open && !Powered) return 7544;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Open && Powered) return 7546;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Open && !Powered) return 7548;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && !Open && Powered) return 7550;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && !Open && !Powered) return 7552;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Open && Powered) return 7554;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Open && !Powered) return 7556;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && !Open && Powered) return 7558;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && !Open && !Powered) return 7560;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Open && Powered) return 7562;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Open && !Powered) return 7564;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && !Open && Powered) return 7566;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && !Open && !Powered) return 7568;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Open && Powered) return 7570;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Open && !Powered) return 7572;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && !Open && Powered) return 7574;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && !Open && !Powered) return 7576;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Open && Powered) return 7578;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Open && !Powered) return 7580;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && !Open && Powered) return 7582;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && !Open && !Powered) return 7584;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Open && Powered) return 7586;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Open && !Powered) return 7588;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && !Open && Powered) return 7590;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && !Open && !Powered) return 7592;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Open && Powered) return 7594;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Open && !Powered) return 7596;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && !Open && Powered) return 7598;
return 7600;
}
short IronTrapdoor();
eBlockFace Facing(short ID);
enum Half Half(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace JackOLantern
{
constexpr short JackOLantern(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 4020;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 4021;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 4022;
return 4023;
}
short JackOLantern();
eBlockFace Facing(short ID);
}
namespace Jigsaw
{
enum class Orientation
{
DownEast,
DownNorth,
DownSouth,
DownWest,
UpEast,
UpNorth,
UpSouth,
UpWest,
WestUp,
EastUp,
NorthUp,
SouthUp
};
constexpr short Jigsaw(enum Orientation Orientation)
{
if (Orientation == Orientation::DownEast) return 15739;
if (Orientation == Orientation::DownNorth) return 15740;
if (Orientation == Orientation::DownSouth) return 15741;
if (Orientation == Orientation::DownWest) return 15742;
if (Orientation == Orientation::UpEast) return 15743;
if (Orientation == Orientation::UpNorth) return 15744;
if (Orientation == Orientation::UpSouth) return 15745;
if (Orientation == Orientation::UpWest) return 15746;
if (Orientation == Orientation::WestUp) return 15747;
if (Orientation == Orientation::EastUp) return 15748;
if (Orientation == Orientation::NorthUp) return 15749;
return 15750;
}
short Jigsaw();
enum Orientation Orientation(short ID);
}
namespace Jukebox
{
constexpr short Jukebox(bool HasRecord)
{
if (HasRecord) return 3964;
return 3965;
}
short Jukebox();
bool HasRecord(short ID);
}
namespace JungleButton
{
enum class Face
{
Floor,
Wall,
Ceiling
};
constexpr short JungleButton(enum Face Face, eBlockFace Facing, bool Powered)
{
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 6418;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 6419;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 6420;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 6421;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 6422;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 6423;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 6424;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 6425;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 6426;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 6427;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 6428;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 6429;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 6430;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 6431;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 6432;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 6433;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 6434;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 6435;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 6436;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 6437;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 6438;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 6439;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 6440;
return 6441;
}
short JungleButton();
enum Face Face(short ID);
eBlockFace Facing(short ID);
bool Powered(short ID);
}
namespace JungleDoor
{
enum class Half
{
Upper,
Lower
};
enum class Hinge
{
Left,
Right
};
constexpr short JungleDoor(eBlockFace Facing, enum Half Half, enum Hinge Hinge, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 8866;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 8867;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 8868;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 8869;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 8870;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 8871;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 8872;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 8873;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 8874;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 8875;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 8876;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 8877;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 8878;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 8879;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 8880;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 8881;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 8882;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 8883;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 8884;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 8885;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 8886;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 8887;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 8888;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 8889;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 8890;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 8891;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 8892;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 8893;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 8894;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 8895;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 8896;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 8897;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 8898;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 8899;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 8900;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 8901;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 8902;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 8903;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 8904;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 8905;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 8906;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 8907;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 8908;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 8909;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 8910;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 8911;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 8912;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 8913;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 8914;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 8915;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 8916;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 8917;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 8918;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 8919;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 8920;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 8921;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 8922;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 8923;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 8924;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 8925;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 8926;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 8927;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 8928;
return 8929;
}
short JungleDoor();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Hinge Hinge(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace JungleFence
{
constexpr short JungleFence(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 8644;
if (East && North && South && !West) return 8645;
if (East && North && !South && West) return 8648;
if (East && North && !South && !West) return 8649;
if (East && !North && South && West) return 8652;
if (East && !North && South && !West) return 8653;
if (East && !North && !South && West) return 8656;
if (East && !North && !South && !West) return 8657;
if (!East && North && South && West) return 8660;
if (!East && North && South && !West) return 8661;
if (!East && North && !South && West) return 8664;
if (!East && North && !South && !West) return 8665;
if (!East && !North && South && West) return 8668;
if (!East && !North && South && !West) return 8669;
if (!East && !North && !South && West) return 8672;
return 8673;
}
short JungleFence();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace JungleFenceGate
{
constexpr short JungleFenceGate(eBlockFace Facing, bool InWall, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && Open && Powered) return 8482;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && Open && !Powered) return 8483;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && !Open && Powered) return 8484;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && !Open && !Powered) return 8485;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && Open && Powered) return 8486;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && Open && !Powered) return 8487;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && !Open && Powered) return 8488;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && !Open && !Powered) return 8489;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && Open && Powered) return 8490;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && Open && !Powered) return 8491;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && !Open && Powered) return 8492;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && !Open && !Powered) return 8493;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && Open && Powered) return 8494;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && Open && !Powered) return 8495;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && !Open && Powered) return 8496;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && !Open && !Powered) return 8497;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && Open && Powered) return 8498;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && Open && !Powered) return 8499;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && !Open && Powered) return 8500;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && !Open && !Powered) return 8501;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && Open && Powered) return 8502;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && Open && !Powered) return 8503;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && !Open && Powered) return 8504;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && !Open && !Powered) return 8505;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && Open && Powered) return 8506;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && Open && !Powered) return 8507;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && !Open && Powered) return 8508;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && !Open && !Powered) return 8509;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && Open && Powered) return 8510;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && Open && !Powered) return 8511;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && !Open && Powered) return 8512;
return 8513;
}
short JungleFenceGate();
eBlockFace Facing(short ID);
bool InWall(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace JungleLeaves
{
constexpr short JungleLeaves(unsigned char Distance, bool Persistent)
{
if (Distance == 1 && Persistent) return 187;
if (Distance == 1 && !Persistent) return 188;
if (Distance == 2 && Persistent) return 189;
if (Distance == 2 && !Persistent) return 190;
if (Distance == 3 && Persistent) return 191;
if (Distance == 3 && !Persistent) return 192;
if (Distance == 4 && Persistent) return 193;
if (Distance == 4 && !Persistent) return 194;
if (Distance == 5 && Persistent) return 195;
if (Distance == 5 && !Persistent) return 196;
if (Distance == 6 && Persistent) return 197;
if (Distance == 6 && !Persistent) return 198;
if (Distance == 7 && Persistent) return 199;
return 200;
}
short JungleLeaves();
unsigned char Distance(short ID);
bool Persistent(short ID);
}
namespace JungleLog
{
enum class Axis
{
X,
Y,
Z
};
constexpr short JungleLog(enum Axis Axis)
{
if (Axis == Axis::X) return 82;
if (Axis == Axis::Y) return 83;
return 84;
}
short JungleLog();
enum Axis Axis(short ID);
}
namespace JunglePlanks
{
constexpr short JunglePlanks()
{
return 18;
}
}
namespace JunglePressurePlate
{
constexpr short JunglePressurePlate(bool Powered)
{
if (Powered) return 3879;
return 3880;
}
short JunglePressurePlate();
bool Powered(short ID);
}
namespace JungleSapling
{
constexpr short JungleSapling(unsigned char Stage)
{
if (Stage == 0) return 27;
return 28;
}
short JungleSapling();
unsigned char Stage(short ID);
}
namespace JungleSign
{
constexpr short JungleSign(unsigned char Rotation)
{
if (Rotation == 0) return 3510;
if (Rotation == 1) return 3512;
if (Rotation == 2) return 3514;
if (Rotation == 3) return 3516;
if (Rotation == 4) return 3518;
if (Rotation == 5) return 3520;
if (Rotation == 6) return 3522;
if (Rotation == 7) return 3524;
if (Rotation == 8) return 3526;
if (Rotation == 9) return 3528;
if (Rotation == 10) return 3530;
if (Rotation == 11) return 3532;
if (Rotation == 12) return 3534;
if (Rotation == 13) return 3536;
if (Rotation == 14) return 3538;
return 3540;
}
short JungleSign();
unsigned char Rotation(short ID);
}
namespace JungleSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short JungleSlab(enum Type Type)
{
if (Type == Type::Top) return 8319;
if (Type == Type::Bottom) return 8321;
return 8323;
}
short JungleSlab();
enum Type Type(short ID);
}
namespace JungleStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short JungleStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 5565;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 5567;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 5569;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 5571;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 5573;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 5575;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5577;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 5579;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5581;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 5583;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 5585;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 5587;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 5589;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 5591;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 5593;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 5595;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5597;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 5599;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5601;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 5603;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 5605;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 5607;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 5609;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 5611;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 5613;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 5615;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5617;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 5619;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5621;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 5623;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 5625;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 5627;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 5629;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 5631;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 5633;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 5635;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5637;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 5639;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5641;
return 5643;
}
short JungleStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace JungleTrapdoor
{
enum class Half
{
Top,
Bottom
};
constexpr short JungleTrapdoor(eBlockFace Facing, enum Half Half, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Open && Powered) return 4304;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Open && !Powered) return 4306;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && !Open && Powered) return 4308;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && !Open && !Powered) return 4310;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Open && Powered) return 4312;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Open && !Powered) return 4314;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && !Open && Powered) return 4316;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && !Open && !Powered) return 4318;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Open && Powered) return 4320;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Open && !Powered) return 4322;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && !Open && Powered) return 4324;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && !Open && !Powered) return 4326;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Open && Powered) return 4328;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Open && !Powered) return 4330;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && !Open && Powered) return 4332;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && !Open && !Powered) return 4334;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Open && Powered) return 4336;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Open && !Powered) return 4338;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && !Open && Powered) return 4340;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && !Open && !Powered) return 4342;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Open && Powered) return 4344;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Open && !Powered) return 4346;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && !Open && Powered) return 4348;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && !Open && !Powered) return 4350;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Open && Powered) return 4352;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Open && !Powered) return 4354;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && !Open && Powered) return 4356;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && !Open && !Powered) return 4358;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Open && Powered) return 4360;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Open && !Powered) return 4362;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && !Open && Powered) return 4364;
return 4366;
}
short JungleTrapdoor();
eBlockFace Facing(short ID);
enum Half Half(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace JungleWallSign
{
constexpr short JungleWallSign(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 3768;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 3770;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 3772;
return 3774;
}
short JungleWallSign();
eBlockFace Facing(short ID);
}
namespace JungleWood
{
enum class Axis
{
X,
Y,
Z
};
constexpr short JungleWood(enum Axis Axis)
{
if (Axis == Axis::X) return 118;
if (Axis == Axis::Y) return 119;
return 120;
}
short JungleWood();
enum Axis Axis(short ID);
}
namespace Kelp
{
constexpr short Kelp(unsigned char Age)
{
if (Age == 0) return 9470;
if (Age == 1) return 9471;
if (Age == 2) return 9472;
if (Age == 3) return 9473;
if (Age == 4) return 9474;
if (Age == 5) return 9475;
if (Age == 6) return 9476;
if (Age == 7) return 9477;
if (Age == 8) return 9478;
if (Age == 9) return 9479;
if (Age == 10) return 9480;
if (Age == 11) return 9481;
if (Age == 12) return 9482;
if (Age == 13) return 9483;
if (Age == 14) return 9484;
if (Age == 15) return 9485;
if (Age == 16) return 9486;
if (Age == 17) return 9487;
if (Age == 18) return 9488;
if (Age == 19) return 9489;
if (Age == 20) return 9490;
if (Age == 21) return 9491;
if (Age == 22) return 9492;
if (Age == 23) return 9493;
if (Age == 24) return 9494;
return 9495;
}
short Kelp();
unsigned char Age(short ID);
}
namespace KelpPlant
{
constexpr short KelpPlant()
{
return 9496;
}
}
namespace Ladder
{
constexpr short Ladder(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 3638;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 3640;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 3642;
return 3644;
}
short Ladder();
eBlockFace Facing(short ID);
}
namespace Lantern
{
constexpr short Lantern(bool Hanging)
{
if (Hanging) return 14886;
return 14887;
}
short Lantern();
bool Hanging(short ID);
}
namespace LapisBlock
{
constexpr short LapisBlock()
{
return 233;
}
}
namespace LapisOre
{
constexpr short LapisOre()
{
return 232;
}
}
namespace LargeFern
{
enum class Half
{
Upper,
Lower
};
constexpr short LargeFern(enum Half Half)
{
if (Half == Half::Upper) return 7895;
return 7896;
}
short LargeFern();
enum Half Half(short ID);
}
namespace Lava
{
constexpr short Lava(unsigned char Level)
{
if (Level == 0) return 50;
if (Level == 1) return 51;
if (Level == 2) return 52;
if (Level == 3) return 53;
if (Level == 4) return 54;
if (Level == 5) return 55;
if (Level == 6) return 56;
if (Level == 7) return 57;
if (Level == 8) return 58;
if (Level == 9) return 59;
if (Level == 10) return 60;
if (Level == 11) return 61;
if (Level == 12) return 62;
if (Level == 13) return 63;
if (Level == 14) return 64;
return 65;
}
short Lava();
unsigned char Level(short ID);
}
namespace Lectern
{
constexpr short Lectern(eBlockFace Facing, bool HasBook, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && HasBook && Powered) return 14833;
if (Facing == eBlockFace::BLOCK_FACE_ZM && HasBook && !Powered) return 14834;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !HasBook && Powered) return 14835;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !HasBook && !Powered) return 14836;
if (Facing == eBlockFace::BLOCK_FACE_ZP && HasBook && Powered) return 14837;
if (Facing == eBlockFace::BLOCK_FACE_ZP && HasBook && !Powered) return 14838;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !HasBook && Powered) return 14839;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !HasBook && !Powered) return 14840;
if (Facing == eBlockFace::BLOCK_FACE_XM && HasBook && Powered) return 14841;
if (Facing == eBlockFace::BLOCK_FACE_XM && HasBook && !Powered) return 14842;
if (Facing == eBlockFace::BLOCK_FACE_XM && !HasBook && Powered) return 14843;
if (Facing == eBlockFace::BLOCK_FACE_XM && !HasBook && !Powered) return 14844;
if (Facing == eBlockFace::BLOCK_FACE_XP && HasBook && Powered) return 14845;
if (Facing == eBlockFace::BLOCK_FACE_XP && HasBook && !Powered) return 14846;
if (Facing == eBlockFace::BLOCK_FACE_XP && !HasBook && Powered) return 14847;
return 14848;
}
short Lectern();
eBlockFace Facing(short ID);
bool HasBook(short ID);
bool Powered(short ID);
}
namespace Lever
{
enum class Face
{
Floor,
Wall,
Ceiling
};
constexpr short Lever(enum Face Face, eBlockFace Facing, bool Powered)
{
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 3783;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 3784;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 3785;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 3786;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 3787;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 3788;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 3789;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 3790;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 3791;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 3792;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 3793;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 3794;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 3795;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 3796;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 3797;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 3798;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 3799;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 3800;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 3801;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 3802;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 3803;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 3804;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 3805;
return 3806;
}
short Lever();
enum Face Face(short ID);
eBlockFace Facing(short ID);
bool Powered(short ID);
}
namespace LightBlueBanner
{
constexpr short LightBlueBanner(unsigned char Rotation)
{
if (Rotation == 0) return 7945;
if (Rotation == 1) return 7946;
if (Rotation == 2) return 7947;
if (Rotation == 3) return 7948;
if (Rotation == 4) return 7949;
if (Rotation == 5) return 7950;
if (Rotation == 6) return 7951;
if (Rotation == 7) return 7952;
if (Rotation == 8) return 7953;
if (Rotation == 9) return 7954;
if (Rotation == 10) return 7955;
if (Rotation == 11) return 7956;
if (Rotation == 12) return 7957;
if (Rotation == 13) return 7958;
if (Rotation == 14) return 7959;
return 7960;
}
short LightBlueBanner();
unsigned char Rotation(short ID);
}
namespace LightBlueBed
{
enum class Part
{
Head,
Foot
};
constexpr short LightBlueBed(eBlockFace Facing, bool Occupied, enum Part Part)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Head) return 1097;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Foot) return 1098;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Head) return 1099;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Foot) return 1100;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Head) return 1101;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Foot) return 1102;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Head) return 1103;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Foot) return 1104;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Head) return 1105;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Foot) return 1106;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Head) return 1107;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Foot) return 1108;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Head) return 1109;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Foot) return 1110;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Occupied && Part == Part::Head) return 1111;
return 1112;
}
short LightBlueBed();
eBlockFace Facing(short ID);
bool Occupied(short ID);
enum Part Part(short ID);
}
namespace LightBlueCarpet
{
constexpr short LightBlueCarpet()
{
return 7869;
}
}
namespace LightBlueConcrete
{
constexpr short LightBlueConcrete()
{
return 9441;
}
}
namespace LightBlueConcretePowder
{
constexpr short LightBlueConcretePowder()
{
return 9457;
}
}
namespace LightBlueGlazedTerracotta
{
constexpr short LightBlueGlazedTerracotta(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9386;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9387;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9388;
return 9389;
}
short LightBlueGlazedTerracotta();
eBlockFace Facing(short ID);
}
namespace LightBlueShulkerBox
{
constexpr short LightBlueShulkerBox(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9296;
if (Facing == eBlockFace::BLOCK_FACE_XP) return 9297;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9298;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9299;
if (Facing == eBlockFace::BLOCK_FACE_YP) return 9300;
return 9301;
}
short LightBlueShulkerBox();
eBlockFace Facing(short ID);
}
namespace LightBlueStainedGlass
{
constexpr short LightBlueStainedGlass()
{
return 4098;
}
}
namespace LightBlueStainedGlassPane
{
constexpr short LightBlueStainedGlassPane(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 6961;
if (East && North && South && !West) return 6962;
if (East && North && !South && West) return 6965;
if (East && North && !South && !West) return 6966;
if (East && !North && South && West) return 6969;
if (East && !North && South && !West) return 6970;
if (East && !North && !South && West) return 6973;
if (East && !North && !South && !West) return 6974;
if (!East && North && South && West) return 6977;
if (!East && North && South && !West) return 6978;
if (!East && North && !South && West) return 6981;
if (!East && North && !South && !West) return 6982;
if (!East && !North && South && West) return 6985;
if (!East && !North && South && !West) return 6986;
if (!East && !North && !South && West) return 6989;
return 6990;
}
short LightBlueStainedGlassPane();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace LightBlueTerracotta
{
constexpr short LightBlueTerracotta()
{
return 6850;
}
}
namespace LightBlueWallBanner
{
constexpr short LightBlueWallBanner(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8165;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8166;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 8167;
return 8168;
}
short LightBlueWallBanner();
eBlockFace Facing(short ID);
}
namespace LightBlueWool
{
constexpr short LightBlueWool()
{
return 1387;
}
}
namespace LightGrayBanner
{
constexpr short LightGrayBanner(unsigned char Rotation)
{
if (Rotation == 0) return 8025;
if (Rotation == 1) return 8026;
if (Rotation == 2) return 8027;
if (Rotation == 3) return 8028;
if (Rotation == 4) return 8029;
if (Rotation == 5) return 8030;
if (Rotation == 6) return 8031;
if (Rotation == 7) return 8032;
if (Rotation == 8) return 8033;
if (Rotation == 9) return 8034;
if (Rotation == 10) return 8035;
if (Rotation == 11) return 8036;
if (Rotation == 12) return 8037;
if (Rotation == 13) return 8038;
if (Rotation == 14) return 8039;
return 8040;
}
short LightGrayBanner();
unsigned char Rotation(short ID);
}
namespace LightGrayBed
{
enum class Part
{
Head,
Foot
};
constexpr short LightGrayBed(eBlockFace Facing, bool Occupied, enum Part Part)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Head) return 1177;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Foot) return 1178;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Head) return 1179;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Foot) return 1180;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Head) return 1181;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Foot) return 1182;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Head) return 1183;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Foot) return 1184;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Head) return 1185;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Foot) return 1186;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Head) return 1187;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Foot) return 1188;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Head) return 1189;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Foot) return 1190;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Occupied && Part == Part::Head) return 1191;
return 1192;
}
short LightGrayBed();
eBlockFace Facing(short ID);
bool Occupied(short ID);
enum Part Part(short ID);
}
namespace LightGrayCarpet
{
constexpr short LightGrayCarpet()
{
return 7874;
}
}
namespace LightGrayConcrete
{
constexpr short LightGrayConcrete()
{
return 9446;
}
}
namespace LightGrayConcretePowder
{
constexpr short LightGrayConcretePowder()
{
return 9462;
}
}
namespace LightGrayGlazedTerracotta
{
constexpr short LightGrayGlazedTerracotta(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9406;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9407;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9408;
return 9409;
}
short LightGrayGlazedTerracotta();
eBlockFace Facing(short ID);
}
namespace LightGrayShulkerBox
{
constexpr short LightGrayShulkerBox(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9326;
if (Facing == eBlockFace::BLOCK_FACE_XP) return 9327;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9328;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9329;
if (Facing == eBlockFace::BLOCK_FACE_YP) return 9330;
return 9331;
}
short LightGrayShulkerBox();
eBlockFace Facing(short ID);
}
namespace LightGrayStainedGlass
{
constexpr short LightGrayStainedGlass()
{
return 4103;
}
}
namespace LightGrayStainedGlassPane
{
constexpr short LightGrayStainedGlassPane(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 7121;
if (East && North && South && !West) return 7122;
if (East && North && !South && West) return 7125;
if (East && North && !South && !West) return 7126;
if (East && !North && South && West) return 7129;
if (East && !North && South && !West) return 7130;
if (East && !North && !South && West) return 7133;
if (East && !North && !South && !West) return 7134;
if (!East && North && South && West) return 7137;
if (!East && North && South && !West) return 7138;
if (!East && North && !South && West) return 7141;
if (!East && North && !South && !West) return 7142;
if (!East && !North && South && West) return 7145;
if (!East && !North && South && !West) return 7146;
if (!East && !North && !South && West) return 7149;
return 7150;
}
short LightGrayStainedGlassPane();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace LightGrayTerracotta
{
constexpr short LightGrayTerracotta()
{
return 6855;
}
}
namespace LightGrayWallBanner
{
constexpr short LightGrayWallBanner(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8185;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8186;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 8187;
return 8188;
}
short LightGrayWallBanner();
eBlockFace Facing(short ID);
}
namespace LightGrayWool
{
constexpr short LightGrayWool()
{
return 1392;
}
}
namespace LightWeightedPressurePlate
{
constexpr short LightWeightedPressurePlate(unsigned char Power)
{
if (Power == 0) return 6646;
if (Power == 1) return 6647;
if (Power == 2) return 6648;
if (Power == 3) return 6649;
if (Power == 4) return 6650;
if (Power == 5) return 6651;
if (Power == 6) return 6652;
if (Power == 7) return 6653;
if (Power == 8) return 6654;
if (Power == 9) return 6655;
if (Power == 10) return 6656;
if (Power == 11) return 6657;
if (Power == 12) return 6658;
if (Power == 13) return 6659;
if (Power == 14) return 6660;
return 6661;
}
short LightWeightedPressurePlate();
unsigned char Power(short ID);
}
namespace Lilac
{
enum class Half
{
Upper,
Lower
};
constexpr short Lilac(enum Half Half)
{
if (Half == Half::Upper) return 7887;
return 7888;
}
short Lilac();
enum Half Half(short ID);
}
namespace LilyOfTheValley
{
constexpr short LilyOfTheValley()
{
return 1424;
}
}
namespace LilyPad
{
constexpr short LilyPad()
{
return 5014;
}
}
namespace LimeBanner
{
constexpr short LimeBanner(unsigned char Rotation)
{
if (Rotation == 0) return 7977;
if (Rotation == 1) return 7978;
if (Rotation == 2) return 7979;
if (Rotation == 3) return 7980;
if (Rotation == 4) return 7981;
if (Rotation == 5) return 7982;
if (Rotation == 6) return 7983;
if (Rotation == 7) return 7984;
if (Rotation == 8) return 7985;
if (Rotation == 9) return 7986;
if (Rotation == 10) return 7987;
if (Rotation == 11) return 7988;
if (Rotation == 12) return 7989;
if (Rotation == 13) return 7990;
if (Rotation == 14) return 7991;
return 7992;
}
short LimeBanner();
unsigned char Rotation(short ID);
}
namespace LimeBed
{
enum class Part
{
Head,
Foot
};
constexpr short LimeBed(eBlockFace Facing, bool Occupied, enum Part Part)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Head) return 1129;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Foot) return 1130;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Head) return 1131;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Foot) return 1132;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Head) return 1133;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Foot) return 1134;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Head) return 1135;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Foot) return 1136;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Head) return 1137;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Foot) return 1138;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Head) return 1139;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Foot) return 1140;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Head) return 1141;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Foot) return 1142;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Occupied && Part == Part::Head) return 1143;
return 1144;
}
short LimeBed();
eBlockFace Facing(short ID);
bool Occupied(short ID);
enum Part Part(short ID);
}
namespace LimeCarpet
{
constexpr short LimeCarpet()
{
return 7871;
}
}
namespace LimeConcrete
{
constexpr short LimeConcrete()
{
return 9443;
}
}
namespace LimeConcretePowder
{
constexpr short LimeConcretePowder()
{
return 9459;
}
}
namespace LimeGlazedTerracotta
{
constexpr short LimeGlazedTerracotta(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9394;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9395;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9396;
return 9397;
}
short LimeGlazedTerracotta();
eBlockFace Facing(short ID);
}
namespace LimeShulkerBox
{
constexpr short LimeShulkerBox(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9308;
if (Facing == eBlockFace::BLOCK_FACE_XP) return 9309;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9310;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9311;
if (Facing == eBlockFace::BLOCK_FACE_YP) return 9312;
return 9313;
}
short LimeShulkerBox();
eBlockFace Facing(short ID);
}
namespace LimeStainedGlass
{
constexpr short LimeStainedGlass()
{
return 4100;
}
}
namespace LimeStainedGlassPane
{
constexpr short LimeStainedGlassPane(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 7025;
if (East && North && South && !West) return 7026;
if (East && North && !South && West) return 7029;
if (East && North && !South && !West) return 7030;
if (East && !North && South && West) return 7033;
if (East && !North && South && !West) return 7034;
if (East && !North && !South && West) return 7037;
if (East && !North && !South && !West) return 7038;
if (!East && North && South && West) return 7041;
if (!East && North && South && !West) return 7042;
if (!East && North && !South && West) return 7045;
if (!East && North && !South && !West) return 7046;
if (!East && !North && South && West) return 7049;
if (!East && !North && South && !West) return 7050;
if (!East && !North && !South && West) return 7053;
return 7054;
}
short LimeStainedGlassPane();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace LimeTerracotta
{
constexpr short LimeTerracotta()
{
return 6852;
}
}
namespace LimeWallBanner
{
constexpr short LimeWallBanner(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8173;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8174;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 8175;
return 8176;
}
short LimeWallBanner();
eBlockFace Facing(short ID);
}
namespace LimeWool
{
constexpr short LimeWool()
{
return 1389;
}
}
namespace Lodestone
{
constexpr short Lodestone()
{
return 15838;
}
}
namespace Loom
{
constexpr short Loom(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 14787;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 14788;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 14789;
return 14790;
}
short Loom();
eBlockFace Facing(short ID);
}
namespace MagentaBanner
{
constexpr short MagentaBanner(unsigned char Rotation)
{
if (Rotation == 0) return 7929;
if (Rotation == 1) return 7930;
if (Rotation == 2) return 7931;
if (Rotation == 3) return 7932;
if (Rotation == 4) return 7933;
if (Rotation == 5) return 7934;
if (Rotation == 6) return 7935;
if (Rotation == 7) return 7936;
if (Rotation == 8) return 7937;
if (Rotation == 9) return 7938;
if (Rotation == 10) return 7939;
if (Rotation == 11) return 7940;
if (Rotation == 12) return 7941;
if (Rotation == 13) return 7942;
if (Rotation == 14) return 7943;
return 7944;
}
short MagentaBanner();
unsigned char Rotation(short ID);
}
namespace MagentaBed
{
enum class Part
{
Head,
Foot
};
constexpr short MagentaBed(eBlockFace Facing, bool Occupied, enum Part Part)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Head) return 1081;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Foot) return 1082;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Head) return 1083;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Foot) return 1084;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Head) return 1085;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Foot) return 1086;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Head) return 1087;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Foot) return 1088;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Head) return 1089;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Foot) return 1090;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Head) return 1091;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Foot) return 1092;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Head) return 1093;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Foot) return 1094;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Occupied && Part == Part::Head) return 1095;
return 1096;
}
short MagentaBed();
eBlockFace Facing(short ID);
bool Occupied(short ID);
enum Part Part(short ID);
}
namespace MagentaCarpet
{
constexpr short MagentaCarpet()
{
return 7868;
}
}
namespace MagentaConcrete
{
constexpr short MagentaConcrete()
{
return 9440;
}
}
namespace MagentaConcretePowder
{
constexpr short MagentaConcretePowder()
{
return 9456;
}
}
namespace MagentaGlazedTerracotta
{
constexpr short MagentaGlazedTerracotta(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9382;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9383;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9384;
return 9385;
}
short MagentaGlazedTerracotta();
eBlockFace Facing(short ID);
}
namespace MagentaShulkerBox
{
constexpr short MagentaShulkerBox(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9290;
if (Facing == eBlockFace::BLOCK_FACE_XP) return 9291;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9292;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9293;
if (Facing == eBlockFace::BLOCK_FACE_YP) return 9294;
return 9295;
}
short MagentaShulkerBox();
eBlockFace Facing(short ID);
}
namespace MagentaStainedGlass
{
constexpr short MagentaStainedGlass()
{
return 4097;
}
}
namespace MagentaStainedGlassPane
{
constexpr short MagentaStainedGlassPane(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 6929;
if (East && North && South && !West) return 6930;
if (East && North && !South && West) return 6933;
if (East && North && !South && !West) return 6934;
if (East && !North && South && West) return 6937;
if (East && !North && South && !West) return 6938;
if (East && !North && !South && West) return 6941;
if (East && !North && !South && !West) return 6942;
if (!East && North && South && West) return 6945;
if (!East && North && South && !West) return 6946;
if (!East && North && !South && West) return 6949;
if (!East && North && !South && !West) return 6950;
if (!East && !North && South && West) return 6953;
if (!East && !North && South && !West) return 6954;
if (!East && !North && !South && West) return 6957;
return 6958;
}
short MagentaStainedGlassPane();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace MagentaTerracotta
{
constexpr short MagentaTerracotta()
{
return 6849;
}
}
namespace MagentaWallBanner
{
constexpr short MagentaWallBanner(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8161;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8162;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 8163;
return 8164;
}
short MagentaWallBanner();
eBlockFace Facing(short ID);
}
namespace MagentaWool
{
constexpr short MagentaWool()
{
return 1386;
}
}
namespace MagmaBlock
{
constexpr short MagmaBlock()
{
return 9253;
}
}
namespace Melon
{
constexpr short Melon()
{
return 4763;
}
}
namespace MelonStem
{
constexpr short MelonStem(unsigned char Age)
{
if (Age == 0) return 4780;
if (Age == 1) return 4781;
if (Age == 2) return 4782;
if (Age == 3) return 4783;
if (Age == 4) return 4784;
if (Age == 5) return 4785;
if (Age == 6) return 4786;
return 4787;
}
short MelonStem();
unsigned char Age(short ID);
}
namespace MossyCobblestone
{
constexpr short MossyCobblestone()
{
return 1433;
}
}
namespace MossyCobblestoneSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short MossyCobblestoneSlab(enum Type Type)
{
if (Type == Type::Top) return 10814;
if (Type == Type::Bottom) return 10816;
return 10818;
}
short MossyCobblestoneSlab();
enum Type Type(short ID);
}
namespace MossyCobblestoneStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short MossyCobblestoneStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 9990;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 9992;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 9994;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 9996;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 9998;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 10000;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10002;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10004;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10006;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10008;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 10010;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 10012;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 10014;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 10016;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 10018;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 10020;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10022;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10024;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10026;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 10028;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 10030;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 10032;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 10034;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 10036;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 10038;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 10040;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10042;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10044;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10046;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10048;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 10050;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 10052;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 10054;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 10056;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 10058;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 10060;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10062;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10064;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10066;
return 10068;
}
short MossyCobblestoneStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace MossyCobblestoneWall
{
enum class East
{
None,
Low,
Tall
};
enum class North
{
None,
Low,
Tall
};
enum class South
{
None,
Low,
Tall
};
enum class West
{
None,
Low,
Tall
};
constexpr short MossyCobblestoneWall(enum East East, enum North North, enum South South, bool Up, enum West West)
{
if (East == East::None && North == North::None && South == South::None && Up && West == West::None) return 5984;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Low) return 5985;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Tall) return 5986;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::None) return 5990;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Low) return 5991;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Tall) return 5992;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::None) return 5996;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Low) return 5997;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Tall) return 5998;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::None) return 6002;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Low) return 6003;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Tall) return 6004;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::None) return 6008;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Low) return 6009;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Tall) return 6010;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::None) return 6014;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Low) return 6015;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Tall) return 6016;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::None) return 6020;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Low) return 6021;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Tall) return 6022;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::None) return 6026;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Low) return 6027;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Tall) return 6028;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::None) return 6032;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Low) return 6033;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Tall) return 6034;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::None) return 6038;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Low) return 6039;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Tall) return 6040;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::None) return 6044;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Low) return 6045;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Tall) return 6046;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::None) return 6050;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Low) return 6051;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 6052;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::None) return 6056;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Low) return 6057;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Tall) return 6058;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::None) return 6062;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Low) return 6063;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Tall) return 6064;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::None) return 6068;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Low) return 6069;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Tall) return 6070;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::None) return 6074;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Low) return 6075;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 6076;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::None) return 6080;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Low) return 6081;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 6082;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::None) return 6086;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 6087;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 6088;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::None) return 6092;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Low) return 6093;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Tall) return 6094;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::None) return 6098;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Low) return 6099;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Tall) return 6100;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::None) return 6104;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Low) return 6105;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Tall) return 6106;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::None) return 6110;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Low) return 6111;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Tall) return 6112;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::None) return 6116;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Low) return 6117;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Tall) return 6118;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::None) return 6122;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Low) return 6123;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Tall) return 6124;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::None) return 6128;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Low) return 6129;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Tall) return 6130;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::None) return 6134;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Low) return 6135;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Tall) return 6136;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::None) return 6140;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Low) return 6141;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Tall) return 6142;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::None) return 6146;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Low) return 6147;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Tall) return 6148;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::None) return 6152;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Low) return 6153;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Tall) return 6154;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::None) return 6158;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Low) return 6159;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 6160;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::None) return 6164;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Low) return 6165;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Tall) return 6166;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::None) return 6170;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Low) return 6171;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Tall) return 6172;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::None) return 6176;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Low) return 6177;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Tall) return 6178;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::None) return 6182;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Low) return 6183;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 6184;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::None) return 6188;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Low) return 6189;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 6190;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::None) return 6194;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 6195;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 6196;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::None) return 6200;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Low) return 6201;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Tall) return 6202;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::None) return 6206;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Low) return 6207;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Tall) return 6208;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::None) return 6212;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Low) return 6213;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Tall) return 6214;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::None) return 6218;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Low) return 6219;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Tall) return 6220;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::None) return 6224;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Low) return 6225;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Tall) return 6226;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::None) return 6230;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Low) return 6231;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Tall) return 6232;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::None) return 6236;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Low) return 6237;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Tall) return 6238;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::None) return 6242;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Low) return 6243;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Tall) return 6244;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::None) return 6248;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Low) return 6249;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Tall) return 6250;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::None) return 6254;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Low) return 6255;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Tall) return 6256;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::None) return 6260;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Low) return 6261;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Tall) return 6262;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::None) return 6266;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Low) return 6267;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 6268;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::None) return 6272;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Low) return 6273;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Tall) return 6274;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::None) return 6278;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Low) return 6279;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Tall) return 6280;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::None) return 6284;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Low) return 6285;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Tall) return 6286;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::None) return 6290;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Low) return 6291;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 6292;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::None) return 6296;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Low) return 6297;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 6298;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::None) return 6302;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 6303;
return 6304;
}
short MossyCobblestoneWall();
enum East East(short ID);
enum North North(short ID);
enum South South(short ID);
bool Up(short ID);
enum West West(short ID);
}
namespace MossyStoneBrickSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short MossyStoneBrickSlab(enum Type Type)
{
if (Type == Type::Top) return 10802;
if (Type == Type::Bottom) return 10804;
return 10806;
}
short MossyStoneBrickSlab();
enum Type Type(short ID);
}
namespace MossyStoneBrickStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short MossyStoneBrickStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 9830;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 9832;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 9834;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 9836;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 9838;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 9840;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9842;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 9844;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9846;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 9848;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 9850;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 9852;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 9854;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 9856;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 9858;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 9860;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9862;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 9864;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9866;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 9868;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 9870;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 9872;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 9874;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 9876;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 9878;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 9880;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9882;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 9884;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9886;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 9888;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 9890;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 9892;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 9894;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 9896;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 9898;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 9900;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9902;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 9904;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9906;
return 9908;
}
short MossyStoneBrickStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace MossyStoneBrickWall
{
enum class East
{
None,
Low,
Tall
};
enum class North
{
None,
Low,
Tall
};
enum class South
{
None,
Low,
Tall
};
enum class West
{
None,
Low,
Tall
};
constexpr short MossyStoneBrickWall(enum East East, enum North North, enum South South, bool Up, enum West West)
{
if (East == East::None && North == North::None && South == South::None && Up && West == West::None) return 11842;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Low) return 11843;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Tall) return 11844;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::None) return 11848;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Low) return 11849;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Tall) return 11850;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::None) return 11854;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Low) return 11855;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Tall) return 11856;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::None) return 11860;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Low) return 11861;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Tall) return 11862;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::None) return 11866;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Low) return 11867;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Tall) return 11868;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::None) return 11872;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Low) return 11873;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Tall) return 11874;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::None) return 11878;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Low) return 11879;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Tall) return 11880;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::None) return 11884;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Low) return 11885;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Tall) return 11886;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::None) return 11890;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Low) return 11891;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Tall) return 11892;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::None) return 11896;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Low) return 11897;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Tall) return 11898;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::None) return 11902;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Low) return 11903;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Tall) return 11904;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::None) return 11908;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Low) return 11909;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 11910;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::None) return 11914;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Low) return 11915;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Tall) return 11916;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::None) return 11920;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Low) return 11921;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Tall) return 11922;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::None) return 11926;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Low) return 11927;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Tall) return 11928;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::None) return 11932;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Low) return 11933;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 11934;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::None) return 11938;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Low) return 11939;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 11940;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::None) return 11944;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 11945;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 11946;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::None) return 11950;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Low) return 11951;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Tall) return 11952;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::None) return 11956;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Low) return 11957;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Tall) return 11958;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::None) return 11962;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Low) return 11963;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Tall) return 11964;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::None) return 11968;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Low) return 11969;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Tall) return 11970;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::None) return 11974;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Low) return 11975;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Tall) return 11976;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::None) return 11980;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Low) return 11981;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Tall) return 11982;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::None) return 11986;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Low) return 11987;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Tall) return 11988;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::None) return 11992;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Low) return 11993;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Tall) return 11994;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::None) return 11998;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Low) return 11999;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Tall) return 12000;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::None) return 12004;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Low) return 12005;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Tall) return 12006;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::None) return 12010;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Low) return 12011;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Tall) return 12012;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::None) return 12016;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Low) return 12017;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 12018;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::None) return 12022;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Low) return 12023;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Tall) return 12024;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::None) return 12028;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Low) return 12029;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Tall) return 12030;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::None) return 12034;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Low) return 12035;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Tall) return 12036;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::None) return 12040;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Low) return 12041;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 12042;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::None) return 12046;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Low) return 12047;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 12048;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::None) return 12052;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 12053;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 12054;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::None) return 12058;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Low) return 12059;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Tall) return 12060;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::None) return 12064;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Low) return 12065;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Tall) return 12066;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::None) return 12070;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Low) return 12071;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Tall) return 12072;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::None) return 12076;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Low) return 12077;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Tall) return 12078;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::None) return 12082;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Low) return 12083;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Tall) return 12084;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::None) return 12088;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Low) return 12089;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Tall) return 12090;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::None) return 12094;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Low) return 12095;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Tall) return 12096;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::None) return 12100;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Low) return 12101;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Tall) return 12102;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::None) return 12106;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Low) return 12107;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Tall) return 12108;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::None) return 12112;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Low) return 12113;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Tall) return 12114;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::None) return 12118;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Low) return 12119;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Tall) return 12120;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::None) return 12124;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Low) return 12125;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 12126;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::None) return 12130;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Low) return 12131;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Tall) return 12132;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::None) return 12136;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Low) return 12137;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Tall) return 12138;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::None) return 12142;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Low) return 12143;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Tall) return 12144;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::None) return 12148;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Low) return 12149;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 12150;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::None) return 12154;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Low) return 12155;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 12156;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::None) return 12160;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 12161;
return 12162;
}
short MossyStoneBrickWall();
enum East East(short ID);
enum North North(short ID);
enum South South(short ID);
bool Up(short ID);
enum West West(short ID);
}
namespace MossyStoneBricks
{
constexpr short MossyStoneBricks()
{
return 4496;
}
}
namespace MovingPiston
{
enum class Type
{
Normal,
Sticky
};
constexpr short MovingPiston(eBlockFace Facing, enum Type Type)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Type == Type::Normal) return 1400;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Type == Type::Sticky) return 1401;
if (Facing == eBlockFace::BLOCK_FACE_XP && Type == Type::Normal) return 1402;
if (Facing == eBlockFace::BLOCK_FACE_XP && Type == Type::Sticky) return 1403;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Type == Type::Normal) return 1404;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Type == Type::Sticky) return 1405;
if (Facing == eBlockFace::BLOCK_FACE_XM && Type == Type::Normal) return 1406;
if (Facing == eBlockFace::BLOCK_FACE_XM && Type == Type::Sticky) return 1407;
if (Facing == eBlockFace::BLOCK_FACE_YP && Type == Type::Normal) return 1408;
if (Facing == eBlockFace::BLOCK_FACE_YP && Type == Type::Sticky) return 1409;
if (Facing == eBlockFace::BLOCK_FACE_YM && Type == Type::Normal) return 1410;
return 1411;
}
short MovingPiston();
eBlockFace Facing(short ID);
enum Type Type(short ID);
}
namespace MushroomStem
{
constexpr short MushroomStem(bool Down, bool East, bool North, bool South, bool Up, bool West)
{
if (Down && East && North && South && Up && West) return 4633;
if (Down && East && North && South && Up && !West) return 4634;
if (Down && East && North && South && !Up && West) return 4635;
if (Down && East && North && South && !Up && !West) return 4636;
if (Down && East && North && !South && Up && West) return 4637;
if (Down && East && North && !South && Up && !West) return 4638;
if (Down && East && North && !South && !Up && West) return 4639;
if (Down && East && North && !South && !Up && !West) return 4640;
if (Down && East && !North && South && Up && West) return 4641;
if (Down && East && !North && South && Up && !West) return 4642;
if (Down && East && !North && South && !Up && West) return 4643;
if (Down && East && !North && South && !Up && !West) return 4644;
if (Down && East && !North && !South && Up && West) return 4645;
if (Down && East && !North && !South && Up && !West) return 4646;
if (Down && East && !North && !South && !Up && West) return 4647;
if (Down && East && !North && !South && !Up && !West) return 4648;
if (Down && !East && North && South && Up && West) return 4649;
if (Down && !East && North && South && Up && !West) return 4650;
if (Down && !East && North && South && !Up && West) return 4651;
if (Down && !East && North && South && !Up && !West) return 4652;
if (Down && !East && North && !South && Up && West) return 4653;
if (Down && !East && North && !South && Up && !West) return 4654;
if (Down && !East && North && !South && !Up && West) return 4655;
if (Down && !East && North && !South && !Up && !West) return 4656;
if (Down && !East && !North && South && Up && West) return 4657;
if (Down && !East && !North && South && Up && !West) return 4658;
if (Down && !East && !North && South && !Up && West) return 4659;
if (Down && !East && !North && South && !Up && !West) return 4660;
if (Down && !East && !North && !South && Up && West) return 4661;
if (Down && !East && !North && !South && Up && !West) return 4662;
if (Down && !East && !North && !South && !Up && West) return 4663;
if (Down && !East && !North && !South && !Up && !West) return 4664;
if (!Down && East && North && South && Up && West) return 4665;
if (!Down && East && North && South && Up && !West) return 4666;
if (!Down && East && North && South && !Up && West) return 4667;
if (!Down && East && North && South && !Up && !West) return 4668;
if (!Down && East && North && !South && Up && West) return 4669;
if (!Down && East && North && !South && Up && !West) return 4670;
if (!Down && East && North && !South && !Up && West) return 4671;
if (!Down && East && North && !South && !Up && !West) return 4672;
if (!Down && East && !North && South && Up && West) return 4673;
if (!Down && East && !North && South && Up && !West) return 4674;
if (!Down && East && !North && South && !Up && West) return 4675;
if (!Down && East && !North && South && !Up && !West) return 4676;
if (!Down && East && !North && !South && Up && West) return 4677;
if (!Down && East && !North && !South && Up && !West) return 4678;
if (!Down && East && !North && !South && !Up && West) return 4679;
if (!Down && East && !North && !South && !Up && !West) return 4680;
if (!Down && !East && North && South && Up && West) return 4681;
if (!Down && !East && North && South && Up && !West) return 4682;
if (!Down && !East && North && South && !Up && West) return 4683;
if (!Down && !East && North && South && !Up && !West) return 4684;
if (!Down && !East && North && !South && Up && West) return 4685;
if (!Down && !East && North && !South && Up && !West) return 4686;
if (!Down && !East && North && !South && !Up && West) return 4687;
if (!Down && !East && North && !South && !Up && !West) return 4688;
if (!Down && !East && !North && South && Up && West) return 4689;
if (!Down && !East && !North && South && Up && !West) return 4690;
if (!Down && !East && !North && South && !Up && West) return 4691;
if (!Down && !East && !North && South && !Up && !West) return 4692;
if (!Down && !East && !North && !South && Up && West) return 4693;
if (!Down && !East && !North && !South && Up && !West) return 4694;
if (!Down && !East && !North && !South && !Up && West) return 4695;
return 4696;
}
short MushroomStem();
bool Down(short ID);
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool Up(short ID);
bool West(short ID);
}
namespace Mycelium
{
constexpr short Mycelium(bool Snowy)
{
if (Snowy) return 5012;
return 5013;
}
short Mycelium();
bool Snowy(short ID);
}
namespace NetherBrickFence
{
constexpr short NetherBrickFence(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 5018;
if (East && North && South && !West) return 5019;
if (East && North && !South && West) return 5022;
if (East && North && !South && !West) return 5023;
if (East && !North && South && West) return 5026;
if (East && !North && South && !West) return 5027;
if (East && !North && !South && West) return 5030;
if (East && !North && !South && !West) return 5031;
if (!East && North && South && West) return 5034;
if (!East && North && South && !West) return 5035;
if (!East && North && !South && West) return 5038;
if (!East && North && !South && !West) return 5039;
if (!East && !North && South && West) return 5042;
if (!East && !North && South && !West) return 5043;
if (!East && !North && !South && West) return 5046;
return 5047;
}
short NetherBrickFence();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace NetherBrickSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short NetherBrickSlab(enum Type Type)
{
if (Type == Type::Top) return 8385;
if (Type == Type::Bottom) return 8387;
return 8389;
}
short NetherBrickSlab();
enum Type Type(short ID);
}
namespace NetherBrickStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short NetherBrickStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 5049;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 5051;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 5053;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 5055;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 5057;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 5059;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5061;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 5063;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5065;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 5067;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 5069;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 5071;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 5073;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 5075;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 5077;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 5079;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5081;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 5083;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5085;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 5087;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 5089;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 5091;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 5093;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 5095;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 5097;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 5099;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5101;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 5103;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5105;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 5107;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 5109;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 5111;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 5113;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 5115;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 5117;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 5119;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5121;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 5123;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5125;
return 5127;
}
short NetherBrickStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace NetherBrickWall
{
enum class East
{
None,
Low,
Tall
};
enum class North
{
None,
Low,
Tall
};
enum class South
{
None,
Low,
Tall
};
enum class West
{
None,
Low,
Tall
};
constexpr short NetherBrickWall(enum East East, enum North North, enum South South, bool Up, enum West West)
{
if (East == East::None && North == North::None && South == South::None && Up && West == West::None) return 12814;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Low) return 12815;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Tall) return 12816;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::None) return 12820;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Low) return 12821;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Tall) return 12822;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::None) return 12826;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Low) return 12827;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Tall) return 12828;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::None) return 12832;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Low) return 12833;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Tall) return 12834;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::None) return 12838;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Low) return 12839;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Tall) return 12840;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::None) return 12844;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Low) return 12845;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Tall) return 12846;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::None) return 12850;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Low) return 12851;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Tall) return 12852;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::None) return 12856;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Low) return 12857;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Tall) return 12858;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::None) return 12862;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Low) return 12863;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Tall) return 12864;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::None) return 12868;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Low) return 12869;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Tall) return 12870;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::None) return 12874;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Low) return 12875;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Tall) return 12876;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::None) return 12880;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Low) return 12881;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 12882;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::None) return 12886;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Low) return 12887;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Tall) return 12888;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::None) return 12892;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Low) return 12893;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Tall) return 12894;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::None) return 12898;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Low) return 12899;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Tall) return 12900;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::None) return 12904;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Low) return 12905;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 12906;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::None) return 12910;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Low) return 12911;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 12912;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::None) return 12916;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 12917;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 12918;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::None) return 12922;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Low) return 12923;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Tall) return 12924;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::None) return 12928;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Low) return 12929;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Tall) return 12930;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::None) return 12934;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Low) return 12935;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Tall) return 12936;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::None) return 12940;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Low) return 12941;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Tall) return 12942;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::None) return 12946;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Low) return 12947;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Tall) return 12948;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::None) return 12952;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Low) return 12953;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Tall) return 12954;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::None) return 12958;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Low) return 12959;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Tall) return 12960;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::None) return 12964;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Low) return 12965;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Tall) return 12966;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::None) return 12970;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Low) return 12971;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Tall) return 12972;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::None) return 12976;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Low) return 12977;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Tall) return 12978;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::None) return 12982;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Low) return 12983;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Tall) return 12984;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::None) return 12988;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Low) return 12989;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 12990;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::None) return 12994;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Low) return 12995;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Tall) return 12996;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::None) return 13000;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Low) return 13001;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Tall) return 13002;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::None) return 13006;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Low) return 13007;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Tall) return 13008;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::None) return 13012;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Low) return 13013;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 13014;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::None) return 13018;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Low) return 13019;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 13020;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::None) return 13024;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 13025;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 13026;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::None) return 13030;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Low) return 13031;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Tall) return 13032;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::None) return 13036;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Low) return 13037;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Tall) return 13038;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::None) return 13042;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Low) return 13043;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Tall) return 13044;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::None) return 13048;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Low) return 13049;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Tall) return 13050;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::None) return 13054;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Low) return 13055;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Tall) return 13056;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::None) return 13060;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Low) return 13061;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Tall) return 13062;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::None) return 13066;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Low) return 13067;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Tall) return 13068;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::None) return 13072;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Low) return 13073;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Tall) return 13074;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::None) return 13078;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Low) return 13079;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Tall) return 13080;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::None) return 13084;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Low) return 13085;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Tall) return 13086;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::None) return 13090;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Low) return 13091;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Tall) return 13092;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::None) return 13096;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Low) return 13097;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 13098;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::None) return 13102;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Low) return 13103;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Tall) return 13104;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::None) return 13108;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Low) return 13109;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Tall) return 13110;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::None) return 13114;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Low) return 13115;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Tall) return 13116;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::None) return 13120;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Low) return 13121;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 13122;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::None) return 13126;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Low) return 13127;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 13128;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::None) return 13132;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 13133;
return 13134;
}
short NetherBrickWall();
enum East East(short ID);
enum North North(short ID);
enum South South(short ID);
bool Up(short ID);
enum West West(short ID);
}
namespace NetherBricks
{
constexpr short NetherBricks()
{
return 5015;
}
}
namespace NetherGoldOre
{
constexpr short NetherGoldOre()
{
return 72;
}
}
namespace NetherPortal
{
enum class Axis
{
X,
Z
};
constexpr short NetherPortal(enum Axis Axis)
{
if (Axis == Axis::X) return 4014;
return 4015;
}
short NetherPortal();
enum Axis Axis(short ID);
}
namespace NetherQuartzOre
{
constexpr short NetherQuartzOre()
{
return 6727;
}
}
namespace NetherSprouts
{
constexpr short NetherSprouts()
{
return 14974;
}
}
namespace NetherWart
{
constexpr short NetherWart(unsigned char Age)
{
if (Age == 0) return 5128;
if (Age == 1) return 5129;
if (Age == 2) return 5130;
return 5131;
}
short NetherWart();
unsigned char Age(short ID);
}
namespace NetherWartBlock
{
constexpr short NetherWartBlock()
{
return 9254;
}
}
namespace NetheriteBlock
{
constexpr short NetheriteBlock()
{
return 15826;
}
}
namespace Netherrack
{
constexpr short Netherrack()
{
return 3999;
}
}
namespace NoteBlock
{
enum class Instrument
{
Harp,
Basedrum,
Snare,
Hat,
Bass,
Flute,
Bell,
Guitar,
Chime,
Xylophone,
IronXylophone,
CowBell,
Didgeridoo,
Bit,
Banjo,
Pling
};
constexpr short NoteBlock(enum Instrument Instrument, unsigned char Note, bool Powered)
{
if (Instrument == Instrument::Harp && Note == 0 && Powered) return 249;
if (Instrument == Instrument::Harp && Note == 0 && !Powered) return 250;
if (Instrument == Instrument::Harp && Note == 1 && Powered) return 251;
if (Instrument == Instrument::Harp && Note == 1 && !Powered) return 252;
if (Instrument == Instrument::Harp && Note == 2 && Powered) return 253;
if (Instrument == Instrument::Harp && Note == 2 && !Powered) return 254;
if (Instrument == Instrument::Harp && Note == 3 && Powered) return 255;
if (Instrument == Instrument::Harp && Note == 3 && !Powered) return 256;
if (Instrument == Instrument::Harp && Note == 4 && Powered) return 257;
if (Instrument == Instrument::Harp && Note == 4 && !Powered) return 258;
if (Instrument == Instrument::Harp && Note == 5 && Powered) return 259;
if (Instrument == Instrument::Harp && Note == 5 && !Powered) return 260;
if (Instrument == Instrument::Harp && Note == 6 && Powered) return 261;
if (Instrument == Instrument::Harp && Note == 6 && !Powered) return 262;
if (Instrument == Instrument::Harp && Note == 7 && Powered) return 263;
if (Instrument == Instrument::Harp && Note == 7 && !Powered) return 264;
if (Instrument == Instrument::Harp && Note == 8 && Powered) return 265;
if (Instrument == Instrument::Harp && Note == 8 && !Powered) return 266;
if (Instrument == Instrument::Harp && Note == 9 && Powered) return 267;
if (Instrument == Instrument::Harp && Note == 9 && !Powered) return 268;
if (Instrument == Instrument::Harp && Note == 10 && Powered) return 269;
if (Instrument == Instrument::Harp && Note == 10 && !Powered) return 270;
if (Instrument == Instrument::Harp && Note == 11 && Powered) return 271;
if (Instrument == Instrument::Harp && Note == 11 && !Powered) return 272;
if (Instrument == Instrument::Harp && Note == 12 && Powered) return 273;
if (Instrument == Instrument::Harp && Note == 12 && !Powered) return 274;
if (Instrument == Instrument::Harp && Note == 13 && Powered) return 275;
if (Instrument == Instrument::Harp && Note == 13 && !Powered) return 276;
if (Instrument == Instrument::Harp && Note == 14 && Powered) return 277;
if (Instrument == Instrument::Harp && Note == 14 && !Powered) return 278;
if (Instrument == Instrument::Harp && Note == 15 && Powered) return 279;
if (Instrument == Instrument::Harp && Note == 15 && !Powered) return 280;
if (Instrument == Instrument::Harp && Note == 16 && Powered) return 281;
if (Instrument == Instrument::Harp && Note == 16 && !Powered) return 282;
if (Instrument == Instrument::Harp && Note == 17 && Powered) return 283;
if (Instrument == Instrument::Harp && Note == 17 && !Powered) return 284;
if (Instrument == Instrument::Harp && Note == 18 && Powered) return 285;
if (Instrument == Instrument::Harp && Note == 18 && !Powered) return 286;
if (Instrument == Instrument::Harp && Note == 19 && Powered) return 287;
if (Instrument == Instrument::Harp && Note == 19 && !Powered) return 288;
if (Instrument == Instrument::Harp && Note == 20 && Powered) return 289;
if (Instrument == Instrument::Harp && Note == 20 && !Powered) return 290;
if (Instrument == Instrument::Harp && Note == 21 && Powered) return 291;
if (Instrument == Instrument::Harp && Note == 21 && !Powered) return 292;
if (Instrument == Instrument::Harp && Note == 22 && Powered) return 293;
if (Instrument == Instrument::Harp && Note == 22 && !Powered) return 294;
if (Instrument == Instrument::Harp && Note == 23 && Powered) return 295;
if (Instrument == Instrument::Harp && Note == 23 && !Powered) return 296;
if (Instrument == Instrument::Harp && Note == 24 && Powered) return 297;
if (Instrument == Instrument::Harp && Note == 24 && !Powered) return 298;
if (Instrument == Instrument::Basedrum && Note == 0 && Powered) return 299;
if (Instrument == Instrument::Basedrum && Note == 0 && !Powered) return 300;
if (Instrument == Instrument::Basedrum && Note == 1 && Powered) return 301;
if (Instrument == Instrument::Basedrum && Note == 1 && !Powered) return 302;
if (Instrument == Instrument::Basedrum && Note == 2 && Powered) return 303;
if (Instrument == Instrument::Basedrum && Note == 2 && !Powered) return 304;
if (Instrument == Instrument::Basedrum && Note == 3 && Powered) return 305;
if (Instrument == Instrument::Basedrum && Note == 3 && !Powered) return 306;
if (Instrument == Instrument::Basedrum && Note == 4 && Powered) return 307;
if (Instrument == Instrument::Basedrum && Note == 4 && !Powered) return 308;
if (Instrument == Instrument::Basedrum && Note == 5 && Powered) return 309;
if (Instrument == Instrument::Basedrum && Note == 5 && !Powered) return 310;
if (Instrument == Instrument::Basedrum && Note == 6 && Powered) return 311;
if (Instrument == Instrument::Basedrum && Note == 6 && !Powered) return 312;
if (Instrument == Instrument::Basedrum && Note == 7 && Powered) return 313;
if (Instrument == Instrument::Basedrum && Note == 7 && !Powered) return 314;
if (Instrument == Instrument::Basedrum && Note == 8 && Powered) return 315;
if (Instrument == Instrument::Basedrum && Note == 8 && !Powered) return 316;
if (Instrument == Instrument::Basedrum && Note == 9 && Powered) return 317;
if (Instrument == Instrument::Basedrum && Note == 9 && !Powered) return 318;
if (Instrument == Instrument::Basedrum && Note == 10 && Powered) return 319;
if (Instrument == Instrument::Basedrum && Note == 10 && !Powered) return 320;
if (Instrument == Instrument::Basedrum && Note == 11 && Powered) return 321;
if (Instrument == Instrument::Basedrum && Note == 11 && !Powered) return 322;
if (Instrument == Instrument::Basedrum && Note == 12 && Powered) return 323;
if (Instrument == Instrument::Basedrum && Note == 12 && !Powered) return 324;
if (Instrument == Instrument::Basedrum && Note == 13 && Powered) return 325;
if (Instrument == Instrument::Basedrum && Note == 13 && !Powered) return 326;
if (Instrument == Instrument::Basedrum && Note == 14 && Powered) return 327;
if (Instrument == Instrument::Basedrum && Note == 14 && !Powered) return 328;
if (Instrument == Instrument::Basedrum && Note == 15 && Powered) return 329;
if (Instrument == Instrument::Basedrum && Note == 15 && !Powered) return 330;
if (Instrument == Instrument::Basedrum && Note == 16 && Powered) return 331;
if (Instrument == Instrument::Basedrum && Note == 16 && !Powered) return 332;
if (Instrument == Instrument::Basedrum && Note == 17 && Powered) return 333;
if (Instrument == Instrument::Basedrum && Note == 17 && !Powered) return 334;
if (Instrument == Instrument::Basedrum && Note == 18 && Powered) return 335;
if (Instrument == Instrument::Basedrum && Note == 18 && !Powered) return 336;
if (Instrument == Instrument::Basedrum && Note == 19 && Powered) return 337;
if (Instrument == Instrument::Basedrum && Note == 19 && !Powered) return 338;
if (Instrument == Instrument::Basedrum && Note == 20 && Powered) return 339;
if (Instrument == Instrument::Basedrum && Note == 20 && !Powered) return 340;
if (Instrument == Instrument::Basedrum && Note == 21 && Powered) return 341;
if (Instrument == Instrument::Basedrum && Note == 21 && !Powered) return 342;
if (Instrument == Instrument::Basedrum && Note == 22 && Powered) return 343;
if (Instrument == Instrument::Basedrum && Note == 22 && !Powered) return 344;
if (Instrument == Instrument::Basedrum && Note == 23 && Powered) return 345;
if (Instrument == Instrument::Basedrum && Note == 23 && !Powered) return 346;
if (Instrument == Instrument::Basedrum && Note == 24 && Powered) return 347;
if (Instrument == Instrument::Basedrum && Note == 24 && !Powered) return 348;
if (Instrument == Instrument::Snare && Note == 0 && Powered) return 349;
if (Instrument == Instrument::Snare && Note == 0 && !Powered) return 350;
if (Instrument == Instrument::Snare && Note == 1 && Powered) return 351;
if (Instrument == Instrument::Snare && Note == 1 && !Powered) return 352;
if (Instrument == Instrument::Snare && Note == 2 && Powered) return 353;
if (Instrument == Instrument::Snare && Note == 2 && !Powered) return 354;
if (Instrument == Instrument::Snare && Note == 3 && Powered) return 355;
if (Instrument == Instrument::Snare && Note == 3 && !Powered) return 356;
if (Instrument == Instrument::Snare && Note == 4 && Powered) return 357;
if (Instrument == Instrument::Snare && Note == 4 && !Powered) return 358;
if (Instrument == Instrument::Snare && Note == 5 && Powered) return 359;
if (Instrument == Instrument::Snare && Note == 5 && !Powered) return 360;
if (Instrument == Instrument::Snare && Note == 6 && Powered) return 361;
if (Instrument == Instrument::Snare && Note == 6 && !Powered) return 362;
if (Instrument == Instrument::Snare && Note == 7 && Powered) return 363;
if (Instrument == Instrument::Snare && Note == 7 && !Powered) return 364;
if (Instrument == Instrument::Snare && Note == 8 && Powered) return 365;
if (Instrument == Instrument::Snare && Note == 8 && !Powered) return 366;
if (Instrument == Instrument::Snare && Note == 9 && Powered) return 367;
if (Instrument == Instrument::Snare && Note == 9 && !Powered) return 368;
if (Instrument == Instrument::Snare && Note == 10 && Powered) return 369;
if (Instrument == Instrument::Snare && Note == 10 && !Powered) return 370;
if (Instrument == Instrument::Snare && Note == 11 && Powered) return 371;
if (Instrument == Instrument::Snare && Note == 11 && !Powered) return 372;
if (Instrument == Instrument::Snare && Note == 12 && Powered) return 373;
if (Instrument == Instrument::Snare && Note == 12 && !Powered) return 374;
if (Instrument == Instrument::Snare && Note == 13 && Powered) return 375;
if (Instrument == Instrument::Snare && Note == 13 && !Powered) return 376;
if (Instrument == Instrument::Snare && Note == 14 && Powered) return 377;
if (Instrument == Instrument::Snare && Note == 14 && !Powered) return 378;
if (Instrument == Instrument::Snare && Note == 15 && Powered) return 379;
if (Instrument == Instrument::Snare && Note == 15 && !Powered) return 380;
if (Instrument == Instrument::Snare && Note == 16 && Powered) return 381;
if (Instrument == Instrument::Snare && Note == 16 && !Powered) return 382;
if (Instrument == Instrument::Snare && Note == 17 && Powered) return 383;
if (Instrument == Instrument::Snare && Note == 17 && !Powered) return 384;
if (Instrument == Instrument::Snare && Note == 18 && Powered) return 385;
if (Instrument == Instrument::Snare && Note == 18 && !Powered) return 386;
if (Instrument == Instrument::Snare && Note == 19 && Powered) return 387;
if (Instrument == Instrument::Snare && Note == 19 && !Powered) return 388;
if (Instrument == Instrument::Snare && Note == 20 && Powered) return 389;
if (Instrument == Instrument::Snare && Note == 20 && !Powered) return 390;
if (Instrument == Instrument::Snare && Note == 21 && Powered) return 391;
if (Instrument == Instrument::Snare && Note == 21 && !Powered) return 392;
if (Instrument == Instrument::Snare && Note == 22 && Powered) return 393;
if (Instrument == Instrument::Snare && Note == 22 && !Powered) return 394;
if (Instrument == Instrument::Snare && Note == 23 && Powered) return 395;
if (Instrument == Instrument::Snare && Note == 23 && !Powered) return 396;
if (Instrument == Instrument::Snare && Note == 24 && Powered) return 397;
if (Instrument == Instrument::Snare && Note == 24 && !Powered) return 398;
if (Instrument == Instrument::Hat && Note == 0 && Powered) return 399;
if (Instrument == Instrument::Hat && Note == 0 && !Powered) return 400;
if (Instrument == Instrument::Hat && Note == 1 && Powered) return 401;
if (Instrument == Instrument::Hat && Note == 1 && !Powered) return 402;
if (Instrument == Instrument::Hat && Note == 2 && Powered) return 403;
if (Instrument == Instrument::Hat && Note == 2 && !Powered) return 404;
if (Instrument == Instrument::Hat && Note == 3 && Powered) return 405;
if (Instrument == Instrument::Hat && Note == 3 && !Powered) return 406;
if (Instrument == Instrument::Hat && Note == 4 && Powered) return 407;
if (Instrument == Instrument::Hat && Note == 4 && !Powered) return 408;
if (Instrument == Instrument::Hat && Note == 5 && Powered) return 409;
if (Instrument == Instrument::Hat && Note == 5 && !Powered) return 410;
if (Instrument == Instrument::Hat && Note == 6 && Powered) return 411;
if (Instrument == Instrument::Hat && Note == 6 && !Powered) return 412;
if (Instrument == Instrument::Hat && Note == 7 && Powered) return 413;
if (Instrument == Instrument::Hat && Note == 7 && !Powered) return 414;
if (Instrument == Instrument::Hat && Note == 8 && Powered) return 415;
if (Instrument == Instrument::Hat && Note == 8 && !Powered) return 416;
if (Instrument == Instrument::Hat && Note == 9 && Powered) return 417;
if (Instrument == Instrument::Hat && Note == 9 && !Powered) return 418;
if (Instrument == Instrument::Hat && Note == 10 && Powered) return 419;
if (Instrument == Instrument::Hat && Note == 10 && !Powered) return 420;
if (Instrument == Instrument::Hat && Note == 11 && Powered) return 421;
if (Instrument == Instrument::Hat && Note == 11 && !Powered) return 422;
if (Instrument == Instrument::Hat && Note == 12 && Powered) return 423;
if (Instrument == Instrument::Hat && Note == 12 && !Powered) return 424;
if (Instrument == Instrument::Hat && Note == 13 && Powered) return 425;
if (Instrument == Instrument::Hat && Note == 13 && !Powered) return 426;
if (Instrument == Instrument::Hat && Note == 14 && Powered) return 427;
if (Instrument == Instrument::Hat && Note == 14 && !Powered) return 428;
if (Instrument == Instrument::Hat && Note == 15 && Powered) return 429;
if (Instrument == Instrument::Hat && Note == 15 && !Powered) return 430;
if (Instrument == Instrument::Hat && Note == 16 && Powered) return 431;
if (Instrument == Instrument::Hat && Note == 16 && !Powered) return 432;
if (Instrument == Instrument::Hat && Note == 17 && Powered) return 433;
if (Instrument == Instrument::Hat && Note == 17 && !Powered) return 434;
if (Instrument == Instrument::Hat && Note == 18 && Powered) return 435;
if (Instrument == Instrument::Hat && Note == 18 && !Powered) return 436;
if (Instrument == Instrument::Hat && Note == 19 && Powered) return 437;
if (Instrument == Instrument::Hat && Note == 19 && !Powered) return 438;
if (Instrument == Instrument::Hat && Note == 20 && Powered) return 439;
if (Instrument == Instrument::Hat && Note == 20 && !Powered) return 440;
if (Instrument == Instrument::Hat && Note == 21 && Powered) return 441;
if (Instrument == Instrument::Hat && Note == 21 && !Powered) return 442;
if (Instrument == Instrument::Hat && Note == 22 && Powered) return 443;
if (Instrument == Instrument::Hat && Note == 22 && !Powered) return 444;
if (Instrument == Instrument::Hat && Note == 23 && Powered) return 445;
if (Instrument == Instrument::Hat && Note == 23 && !Powered) return 446;
if (Instrument == Instrument::Hat && Note == 24 && Powered) return 447;
if (Instrument == Instrument::Hat && Note == 24 && !Powered) return 448;
if (Instrument == Instrument::Bass && Note == 0 && Powered) return 449;
if (Instrument == Instrument::Bass && Note == 0 && !Powered) return 450;
if (Instrument == Instrument::Bass && Note == 1 && Powered) return 451;
if (Instrument == Instrument::Bass && Note == 1 && !Powered) return 452;
if (Instrument == Instrument::Bass && Note == 2 && Powered) return 453;
if (Instrument == Instrument::Bass && Note == 2 && !Powered) return 454;
if (Instrument == Instrument::Bass && Note == 3 && Powered) return 455;
if (Instrument == Instrument::Bass && Note == 3 && !Powered) return 456;
if (Instrument == Instrument::Bass && Note == 4 && Powered) return 457;
if (Instrument == Instrument::Bass && Note == 4 && !Powered) return 458;
if (Instrument == Instrument::Bass && Note == 5 && Powered) return 459;
if (Instrument == Instrument::Bass && Note == 5 && !Powered) return 460;
if (Instrument == Instrument::Bass && Note == 6 && Powered) return 461;
if (Instrument == Instrument::Bass && Note == 6 && !Powered) return 462;
if (Instrument == Instrument::Bass && Note == 7 && Powered) return 463;
if (Instrument == Instrument::Bass && Note == 7 && !Powered) return 464;
if (Instrument == Instrument::Bass && Note == 8 && Powered) return 465;
if (Instrument == Instrument::Bass && Note == 8 && !Powered) return 466;
if (Instrument == Instrument::Bass && Note == 9 && Powered) return 467;
if (Instrument == Instrument::Bass && Note == 9 && !Powered) return 468;
if (Instrument == Instrument::Bass && Note == 10 && Powered) return 469;
if (Instrument == Instrument::Bass && Note == 10 && !Powered) return 470;
if (Instrument == Instrument::Bass && Note == 11 && Powered) return 471;
if (Instrument == Instrument::Bass && Note == 11 && !Powered) return 472;
if (Instrument == Instrument::Bass && Note == 12 && Powered) return 473;
if (Instrument == Instrument::Bass && Note == 12 && !Powered) return 474;
if (Instrument == Instrument::Bass && Note == 13 && Powered) return 475;
if (Instrument == Instrument::Bass && Note == 13 && !Powered) return 476;
if (Instrument == Instrument::Bass && Note == 14 && Powered) return 477;
if (Instrument == Instrument::Bass && Note == 14 && !Powered) return 478;
if (Instrument == Instrument::Bass && Note == 15 && Powered) return 479;
if (Instrument == Instrument::Bass && Note == 15 && !Powered) return 480;
if (Instrument == Instrument::Bass && Note == 16 && Powered) return 481;
if (Instrument == Instrument::Bass && Note == 16 && !Powered) return 482;
if (Instrument == Instrument::Bass && Note == 17 && Powered) return 483;
if (Instrument == Instrument::Bass && Note == 17 && !Powered) return 484;
if (Instrument == Instrument::Bass && Note == 18 && Powered) return 485;
if (Instrument == Instrument::Bass && Note == 18 && !Powered) return 486;
if (Instrument == Instrument::Bass && Note == 19 && Powered) return 487;
if (Instrument == Instrument::Bass && Note == 19 && !Powered) return 488;
if (Instrument == Instrument::Bass && Note == 20 && Powered) return 489;
if (Instrument == Instrument::Bass && Note == 20 && !Powered) return 490;
if (Instrument == Instrument::Bass && Note == 21 && Powered) return 491;
if (Instrument == Instrument::Bass && Note == 21 && !Powered) return 492;
if (Instrument == Instrument::Bass && Note == 22 && Powered) return 493;
if (Instrument == Instrument::Bass && Note == 22 && !Powered) return 494;
if (Instrument == Instrument::Bass && Note == 23 && Powered) return 495;
if (Instrument == Instrument::Bass && Note == 23 && !Powered) return 496;
if (Instrument == Instrument::Bass && Note == 24 && Powered) return 497;
if (Instrument == Instrument::Bass && Note == 24 && !Powered) return 498;
if (Instrument == Instrument::Flute && Note == 0 && Powered) return 499;
if (Instrument == Instrument::Flute && Note == 0 && !Powered) return 500;
if (Instrument == Instrument::Flute && Note == 1 && Powered) return 501;
if (Instrument == Instrument::Flute && Note == 1 && !Powered) return 502;
if (Instrument == Instrument::Flute && Note == 2 && Powered) return 503;
if (Instrument == Instrument::Flute && Note == 2 && !Powered) return 504;
if (Instrument == Instrument::Flute && Note == 3 && Powered) return 505;
if (Instrument == Instrument::Flute && Note == 3 && !Powered) return 506;
if (Instrument == Instrument::Flute && Note == 4 && Powered) return 507;
if (Instrument == Instrument::Flute && Note == 4 && !Powered) return 508;
if (Instrument == Instrument::Flute && Note == 5 && Powered) return 509;
if (Instrument == Instrument::Flute && Note == 5 && !Powered) return 510;
if (Instrument == Instrument::Flute && Note == 6 && Powered) return 511;
if (Instrument == Instrument::Flute && Note == 6 && !Powered) return 512;
if (Instrument == Instrument::Flute && Note == 7 && Powered) return 513;
if (Instrument == Instrument::Flute && Note == 7 && !Powered) return 514;
if (Instrument == Instrument::Flute && Note == 8 && Powered) return 515;
if (Instrument == Instrument::Flute && Note == 8 && !Powered) return 516;
if (Instrument == Instrument::Flute && Note == 9 && Powered) return 517;
if (Instrument == Instrument::Flute && Note == 9 && !Powered) return 518;
if (Instrument == Instrument::Flute && Note == 10 && Powered) return 519;
if (Instrument == Instrument::Flute && Note == 10 && !Powered) return 520;
if (Instrument == Instrument::Flute && Note == 11 && Powered) return 521;
if (Instrument == Instrument::Flute && Note == 11 && !Powered) return 522;
if (Instrument == Instrument::Flute && Note == 12 && Powered) return 523;
if (Instrument == Instrument::Flute && Note == 12 && !Powered) return 524;
if (Instrument == Instrument::Flute && Note == 13 && Powered) return 525;
if (Instrument == Instrument::Flute && Note == 13 && !Powered) return 526;
if (Instrument == Instrument::Flute && Note == 14 && Powered) return 527;
if (Instrument == Instrument::Flute && Note == 14 && !Powered) return 528;
if (Instrument == Instrument::Flute && Note == 15 && Powered) return 529;
if (Instrument == Instrument::Flute && Note == 15 && !Powered) return 530;
if (Instrument == Instrument::Flute && Note == 16 && Powered) return 531;
if (Instrument == Instrument::Flute && Note == 16 && !Powered) return 532;
if (Instrument == Instrument::Flute && Note == 17 && Powered) return 533;
if (Instrument == Instrument::Flute && Note == 17 && !Powered) return 534;
if (Instrument == Instrument::Flute && Note == 18 && Powered) return 535;
if (Instrument == Instrument::Flute && Note == 18 && !Powered) return 536;
if (Instrument == Instrument::Flute && Note == 19 && Powered) return 537;
if (Instrument == Instrument::Flute && Note == 19 && !Powered) return 538;
if (Instrument == Instrument::Flute && Note == 20 && Powered) return 539;
if (Instrument == Instrument::Flute && Note == 20 && !Powered) return 540;
if (Instrument == Instrument::Flute && Note == 21 && Powered) return 541;
if (Instrument == Instrument::Flute && Note == 21 && !Powered) return 542;
if (Instrument == Instrument::Flute && Note == 22 && Powered) return 543;
if (Instrument == Instrument::Flute && Note == 22 && !Powered) return 544;
if (Instrument == Instrument::Flute && Note == 23 && Powered) return 545;
if (Instrument == Instrument::Flute && Note == 23 && !Powered) return 546;
if (Instrument == Instrument::Flute && Note == 24 && Powered) return 547;
if (Instrument == Instrument::Flute && Note == 24 && !Powered) return 548;
if (Instrument == Instrument::Bell && Note == 0 && Powered) return 549;
if (Instrument == Instrument::Bell && Note == 0 && !Powered) return 550;
if (Instrument == Instrument::Bell && Note == 1 && Powered) return 551;
if (Instrument == Instrument::Bell && Note == 1 && !Powered) return 552;
if (Instrument == Instrument::Bell && Note == 2 && Powered) return 553;
if (Instrument == Instrument::Bell && Note == 2 && !Powered) return 554;
if (Instrument == Instrument::Bell && Note == 3 && Powered) return 555;
if (Instrument == Instrument::Bell && Note == 3 && !Powered) return 556;
if (Instrument == Instrument::Bell && Note == 4 && Powered) return 557;
if (Instrument == Instrument::Bell && Note == 4 && !Powered) return 558;
if (Instrument == Instrument::Bell && Note == 5 && Powered) return 559;
if (Instrument == Instrument::Bell && Note == 5 && !Powered) return 560;
if (Instrument == Instrument::Bell && Note == 6 && Powered) return 561;
if (Instrument == Instrument::Bell && Note == 6 && !Powered) return 562;
if (Instrument == Instrument::Bell && Note == 7 && Powered) return 563;
if (Instrument == Instrument::Bell && Note == 7 && !Powered) return 564;
if (Instrument == Instrument::Bell && Note == 8 && Powered) return 565;
if (Instrument == Instrument::Bell && Note == 8 && !Powered) return 566;
if (Instrument == Instrument::Bell && Note == 9 && Powered) return 567;
if (Instrument == Instrument::Bell && Note == 9 && !Powered) return 568;
if (Instrument == Instrument::Bell && Note == 10 && Powered) return 569;
if (Instrument == Instrument::Bell && Note == 10 && !Powered) return 570;
if (Instrument == Instrument::Bell && Note == 11 && Powered) return 571;
if (Instrument == Instrument::Bell && Note == 11 && !Powered) return 572;
if (Instrument == Instrument::Bell && Note == 12 && Powered) return 573;
if (Instrument == Instrument::Bell && Note == 12 && !Powered) return 574;
if (Instrument == Instrument::Bell && Note == 13 && Powered) return 575;
if (Instrument == Instrument::Bell && Note == 13 && !Powered) return 576;
if (Instrument == Instrument::Bell && Note == 14 && Powered) return 577;
if (Instrument == Instrument::Bell && Note == 14 && !Powered) return 578;
if (Instrument == Instrument::Bell && Note == 15 && Powered) return 579;
if (Instrument == Instrument::Bell && Note == 15 && !Powered) return 580;
if (Instrument == Instrument::Bell && Note == 16 && Powered) return 581;
if (Instrument == Instrument::Bell && Note == 16 && !Powered) return 582;
if (Instrument == Instrument::Bell && Note == 17 && Powered) return 583;
if (Instrument == Instrument::Bell && Note == 17 && !Powered) return 584;
if (Instrument == Instrument::Bell && Note == 18 && Powered) return 585;
if (Instrument == Instrument::Bell && Note == 18 && !Powered) return 586;
if (Instrument == Instrument::Bell && Note == 19 && Powered) return 587;
if (Instrument == Instrument::Bell && Note == 19 && !Powered) return 588;
if (Instrument == Instrument::Bell && Note == 20 && Powered) return 589;
if (Instrument == Instrument::Bell && Note == 20 && !Powered) return 590;
if (Instrument == Instrument::Bell && Note == 21 && Powered) return 591;
if (Instrument == Instrument::Bell && Note == 21 && !Powered) return 592;
if (Instrument == Instrument::Bell && Note == 22 && Powered) return 593;
if (Instrument == Instrument::Bell && Note == 22 && !Powered) return 594;
if (Instrument == Instrument::Bell && Note == 23 && Powered) return 595;
if (Instrument == Instrument::Bell && Note == 23 && !Powered) return 596;
if (Instrument == Instrument::Bell && Note == 24 && Powered) return 597;
if (Instrument == Instrument::Bell && Note == 24 && !Powered) return 598;
if (Instrument == Instrument::Guitar && Note == 0 && Powered) return 599;
if (Instrument == Instrument::Guitar && Note == 0 && !Powered) return 600;
if (Instrument == Instrument::Guitar && Note == 1 && Powered) return 601;
if (Instrument == Instrument::Guitar && Note == 1 && !Powered) return 602;
if (Instrument == Instrument::Guitar && Note == 2 && Powered) return 603;
if (Instrument == Instrument::Guitar && Note == 2 && !Powered) return 604;
if (Instrument == Instrument::Guitar && Note == 3 && Powered) return 605;
if (Instrument == Instrument::Guitar && Note == 3 && !Powered) return 606;
if (Instrument == Instrument::Guitar && Note == 4 && Powered) return 607;
if (Instrument == Instrument::Guitar && Note == 4 && !Powered) return 608;
if (Instrument == Instrument::Guitar && Note == 5 && Powered) return 609;
if (Instrument == Instrument::Guitar && Note == 5 && !Powered) return 610;
if (Instrument == Instrument::Guitar && Note == 6 && Powered) return 611;
if (Instrument == Instrument::Guitar && Note == 6 && !Powered) return 612;
if (Instrument == Instrument::Guitar && Note == 7 && Powered) return 613;
if (Instrument == Instrument::Guitar && Note == 7 && !Powered) return 614;
if (Instrument == Instrument::Guitar && Note == 8 && Powered) return 615;
if (Instrument == Instrument::Guitar && Note == 8 && !Powered) return 616;
if (Instrument == Instrument::Guitar && Note == 9 && Powered) return 617;
if (Instrument == Instrument::Guitar && Note == 9 && !Powered) return 618;
if (Instrument == Instrument::Guitar && Note == 10 && Powered) return 619;
if (Instrument == Instrument::Guitar && Note == 10 && !Powered) return 620;
if (Instrument == Instrument::Guitar && Note == 11 && Powered) return 621;
if (Instrument == Instrument::Guitar && Note == 11 && !Powered) return 622;
if (Instrument == Instrument::Guitar && Note == 12 && Powered) return 623;
if (Instrument == Instrument::Guitar && Note == 12 && !Powered) return 624;
if (Instrument == Instrument::Guitar && Note == 13 && Powered) return 625;
if (Instrument == Instrument::Guitar && Note == 13 && !Powered) return 626;
if (Instrument == Instrument::Guitar && Note == 14 && Powered) return 627;
if (Instrument == Instrument::Guitar && Note == 14 && !Powered) return 628;
if (Instrument == Instrument::Guitar && Note == 15 && Powered) return 629;
if (Instrument == Instrument::Guitar && Note == 15 && !Powered) return 630;
if (Instrument == Instrument::Guitar && Note == 16 && Powered) return 631;
if (Instrument == Instrument::Guitar && Note == 16 && !Powered) return 632;
if (Instrument == Instrument::Guitar && Note == 17 && Powered) return 633;
if (Instrument == Instrument::Guitar && Note == 17 && !Powered) return 634;
if (Instrument == Instrument::Guitar && Note == 18 && Powered) return 635;
if (Instrument == Instrument::Guitar && Note == 18 && !Powered) return 636;
if (Instrument == Instrument::Guitar && Note == 19 && Powered) return 637;
if (Instrument == Instrument::Guitar && Note == 19 && !Powered) return 638;
if (Instrument == Instrument::Guitar && Note == 20 && Powered) return 639;
if (Instrument == Instrument::Guitar && Note == 20 && !Powered) return 640;
if (Instrument == Instrument::Guitar && Note == 21 && Powered) return 641;
if (Instrument == Instrument::Guitar && Note == 21 && !Powered) return 642;
if (Instrument == Instrument::Guitar && Note == 22 && Powered) return 643;
if (Instrument == Instrument::Guitar && Note == 22 && !Powered) return 644;
if (Instrument == Instrument::Guitar && Note == 23 && Powered) return 645;
if (Instrument == Instrument::Guitar && Note == 23 && !Powered) return 646;
if (Instrument == Instrument::Guitar && Note == 24 && Powered) return 647;
if (Instrument == Instrument::Guitar && Note == 24 && !Powered) return 648;
if (Instrument == Instrument::Chime && Note == 0 && Powered) return 649;
if (Instrument == Instrument::Chime && Note == 0 && !Powered) return 650;
if (Instrument == Instrument::Chime && Note == 1 && Powered) return 651;
if (Instrument == Instrument::Chime && Note == 1 && !Powered) return 652;
if (Instrument == Instrument::Chime && Note == 2 && Powered) return 653;
if (Instrument == Instrument::Chime && Note == 2 && !Powered) return 654;
if (Instrument == Instrument::Chime && Note == 3 && Powered) return 655;
if (Instrument == Instrument::Chime && Note == 3 && !Powered) return 656;
if (Instrument == Instrument::Chime && Note == 4 && Powered) return 657;
if (Instrument == Instrument::Chime && Note == 4 && !Powered) return 658;
if (Instrument == Instrument::Chime && Note == 5 && Powered) return 659;
if (Instrument == Instrument::Chime && Note == 5 && !Powered) return 660;
if (Instrument == Instrument::Chime && Note == 6 && Powered) return 661;
if (Instrument == Instrument::Chime && Note == 6 && !Powered) return 662;
if (Instrument == Instrument::Chime && Note == 7 && Powered) return 663;
if (Instrument == Instrument::Chime && Note == 7 && !Powered) return 664;
if (Instrument == Instrument::Chime && Note == 8 && Powered) return 665;
if (Instrument == Instrument::Chime && Note == 8 && !Powered) return 666;
if (Instrument == Instrument::Chime && Note == 9 && Powered) return 667;
if (Instrument == Instrument::Chime && Note == 9 && !Powered) return 668;
if (Instrument == Instrument::Chime && Note == 10 && Powered) return 669;
if (Instrument == Instrument::Chime && Note == 10 && !Powered) return 670;
if (Instrument == Instrument::Chime && Note == 11 && Powered) return 671;
if (Instrument == Instrument::Chime && Note == 11 && !Powered) return 672;
if (Instrument == Instrument::Chime && Note == 12 && Powered) return 673;
if (Instrument == Instrument::Chime && Note == 12 && !Powered) return 674;
if (Instrument == Instrument::Chime && Note == 13 && Powered) return 675;
if (Instrument == Instrument::Chime && Note == 13 && !Powered) return 676;
if (Instrument == Instrument::Chime && Note == 14 && Powered) return 677;
if (Instrument == Instrument::Chime && Note == 14 && !Powered) return 678;
if (Instrument == Instrument::Chime && Note == 15 && Powered) return 679;
if (Instrument == Instrument::Chime && Note == 15 && !Powered) return 680;
if (Instrument == Instrument::Chime && Note == 16 && Powered) return 681;
if (Instrument == Instrument::Chime && Note == 16 && !Powered) return 682;
if (Instrument == Instrument::Chime && Note == 17 && Powered) return 683;
if (Instrument == Instrument::Chime && Note == 17 && !Powered) return 684;
if (Instrument == Instrument::Chime && Note == 18 && Powered) return 685;
if (Instrument == Instrument::Chime && Note == 18 && !Powered) return 686;
if (Instrument == Instrument::Chime && Note == 19 && Powered) return 687;
if (Instrument == Instrument::Chime && Note == 19 && !Powered) return 688;
if (Instrument == Instrument::Chime && Note == 20 && Powered) return 689;
if (Instrument == Instrument::Chime && Note == 20 && !Powered) return 690;
if (Instrument == Instrument::Chime && Note == 21 && Powered) return 691;
if (Instrument == Instrument::Chime && Note == 21 && !Powered) return 692;
if (Instrument == Instrument::Chime && Note == 22 && Powered) return 693;
if (Instrument == Instrument::Chime && Note == 22 && !Powered) return 694;
if (Instrument == Instrument::Chime && Note == 23 && Powered) return 695;
if (Instrument == Instrument::Chime && Note == 23 && !Powered) return 696;
if (Instrument == Instrument::Chime && Note == 24 && Powered) return 697;
if (Instrument == Instrument::Chime && Note == 24 && !Powered) return 698;
if (Instrument == Instrument::Xylophone && Note == 0 && Powered) return 699;
if (Instrument == Instrument::Xylophone && Note == 0 && !Powered) return 700;
if (Instrument == Instrument::Xylophone && Note == 1 && Powered) return 701;
if (Instrument == Instrument::Xylophone && Note == 1 && !Powered) return 702;
if (Instrument == Instrument::Xylophone && Note == 2 && Powered) return 703;
if (Instrument == Instrument::Xylophone && Note == 2 && !Powered) return 704;
if (Instrument == Instrument::Xylophone && Note == 3 && Powered) return 705;
if (Instrument == Instrument::Xylophone && Note == 3 && !Powered) return 706;
if (Instrument == Instrument::Xylophone && Note == 4 && Powered) return 707;
if (Instrument == Instrument::Xylophone && Note == 4 && !Powered) return 708;
if (Instrument == Instrument::Xylophone && Note == 5 && Powered) return 709;
if (Instrument == Instrument::Xylophone && Note == 5 && !Powered) return 710;
if (Instrument == Instrument::Xylophone && Note == 6 && Powered) return 711;
if (Instrument == Instrument::Xylophone && Note == 6 && !Powered) return 712;
if (Instrument == Instrument::Xylophone && Note == 7 && Powered) return 713;
if (Instrument == Instrument::Xylophone && Note == 7 && !Powered) return 714;
if (Instrument == Instrument::Xylophone && Note == 8 && Powered) return 715;
if (Instrument == Instrument::Xylophone && Note == 8 && !Powered) return 716;
if (Instrument == Instrument::Xylophone && Note == 9 && Powered) return 717;
if (Instrument == Instrument::Xylophone && Note == 9 && !Powered) return 718;
if (Instrument == Instrument::Xylophone && Note == 10 && Powered) return 719;
if (Instrument == Instrument::Xylophone && Note == 10 && !Powered) return 720;
if (Instrument == Instrument::Xylophone && Note == 11 && Powered) return 721;
if (Instrument == Instrument::Xylophone && Note == 11 && !Powered) return 722;
if (Instrument == Instrument::Xylophone && Note == 12 && Powered) return 723;
if (Instrument == Instrument::Xylophone && Note == 12 && !Powered) return 724;
if (Instrument == Instrument::Xylophone && Note == 13 && Powered) return 725;
if (Instrument == Instrument::Xylophone && Note == 13 && !Powered) return 726;
if (Instrument == Instrument::Xylophone && Note == 14 && Powered) return 727;
if (Instrument == Instrument::Xylophone && Note == 14 && !Powered) return 728;
if (Instrument == Instrument::Xylophone && Note == 15 && Powered) return 729;
if (Instrument == Instrument::Xylophone && Note == 15 && !Powered) return 730;
if (Instrument == Instrument::Xylophone && Note == 16 && Powered) return 731;
if (Instrument == Instrument::Xylophone && Note == 16 && !Powered) return 732;
if (Instrument == Instrument::Xylophone && Note == 17 && Powered) return 733;
if (Instrument == Instrument::Xylophone && Note == 17 && !Powered) return 734;
if (Instrument == Instrument::Xylophone && Note == 18 && Powered) return 735;
if (Instrument == Instrument::Xylophone && Note == 18 && !Powered) return 736;
if (Instrument == Instrument::Xylophone && Note == 19 && Powered) return 737;
if (Instrument == Instrument::Xylophone && Note == 19 && !Powered) return 738;
if (Instrument == Instrument::Xylophone && Note == 20 && Powered) return 739;
if (Instrument == Instrument::Xylophone && Note == 20 && !Powered) return 740;
if (Instrument == Instrument::Xylophone && Note == 21 && Powered) return 741;
if (Instrument == Instrument::Xylophone && Note == 21 && !Powered) return 742;
if (Instrument == Instrument::Xylophone && Note == 22 && Powered) return 743;
if (Instrument == Instrument::Xylophone && Note == 22 && !Powered) return 744;
if (Instrument == Instrument::Xylophone && Note == 23 && Powered) return 745;
if (Instrument == Instrument::Xylophone && Note == 23 && !Powered) return 746;
if (Instrument == Instrument::Xylophone && Note == 24 && Powered) return 747;
if (Instrument == Instrument::Xylophone && Note == 24 && !Powered) return 748;
if (Instrument == Instrument::IronXylophone && Note == 0 && Powered) return 749;
if (Instrument == Instrument::IronXylophone && Note == 0 && !Powered) return 750;
if (Instrument == Instrument::IronXylophone && Note == 1 && Powered) return 751;
if (Instrument == Instrument::IronXylophone && Note == 1 && !Powered) return 752;
if (Instrument == Instrument::IronXylophone && Note == 2 && Powered) return 753;
if (Instrument == Instrument::IronXylophone && Note == 2 && !Powered) return 754;
if (Instrument == Instrument::IronXylophone && Note == 3 && Powered) return 755;
if (Instrument == Instrument::IronXylophone && Note == 3 && !Powered) return 756;
if (Instrument == Instrument::IronXylophone && Note == 4 && Powered) return 757;
if (Instrument == Instrument::IronXylophone && Note == 4 && !Powered) return 758;
if (Instrument == Instrument::IronXylophone && Note == 5 && Powered) return 759;
if (Instrument == Instrument::IronXylophone && Note == 5 && !Powered) return 760;
if (Instrument == Instrument::IronXylophone && Note == 6 && Powered) return 761;
if (Instrument == Instrument::IronXylophone && Note == 6 && !Powered) return 762;
if (Instrument == Instrument::IronXylophone && Note == 7 && Powered) return 763;
if (Instrument == Instrument::IronXylophone && Note == 7 && !Powered) return 764;
if (Instrument == Instrument::IronXylophone && Note == 8 && Powered) return 765;
if (Instrument == Instrument::IronXylophone && Note == 8 && !Powered) return 766;
if (Instrument == Instrument::IronXylophone && Note == 9 && Powered) return 767;
if (Instrument == Instrument::IronXylophone && Note == 9 && !Powered) return 768;
if (Instrument == Instrument::IronXylophone && Note == 10 && Powered) return 769;
if (Instrument == Instrument::IronXylophone && Note == 10 && !Powered) return 770;
if (Instrument == Instrument::IronXylophone && Note == 11 && Powered) return 771;
if (Instrument == Instrument::IronXylophone && Note == 11 && !Powered) return 772;
if (Instrument == Instrument::IronXylophone && Note == 12 && Powered) return 773;
if (Instrument == Instrument::IronXylophone && Note == 12 && !Powered) return 774;
if (Instrument == Instrument::IronXylophone && Note == 13 && Powered) return 775;
if (Instrument == Instrument::IronXylophone && Note == 13 && !Powered) return 776;
if (Instrument == Instrument::IronXylophone && Note == 14 && Powered) return 777;
if (Instrument == Instrument::IronXylophone && Note == 14 && !Powered) return 778;
if (Instrument == Instrument::IronXylophone && Note == 15 && Powered) return 779;
if (Instrument == Instrument::IronXylophone && Note == 15 && !Powered) return 780;
if (Instrument == Instrument::IronXylophone && Note == 16 && Powered) return 781;
if (Instrument == Instrument::IronXylophone && Note == 16 && !Powered) return 782;
if (Instrument == Instrument::IronXylophone && Note == 17 && Powered) return 783;
if (Instrument == Instrument::IronXylophone && Note == 17 && !Powered) return 784;
if (Instrument == Instrument::IronXylophone && Note == 18 && Powered) return 785;
if (Instrument == Instrument::IronXylophone && Note == 18 && !Powered) return 786;
if (Instrument == Instrument::IronXylophone && Note == 19 && Powered) return 787;
if (Instrument == Instrument::IronXylophone && Note == 19 && !Powered) return 788;
if (Instrument == Instrument::IronXylophone && Note == 20 && Powered) return 789;
if (Instrument == Instrument::IronXylophone && Note == 20 && !Powered) return 790;
if (Instrument == Instrument::IronXylophone && Note == 21 && Powered) return 791;
if (Instrument == Instrument::IronXylophone && Note == 21 && !Powered) return 792;
if (Instrument == Instrument::IronXylophone && Note == 22 && Powered) return 793;
if (Instrument == Instrument::IronXylophone && Note == 22 && !Powered) return 794;
if (Instrument == Instrument::IronXylophone && Note == 23 && Powered) return 795;
if (Instrument == Instrument::IronXylophone && Note == 23 && !Powered) return 796;
if (Instrument == Instrument::IronXylophone && Note == 24 && Powered) return 797;
if (Instrument == Instrument::IronXylophone && Note == 24 && !Powered) return 798;
if (Instrument == Instrument::CowBell && Note == 0 && Powered) return 799;
if (Instrument == Instrument::CowBell && Note == 0 && !Powered) return 800;
if (Instrument == Instrument::CowBell && Note == 1 && Powered) return 801;
if (Instrument == Instrument::CowBell && Note == 1 && !Powered) return 802;
if (Instrument == Instrument::CowBell && Note == 2 && Powered) return 803;
if (Instrument == Instrument::CowBell && Note == 2 && !Powered) return 804;
if (Instrument == Instrument::CowBell && Note == 3 && Powered) return 805;
if (Instrument == Instrument::CowBell && Note == 3 && !Powered) return 806;
if (Instrument == Instrument::CowBell && Note == 4 && Powered) return 807;
if (Instrument == Instrument::CowBell && Note == 4 && !Powered) return 808;
if (Instrument == Instrument::CowBell && Note == 5 && Powered) return 809;
if (Instrument == Instrument::CowBell && Note == 5 && !Powered) return 810;
if (Instrument == Instrument::CowBell && Note == 6 && Powered) return 811;
if (Instrument == Instrument::CowBell && Note == 6 && !Powered) return 812;
if (Instrument == Instrument::CowBell && Note == 7 && Powered) return 813;
if (Instrument == Instrument::CowBell && Note == 7 && !Powered) return 814;
if (Instrument == Instrument::CowBell && Note == 8 && Powered) return 815;
if (Instrument == Instrument::CowBell && Note == 8 && !Powered) return 816;
if (Instrument == Instrument::CowBell && Note == 9 && Powered) return 817;
if (Instrument == Instrument::CowBell && Note == 9 && !Powered) return 818;
if (Instrument == Instrument::CowBell && Note == 10 && Powered) return 819;
if (Instrument == Instrument::CowBell && Note == 10 && !Powered) return 820;
if (Instrument == Instrument::CowBell && Note == 11 && Powered) return 821;
if (Instrument == Instrument::CowBell && Note == 11 && !Powered) return 822;
if (Instrument == Instrument::CowBell && Note == 12 && Powered) return 823;
if (Instrument == Instrument::CowBell && Note == 12 && !Powered) return 824;
if (Instrument == Instrument::CowBell && Note == 13 && Powered) return 825;
if (Instrument == Instrument::CowBell && Note == 13 && !Powered) return 826;
if (Instrument == Instrument::CowBell && Note == 14 && Powered) return 827;
if (Instrument == Instrument::CowBell && Note == 14 && !Powered) return 828;
if (Instrument == Instrument::CowBell && Note == 15 && Powered) return 829;
if (Instrument == Instrument::CowBell && Note == 15 && !Powered) return 830;
if (Instrument == Instrument::CowBell && Note == 16 && Powered) return 831;
if (Instrument == Instrument::CowBell && Note == 16 && !Powered) return 832;
if (Instrument == Instrument::CowBell && Note == 17 && Powered) return 833;
if (Instrument == Instrument::CowBell && Note == 17 && !Powered) return 834;
if (Instrument == Instrument::CowBell && Note == 18 && Powered) return 835;
if (Instrument == Instrument::CowBell && Note == 18 && !Powered) return 836;
if (Instrument == Instrument::CowBell && Note == 19 && Powered) return 837;
if (Instrument == Instrument::CowBell && Note == 19 && !Powered) return 838;
if (Instrument == Instrument::CowBell && Note == 20 && Powered) return 839;
if (Instrument == Instrument::CowBell && Note == 20 && !Powered) return 840;
if (Instrument == Instrument::CowBell && Note == 21 && Powered) return 841;
if (Instrument == Instrument::CowBell && Note == 21 && !Powered) return 842;
if (Instrument == Instrument::CowBell && Note == 22 && Powered) return 843;
if (Instrument == Instrument::CowBell && Note == 22 && !Powered) return 844;
if (Instrument == Instrument::CowBell && Note == 23 && Powered) return 845;
if (Instrument == Instrument::CowBell && Note == 23 && !Powered) return 846;
if (Instrument == Instrument::CowBell && Note == 24 && Powered) return 847;
if (Instrument == Instrument::CowBell && Note == 24 && !Powered) return 848;
if (Instrument == Instrument::Didgeridoo && Note == 0 && Powered) return 849;
if (Instrument == Instrument::Didgeridoo && Note == 0 && !Powered) return 850;
if (Instrument == Instrument::Didgeridoo && Note == 1 && Powered) return 851;
if (Instrument == Instrument::Didgeridoo && Note == 1 && !Powered) return 852;
if (Instrument == Instrument::Didgeridoo && Note == 2 && Powered) return 853;
if (Instrument == Instrument::Didgeridoo && Note == 2 && !Powered) return 854;
if (Instrument == Instrument::Didgeridoo && Note == 3 && Powered) return 855;
if (Instrument == Instrument::Didgeridoo && Note == 3 && !Powered) return 856;
if (Instrument == Instrument::Didgeridoo && Note == 4 && Powered) return 857;
if (Instrument == Instrument::Didgeridoo && Note == 4 && !Powered) return 858;
if (Instrument == Instrument::Didgeridoo && Note == 5 && Powered) return 859;
if (Instrument == Instrument::Didgeridoo && Note == 5 && !Powered) return 860;
if (Instrument == Instrument::Didgeridoo && Note == 6 && Powered) return 861;
if (Instrument == Instrument::Didgeridoo && Note == 6 && !Powered) return 862;
if (Instrument == Instrument::Didgeridoo && Note == 7 && Powered) return 863;
if (Instrument == Instrument::Didgeridoo && Note == 7 && !Powered) return 864;
if (Instrument == Instrument::Didgeridoo && Note == 8 && Powered) return 865;
if (Instrument == Instrument::Didgeridoo && Note == 8 && !Powered) return 866;
if (Instrument == Instrument::Didgeridoo && Note == 9 && Powered) return 867;
if (Instrument == Instrument::Didgeridoo && Note == 9 && !Powered) return 868;
if (Instrument == Instrument::Didgeridoo && Note == 10 && Powered) return 869;
if (Instrument == Instrument::Didgeridoo && Note == 10 && !Powered) return 870;
if (Instrument == Instrument::Didgeridoo && Note == 11 && Powered) return 871;
if (Instrument == Instrument::Didgeridoo && Note == 11 && !Powered) return 872;
if (Instrument == Instrument::Didgeridoo && Note == 12 && Powered) return 873;
if (Instrument == Instrument::Didgeridoo && Note == 12 && !Powered) return 874;
if (Instrument == Instrument::Didgeridoo && Note == 13 && Powered) return 875;
if (Instrument == Instrument::Didgeridoo && Note == 13 && !Powered) return 876;
if (Instrument == Instrument::Didgeridoo && Note == 14 && Powered) return 877;
if (Instrument == Instrument::Didgeridoo && Note == 14 && !Powered) return 878;
if (Instrument == Instrument::Didgeridoo && Note == 15 && Powered) return 879;
if (Instrument == Instrument::Didgeridoo && Note == 15 && !Powered) return 880;
if (Instrument == Instrument::Didgeridoo && Note == 16 && Powered) return 881;
if (Instrument == Instrument::Didgeridoo && Note == 16 && !Powered) return 882;
if (Instrument == Instrument::Didgeridoo && Note == 17 && Powered) return 883;
if (Instrument == Instrument::Didgeridoo && Note == 17 && !Powered) return 884;
if (Instrument == Instrument::Didgeridoo && Note == 18 && Powered) return 885;
if (Instrument == Instrument::Didgeridoo && Note == 18 && !Powered) return 886;
if (Instrument == Instrument::Didgeridoo && Note == 19 && Powered) return 887;
if (Instrument == Instrument::Didgeridoo && Note == 19 && !Powered) return 888;
if (Instrument == Instrument::Didgeridoo && Note == 20 && Powered) return 889;
if (Instrument == Instrument::Didgeridoo && Note == 20 && !Powered) return 890;
if (Instrument == Instrument::Didgeridoo && Note == 21 && Powered) return 891;
if (Instrument == Instrument::Didgeridoo && Note == 21 && !Powered) return 892;
if (Instrument == Instrument::Didgeridoo && Note == 22 && Powered) return 893;
if (Instrument == Instrument::Didgeridoo && Note == 22 && !Powered) return 894;
if (Instrument == Instrument::Didgeridoo && Note == 23 && Powered) return 895;
if (Instrument == Instrument::Didgeridoo && Note == 23 && !Powered) return 896;
if (Instrument == Instrument::Didgeridoo && Note == 24 && Powered) return 897;
if (Instrument == Instrument::Didgeridoo && Note == 24 && !Powered) return 898;
if (Instrument == Instrument::Bit && Note == 0 && Powered) return 899;
if (Instrument == Instrument::Bit && Note == 0 && !Powered) return 900;
if (Instrument == Instrument::Bit && Note == 1 && Powered) return 901;
if (Instrument == Instrument::Bit && Note == 1 && !Powered) return 902;
if (Instrument == Instrument::Bit && Note == 2 && Powered) return 903;
if (Instrument == Instrument::Bit && Note == 2 && !Powered) return 904;
if (Instrument == Instrument::Bit && Note == 3 && Powered) return 905;
if (Instrument == Instrument::Bit && Note == 3 && !Powered) return 906;
if (Instrument == Instrument::Bit && Note == 4 && Powered) return 907;
if (Instrument == Instrument::Bit && Note == 4 && !Powered) return 908;
if (Instrument == Instrument::Bit && Note == 5 && Powered) return 909;
if (Instrument == Instrument::Bit && Note == 5 && !Powered) return 910;
if (Instrument == Instrument::Bit && Note == 6 && Powered) return 911;
if (Instrument == Instrument::Bit && Note == 6 && !Powered) return 912;
if (Instrument == Instrument::Bit && Note == 7 && Powered) return 913;
if (Instrument == Instrument::Bit && Note == 7 && !Powered) return 914;
if (Instrument == Instrument::Bit && Note == 8 && Powered) return 915;
if (Instrument == Instrument::Bit && Note == 8 && !Powered) return 916;
if (Instrument == Instrument::Bit && Note == 9 && Powered) return 917;
if (Instrument == Instrument::Bit && Note == 9 && !Powered) return 918;
if (Instrument == Instrument::Bit && Note == 10 && Powered) return 919;
if (Instrument == Instrument::Bit && Note == 10 && !Powered) return 920;
if (Instrument == Instrument::Bit && Note == 11 && Powered) return 921;
if (Instrument == Instrument::Bit && Note == 11 && !Powered) return 922;
if (Instrument == Instrument::Bit && Note == 12 && Powered) return 923;
if (Instrument == Instrument::Bit && Note == 12 && !Powered) return 924;
if (Instrument == Instrument::Bit && Note == 13 && Powered) return 925;
if (Instrument == Instrument::Bit && Note == 13 && !Powered) return 926;
if (Instrument == Instrument::Bit && Note == 14 && Powered) return 927;
if (Instrument == Instrument::Bit && Note == 14 && !Powered) return 928;
if (Instrument == Instrument::Bit && Note == 15 && Powered) return 929;
if (Instrument == Instrument::Bit && Note == 15 && !Powered) return 930;
if (Instrument == Instrument::Bit && Note == 16 && Powered) return 931;
if (Instrument == Instrument::Bit && Note == 16 && !Powered) return 932;
if (Instrument == Instrument::Bit && Note == 17 && Powered) return 933;
if (Instrument == Instrument::Bit && Note == 17 && !Powered) return 934;
if (Instrument == Instrument::Bit && Note == 18 && Powered) return 935;
if (Instrument == Instrument::Bit && Note == 18 && !Powered) return 936;
if (Instrument == Instrument::Bit && Note == 19 && Powered) return 937;
if (Instrument == Instrument::Bit && Note == 19 && !Powered) return 938;
if (Instrument == Instrument::Bit && Note == 20 && Powered) return 939;
if (Instrument == Instrument::Bit && Note == 20 && !Powered) return 940;
if (Instrument == Instrument::Bit && Note == 21 && Powered) return 941;
if (Instrument == Instrument::Bit && Note == 21 && !Powered) return 942;
if (Instrument == Instrument::Bit && Note == 22 && Powered) return 943;
if (Instrument == Instrument::Bit && Note == 22 && !Powered) return 944;
if (Instrument == Instrument::Bit && Note == 23 && Powered) return 945;
if (Instrument == Instrument::Bit && Note == 23 && !Powered) return 946;
if (Instrument == Instrument::Bit && Note == 24 && Powered) return 947;
if (Instrument == Instrument::Bit && Note == 24 && !Powered) return 948;
if (Instrument == Instrument::Banjo && Note == 0 && Powered) return 949;
if (Instrument == Instrument::Banjo && Note == 0 && !Powered) return 950;
if (Instrument == Instrument::Banjo && Note == 1 && Powered) return 951;
if (Instrument == Instrument::Banjo && Note == 1 && !Powered) return 952;
if (Instrument == Instrument::Banjo && Note == 2 && Powered) return 953;
if (Instrument == Instrument::Banjo && Note == 2 && !Powered) return 954;
if (Instrument == Instrument::Banjo && Note == 3 && Powered) return 955;
if (Instrument == Instrument::Banjo && Note == 3 && !Powered) return 956;
if (Instrument == Instrument::Banjo && Note == 4 && Powered) return 957;
if (Instrument == Instrument::Banjo && Note == 4 && !Powered) return 958;
if (Instrument == Instrument::Banjo && Note == 5 && Powered) return 959;
if (Instrument == Instrument::Banjo && Note == 5 && !Powered) return 960;
if (Instrument == Instrument::Banjo && Note == 6 && Powered) return 961;
if (Instrument == Instrument::Banjo && Note == 6 && !Powered) return 962;
if (Instrument == Instrument::Banjo && Note == 7 && Powered) return 963;
if (Instrument == Instrument::Banjo && Note == 7 && !Powered) return 964;
if (Instrument == Instrument::Banjo && Note == 8 && Powered) return 965;
if (Instrument == Instrument::Banjo && Note == 8 && !Powered) return 966;
if (Instrument == Instrument::Banjo && Note == 9 && Powered) return 967;
if (Instrument == Instrument::Banjo && Note == 9 && !Powered) return 968;
if (Instrument == Instrument::Banjo && Note == 10 && Powered) return 969;
if (Instrument == Instrument::Banjo && Note == 10 && !Powered) return 970;
if (Instrument == Instrument::Banjo && Note == 11 && Powered) return 971;
if (Instrument == Instrument::Banjo && Note == 11 && !Powered) return 972;
if (Instrument == Instrument::Banjo && Note == 12 && Powered) return 973;
if (Instrument == Instrument::Banjo && Note == 12 && !Powered) return 974;
if (Instrument == Instrument::Banjo && Note == 13 && Powered) return 975;
if (Instrument == Instrument::Banjo && Note == 13 && !Powered) return 976;
if (Instrument == Instrument::Banjo && Note == 14 && Powered) return 977;
if (Instrument == Instrument::Banjo && Note == 14 && !Powered) return 978;
if (Instrument == Instrument::Banjo && Note == 15 && Powered) return 979;
if (Instrument == Instrument::Banjo && Note == 15 && !Powered) return 980;
if (Instrument == Instrument::Banjo && Note == 16 && Powered) return 981;
if (Instrument == Instrument::Banjo && Note == 16 && !Powered) return 982;
if (Instrument == Instrument::Banjo && Note == 17 && Powered) return 983;
if (Instrument == Instrument::Banjo && Note == 17 && !Powered) return 984;
if (Instrument == Instrument::Banjo && Note == 18 && Powered) return 985;
if (Instrument == Instrument::Banjo && Note == 18 && !Powered) return 986;
if (Instrument == Instrument::Banjo && Note == 19 && Powered) return 987;
if (Instrument == Instrument::Banjo && Note == 19 && !Powered) return 988;
if (Instrument == Instrument::Banjo && Note == 20 && Powered) return 989;
if (Instrument == Instrument::Banjo && Note == 20 && !Powered) return 990;
if (Instrument == Instrument::Banjo && Note == 21 && Powered) return 991;
if (Instrument == Instrument::Banjo && Note == 21 && !Powered) return 992;
if (Instrument == Instrument::Banjo && Note == 22 && Powered) return 993;
if (Instrument == Instrument::Banjo && Note == 22 && !Powered) return 994;
if (Instrument == Instrument::Banjo && Note == 23 && Powered) return 995;
if (Instrument == Instrument::Banjo && Note == 23 && !Powered) return 996;
if (Instrument == Instrument::Banjo && Note == 24 && Powered) return 997;
if (Instrument == Instrument::Banjo && Note == 24 && !Powered) return 998;
if (Instrument == Instrument::Pling && Note == 0 && Powered) return 999;
if (Instrument == Instrument::Pling && Note == 0 && !Powered) return 1000;
if (Instrument == Instrument::Pling && Note == 1 && Powered) return 1001;
if (Instrument == Instrument::Pling && Note == 1 && !Powered) return 1002;
if (Instrument == Instrument::Pling && Note == 2 && Powered) return 1003;
if (Instrument == Instrument::Pling && Note == 2 && !Powered) return 1004;
if (Instrument == Instrument::Pling && Note == 3 && Powered) return 1005;
if (Instrument == Instrument::Pling && Note == 3 && !Powered) return 1006;
if (Instrument == Instrument::Pling && Note == 4 && Powered) return 1007;
if (Instrument == Instrument::Pling && Note == 4 && !Powered) return 1008;
if (Instrument == Instrument::Pling && Note == 5 && Powered) return 1009;
if (Instrument == Instrument::Pling && Note == 5 && !Powered) return 1010;
if (Instrument == Instrument::Pling && Note == 6 && Powered) return 1011;
if (Instrument == Instrument::Pling && Note == 6 && !Powered) return 1012;
if (Instrument == Instrument::Pling && Note == 7 && Powered) return 1013;
if (Instrument == Instrument::Pling && Note == 7 && !Powered) return 1014;
if (Instrument == Instrument::Pling && Note == 8 && Powered) return 1015;
if (Instrument == Instrument::Pling && Note == 8 && !Powered) return 1016;
if (Instrument == Instrument::Pling && Note == 9 && Powered) return 1017;
if (Instrument == Instrument::Pling && Note == 9 && !Powered) return 1018;
if (Instrument == Instrument::Pling && Note == 10 && Powered) return 1019;
if (Instrument == Instrument::Pling && Note == 10 && !Powered) return 1020;
if (Instrument == Instrument::Pling && Note == 11 && Powered) return 1021;
if (Instrument == Instrument::Pling && Note == 11 && !Powered) return 1022;
if (Instrument == Instrument::Pling && Note == 12 && Powered) return 1023;
if (Instrument == Instrument::Pling && Note == 12 && !Powered) return 1024;
if (Instrument == Instrument::Pling && Note == 13 && Powered) return 1025;
if (Instrument == Instrument::Pling && Note == 13 && !Powered) return 1026;
if (Instrument == Instrument::Pling && Note == 14 && Powered) return 1027;
if (Instrument == Instrument::Pling && Note == 14 && !Powered) return 1028;
if (Instrument == Instrument::Pling && Note == 15 && Powered) return 1029;
if (Instrument == Instrument::Pling && Note == 15 && !Powered) return 1030;
if (Instrument == Instrument::Pling && Note == 16 && Powered) return 1031;
if (Instrument == Instrument::Pling && Note == 16 && !Powered) return 1032;
if (Instrument == Instrument::Pling && Note == 17 && Powered) return 1033;
if (Instrument == Instrument::Pling && Note == 17 && !Powered) return 1034;
if (Instrument == Instrument::Pling && Note == 18 && Powered) return 1035;
if (Instrument == Instrument::Pling && Note == 18 && !Powered) return 1036;
if (Instrument == Instrument::Pling && Note == 19 && Powered) return 1037;
if (Instrument == Instrument::Pling && Note == 19 && !Powered) return 1038;
if (Instrument == Instrument::Pling && Note == 20 && Powered) return 1039;
if (Instrument == Instrument::Pling && Note == 20 && !Powered) return 1040;
if (Instrument == Instrument::Pling && Note == 21 && Powered) return 1041;
if (Instrument == Instrument::Pling && Note == 21 && !Powered) return 1042;
if (Instrument == Instrument::Pling && Note == 22 && Powered) return 1043;
if (Instrument == Instrument::Pling && Note == 22 && !Powered) return 1044;
if (Instrument == Instrument::Pling && Note == 23 && Powered) return 1045;
if (Instrument == Instrument::Pling && Note == 23 && !Powered) return 1046;
if (Instrument == Instrument::Pling && Note == 24 && Powered) return 1047;
return 1048;
}
short NoteBlock();
enum Instrument Instrument(short ID);
unsigned char Note(short ID);
bool Powered(short ID);
}
namespace OakButton
{
enum class Face
{
Floor,
Wall,
Ceiling
};
constexpr short OakButton(enum Face Face, eBlockFace Facing, bool Powered)
{
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 6346;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 6347;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 6348;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 6349;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 6350;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 6351;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 6352;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 6353;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 6354;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 6355;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 6356;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 6357;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 6358;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 6359;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 6360;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 6361;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 6362;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 6363;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 6364;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 6365;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 6366;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 6367;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 6368;
return 6369;
}
short OakButton();
enum Face Face(short ID);
eBlockFace Facing(short ID);
bool Powered(short ID);
}
namespace OakDoor
{
enum class Half
{
Upper,
Lower
};
enum class Hinge
{
Left,
Right
};
constexpr short OakDoor(eBlockFace Facing, enum Half Half, enum Hinge Hinge, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 3573;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 3574;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 3575;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 3576;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 3577;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 3578;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 3579;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 3580;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 3581;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 3582;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 3583;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 3584;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 3585;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 3586;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 3587;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 3588;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 3589;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 3590;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 3591;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 3592;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 3593;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 3594;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 3595;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 3596;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 3597;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 3598;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 3599;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 3600;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 3601;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 3602;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 3603;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 3604;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 3605;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 3606;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 3607;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 3608;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 3609;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 3610;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 3611;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 3612;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 3613;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 3614;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 3615;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 3616;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 3617;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 3618;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 3619;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 3620;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 3621;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 3622;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 3623;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 3624;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 3625;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 3626;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 3627;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 3628;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 3629;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 3630;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 3631;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 3632;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 3633;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 3634;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 3635;
return 3636;
}
short OakDoor();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Hinge Hinge(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace OakFence
{
constexpr short OakFence(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 3968;
if (East && North && South && !West) return 3969;
if (East && North && !South && West) return 3972;
if (East && North && !South && !West) return 3973;
if (East && !North && South && West) return 3976;
if (East && !North && South && !West) return 3977;
if (East && !North && !South && West) return 3980;
if (East && !North && !South && !West) return 3981;
if (!East && North && South && West) return 3984;
if (!East && North && South && !West) return 3985;
if (!East && North && !South && West) return 3988;
if (!East && North && !South && !West) return 3989;
if (!East && !North && South && West) return 3992;
if (!East && !North && South && !West) return 3993;
if (!East && !North && !South && West) return 3996;
return 3997;
}
short OakFence();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace OakFenceGate
{
constexpr short OakFenceGate(eBlockFace Facing, bool InWall, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && Open && Powered) return 4820;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && Open && !Powered) return 4821;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && !Open && Powered) return 4822;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && !Open && !Powered) return 4823;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && Open && Powered) return 4824;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && Open && !Powered) return 4825;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && !Open && Powered) return 4826;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && !Open && !Powered) return 4827;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && Open && Powered) return 4828;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && Open && !Powered) return 4829;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && !Open && Powered) return 4830;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && !Open && !Powered) return 4831;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && Open && Powered) return 4832;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && Open && !Powered) return 4833;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && !Open && Powered) return 4834;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && !Open && !Powered) return 4835;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && Open && Powered) return 4836;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && Open && !Powered) return 4837;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && !Open && Powered) return 4838;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && !Open && !Powered) return 4839;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && Open && Powered) return 4840;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && Open && !Powered) return 4841;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && !Open && Powered) return 4842;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && !Open && !Powered) return 4843;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && Open && Powered) return 4844;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && Open && !Powered) return 4845;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && !Open && Powered) return 4846;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && !Open && !Powered) return 4847;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && Open && Powered) return 4848;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && Open && !Powered) return 4849;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && !Open && Powered) return 4850;
return 4851;
}
short OakFenceGate();
eBlockFace Facing(short ID);
bool InWall(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace OakLeaves
{
constexpr short OakLeaves(unsigned char Distance, bool Persistent)
{
if (Distance == 1 && Persistent) return 145;
if (Distance == 1 && !Persistent) return 146;
if (Distance == 2 && Persistent) return 147;
if (Distance == 2 && !Persistent) return 148;
if (Distance == 3 && Persistent) return 149;
if (Distance == 3 && !Persistent) return 150;
if (Distance == 4 && Persistent) return 151;
if (Distance == 4 && !Persistent) return 152;
if (Distance == 5 && Persistent) return 153;
if (Distance == 5 && !Persistent) return 154;
if (Distance == 6 && Persistent) return 155;
if (Distance == 6 && !Persistent) return 156;
if (Distance == 7 && Persistent) return 157;
return 158;
}
short OakLeaves();
unsigned char Distance(short ID);
bool Persistent(short ID);
}
namespace OakLog
{
enum class Axis
{
X,
Y,
Z
};
constexpr short OakLog(enum Axis Axis)
{
if (Axis == Axis::X) return 73;
if (Axis == Axis::Y) return 74;
return 75;
}
short OakLog();
enum Axis Axis(short ID);
}
namespace OakPlanks
{
constexpr short OakPlanks()
{
return 15;
}
}
namespace OakPressurePlate
{
constexpr short OakPressurePlate(bool Powered)
{
if (Powered) return 3873;
return 3874;
}
short OakPressurePlate();
bool Powered(short ID);
}
namespace OakSapling
{
constexpr short OakSapling(unsigned char Stage)
{
if (Stage == 0) return 21;
return 22;
}
short OakSapling();
unsigned char Stage(short ID);
}
namespace OakSign
{
constexpr short OakSign(unsigned char Rotation)
{
if (Rotation == 0) return 3382;
if (Rotation == 1) return 3384;
if (Rotation == 2) return 3386;
if (Rotation == 3) return 3388;
if (Rotation == 4) return 3390;
if (Rotation == 5) return 3392;
if (Rotation == 6) return 3394;
if (Rotation == 7) return 3396;
if (Rotation == 8) return 3398;
if (Rotation == 9) return 3400;
if (Rotation == 10) return 3402;
if (Rotation == 11) return 3404;
if (Rotation == 12) return 3406;
if (Rotation == 13) return 3408;
if (Rotation == 14) return 3410;
return 3412;
}
short OakSign();
unsigned char Rotation(short ID);
}
namespace OakSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short OakSlab(enum Type Type)
{
if (Type == Type::Top) return 8301;
if (Type == Type::Bottom) return 8303;
return 8305;
}
short OakSlab();
enum Type Type(short ID);
}
namespace OakStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short OakStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 1955;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 1957;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 1959;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 1961;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 1963;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 1965;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 1967;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 1969;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 1971;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 1973;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 1975;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 1977;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 1979;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 1981;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 1983;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 1985;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 1987;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 1989;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 1991;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 1993;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 1995;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 1997;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 1999;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 2001;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 2003;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 2005;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 2007;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 2009;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 2011;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 2013;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 2015;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 2017;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 2019;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 2021;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 2023;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 2025;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 2027;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 2029;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 2031;
return 2033;
}
short OakStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace OakTrapdoor
{
enum class Half
{
Top,
Bottom
};
constexpr short OakTrapdoor(eBlockFace Facing, enum Half Half, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Open && Powered) return 4112;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Open && !Powered) return 4114;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && !Open && Powered) return 4116;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && !Open && !Powered) return 4118;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Open && Powered) return 4120;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Open && !Powered) return 4122;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && !Open && Powered) return 4124;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && !Open && !Powered) return 4126;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Open && Powered) return 4128;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Open && !Powered) return 4130;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && !Open && Powered) return 4132;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && !Open && !Powered) return 4134;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Open && Powered) return 4136;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Open && !Powered) return 4138;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && !Open && Powered) return 4140;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && !Open && !Powered) return 4142;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Open && Powered) return 4144;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Open && !Powered) return 4146;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && !Open && Powered) return 4148;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && !Open && !Powered) return 4150;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Open && Powered) return 4152;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Open && !Powered) return 4154;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && !Open && Powered) return 4156;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && !Open && !Powered) return 4158;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Open && Powered) return 4160;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Open && !Powered) return 4162;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && !Open && Powered) return 4164;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && !Open && !Powered) return 4166;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Open && Powered) return 4168;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Open && !Powered) return 4170;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && !Open && Powered) return 4172;
return 4174;
}
short OakTrapdoor();
eBlockFace Facing(short ID);
enum Half Half(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace OakWallSign
{
constexpr short OakWallSign(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 3736;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 3738;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 3740;
return 3742;
}
short OakWallSign();
eBlockFace Facing(short ID);
}
namespace OakWood
{
enum class Axis
{
X,
Y,
Z
};
constexpr short OakWood(enum Axis Axis)
{
if (Axis == Axis::X) return 109;
if (Axis == Axis::Y) return 110;
return 111;
}
short OakWood();
enum Axis Axis(short ID);
}
namespace Observer
{
constexpr short Observer(eBlockFace Facing, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 9260;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 9261;
if (Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 9262;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 9263;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 9264;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 9265;
if (Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 9266;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 9267;
if (Facing == eBlockFace::BLOCK_FACE_YP && Powered) return 9268;
if (Facing == eBlockFace::BLOCK_FACE_YP && !Powered) return 9269;
if (Facing == eBlockFace::BLOCK_FACE_YM && Powered) return 9270;
return 9271;
}
short Observer();
eBlockFace Facing(short ID);
bool Powered(short ID);
}
namespace Obsidian
{
constexpr short Obsidian()
{
return 1434;
}
}
namespace OrangeBanner
{
constexpr short OrangeBanner(unsigned char Rotation)
{
if (Rotation == 0) return 7913;
if (Rotation == 1) return 7914;
if (Rotation == 2) return 7915;
if (Rotation == 3) return 7916;
if (Rotation == 4) return 7917;
if (Rotation == 5) return 7918;
if (Rotation == 6) return 7919;
if (Rotation == 7) return 7920;
if (Rotation == 8) return 7921;
if (Rotation == 9) return 7922;
if (Rotation == 10) return 7923;
if (Rotation == 11) return 7924;
if (Rotation == 12) return 7925;
if (Rotation == 13) return 7926;
if (Rotation == 14) return 7927;
return 7928;
}
short OrangeBanner();
unsigned char Rotation(short ID);
}
namespace OrangeBed
{
enum class Part
{
Head,
Foot
};
constexpr short OrangeBed(eBlockFace Facing, bool Occupied, enum Part Part)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Head) return 1065;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Foot) return 1066;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Head) return 1067;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Foot) return 1068;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Head) return 1069;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Foot) return 1070;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Head) return 1071;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Foot) return 1072;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Head) return 1073;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Foot) return 1074;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Head) return 1075;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Foot) return 1076;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Head) return 1077;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Foot) return 1078;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Occupied && Part == Part::Head) return 1079;
return 1080;
}
short OrangeBed();
eBlockFace Facing(short ID);
bool Occupied(short ID);
enum Part Part(short ID);
}
namespace OrangeCarpet
{
constexpr short OrangeCarpet()
{
return 7867;
}
}
namespace OrangeConcrete
{
constexpr short OrangeConcrete()
{
return 9439;
}
}
namespace OrangeConcretePowder
{
constexpr short OrangeConcretePowder()
{
return 9455;
}
}
namespace OrangeGlazedTerracotta
{
constexpr short OrangeGlazedTerracotta(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9378;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9379;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9380;
return 9381;
}
short OrangeGlazedTerracotta();
eBlockFace Facing(short ID);
}
namespace OrangeShulkerBox
{
constexpr short OrangeShulkerBox(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9284;
if (Facing == eBlockFace::BLOCK_FACE_XP) return 9285;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9286;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9287;
if (Facing == eBlockFace::BLOCK_FACE_YP) return 9288;
return 9289;
}
short OrangeShulkerBox();
eBlockFace Facing(short ID);
}
namespace OrangeStainedGlass
{
constexpr short OrangeStainedGlass()
{
return 4096;
}
}
namespace OrangeStainedGlassPane
{
constexpr short OrangeStainedGlassPane(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 6897;
if (East && North && South && !West) return 6898;
if (East && North && !South && West) return 6901;
if (East && North && !South && !West) return 6902;
if (East && !North && South && West) return 6905;
if (East && !North && South && !West) return 6906;
if (East && !North && !South && West) return 6909;
if (East && !North && !South && !West) return 6910;
if (!East && North && South && West) return 6913;
if (!East && North && South && !West) return 6914;
if (!East && North && !South && West) return 6917;
if (!East && North && !South && !West) return 6918;
if (!East && !North && South && West) return 6921;
if (!East && !North && South && !West) return 6922;
if (!East && !North && !South && West) return 6925;
return 6926;
}
short OrangeStainedGlassPane();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace OrangeTerracotta
{
constexpr short OrangeTerracotta()
{
return 6848;
}
}
namespace OrangeTulip
{
constexpr short OrangeTulip()
{
return 1418;
}
}
namespace OrangeWallBanner
{
constexpr short OrangeWallBanner(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8157;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8158;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 8159;
return 8160;
}
short OrangeWallBanner();
eBlockFace Facing(short ID);
}
namespace OrangeWool
{
constexpr short OrangeWool()
{
return 1385;
}
}
namespace OxeyeDaisy
{
constexpr short OxeyeDaisy()
{
return 1421;
}
}
namespace PackedIce
{
constexpr short PackedIce()
{
return 7884;
}
}
namespace Peony
{
enum class Half
{
Upper,
Lower
};
constexpr short Peony(enum Half Half)
{
if (Half == Half::Upper) return 7891;
return 7892;
}
short Peony();
enum Half Half(short ID);
}
namespace PetrifiedOakSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short PetrifiedOakSlab(enum Type Type)
{
if (Type == Type::Top) return 8361;
if (Type == Type::Bottom) return 8363;
return 8365;
}
short PetrifiedOakSlab();
enum Type Type(short ID);
}
namespace PinkBanner
{
constexpr short PinkBanner(unsigned char Rotation)
{
if (Rotation == 0) return 7993;
if (Rotation == 1) return 7994;
if (Rotation == 2) return 7995;
if (Rotation == 3) return 7996;
if (Rotation == 4) return 7997;
if (Rotation == 5) return 7998;
if (Rotation == 6) return 7999;
if (Rotation == 7) return 8000;
if (Rotation == 8) return 8001;
if (Rotation == 9) return 8002;
if (Rotation == 10) return 8003;
if (Rotation == 11) return 8004;
if (Rotation == 12) return 8005;
if (Rotation == 13) return 8006;
if (Rotation == 14) return 8007;
return 8008;
}
short PinkBanner();
unsigned char Rotation(short ID);
}
namespace PinkBed
{
enum class Part
{
Head,
Foot
};
constexpr short PinkBed(eBlockFace Facing, bool Occupied, enum Part Part)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Head) return 1145;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Foot) return 1146;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Head) return 1147;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Foot) return 1148;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Head) return 1149;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Foot) return 1150;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Head) return 1151;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Foot) return 1152;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Head) return 1153;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Foot) return 1154;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Head) return 1155;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Foot) return 1156;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Head) return 1157;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Foot) return 1158;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Occupied && Part == Part::Head) return 1159;
return 1160;
}
short PinkBed();
eBlockFace Facing(short ID);
bool Occupied(short ID);
enum Part Part(short ID);
}
namespace PinkCarpet
{
constexpr short PinkCarpet()
{
return 7872;
}
}
namespace PinkConcrete
{
constexpr short PinkConcrete()
{
return 9444;
}
}
namespace PinkConcretePowder
{
constexpr short PinkConcretePowder()
{
return 9460;
}
}
namespace PinkGlazedTerracotta
{
constexpr short PinkGlazedTerracotta(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9398;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9399;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9400;
return 9401;
}
short PinkGlazedTerracotta();
eBlockFace Facing(short ID);
}
namespace PinkShulkerBox
{
constexpr short PinkShulkerBox(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9314;
if (Facing == eBlockFace::BLOCK_FACE_XP) return 9315;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9316;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9317;
if (Facing == eBlockFace::BLOCK_FACE_YP) return 9318;
return 9319;
}
short PinkShulkerBox();
eBlockFace Facing(short ID);
}
namespace PinkStainedGlass
{
constexpr short PinkStainedGlass()
{
return 4101;
}
}
namespace PinkStainedGlassPane
{
constexpr short PinkStainedGlassPane(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 7057;
if (East && North && South && !West) return 7058;
if (East && North && !South && West) return 7061;
if (East && North && !South && !West) return 7062;
if (East && !North && South && West) return 7065;
if (East && !North && South && !West) return 7066;
if (East && !North && !South && West) return 7069;
if (East && !North && !South && !West) return 7070;
if (!East && North && South && West) return 7073;
if (!East && North && South && !West) return 7074;
if (!East && North && !South && West) return 7077;
if (!East && North && !South && !West) return 7078;
if (!East && !North && South && West) return 7081;
if (!East && !North && South && !West) return 7082;
if (!East && !North && !South && West) return 7085;
return 7086;
}
short PinkStainedGlassPane();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace PinkTerracotta
{
constexpr short PinkTerracotta()
{
return 6853;
}
}
namespace PinkTulip
{
constexpr short PinkTulip()
{
return 1420;
}
}
namespace PinkWallBanner
{
constexpr short PinkWallBanner(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8177;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8178;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 8179;
return 8180;
}
short PinkWallBanner();
eBlockFace Facing(short ID);
}
namespace PinkWool
{
constexpr short PinkWool()
{
return 1390;
}
}
namespace Piston
{
constexpr short Piston(bool Extended, eBlockFace Facing)
{
if (Extended && Facing == eBlockFace::BLOCK_FACE_ZM) return 1348;
if (Extended && Facing == eBlockFace::BLOCK_FACE_XP) return 1349;
if (Extended && Facing == eBlockFace::BLOCK_FACE_ZP) return 1350;
if (Extended && Facing == eBlockFace::BLOCK_FACE_XM) return 1351;
if (Extended && Facing == eBlockFace::BLOCK_FACE_YP) return 1352;
if (Extended && Facing == eBlockFace::BLOCK_FACE_YM) return 1353;
if (!Extended && Facing == eBlockFace::BLOCK_FACE_ZM) return 1354;
if (!Extended && Facing == eBlockFace::BLOCK_FACE_XP) return 1355;
if (!Extended && Facing == eBlockFace::BLOCK_FACE_ZP) return 1356;
if (!Extended && Facing == eBlockFace::BLOCK_FACE_XM) return 1357;
if (!Extended && Facing == eBlockFace::BLOCK_FACE_YP) return 1358;
return 1359;
}
short Piston();
bool Extended(short ID);
eBlockFace Facing(short ID);
}
namespace PistonHead
{
enum class Type
{
Normal,
Sticky
};
constexpr short PistonHead(eBlockFace Facing, bool Short, enum Type Type)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Short && Type == Type::Normal) return 1360;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Short && Type == Type::Sticky) return 1361;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Short && Type == Type::Normal) return 1362;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Short && Type == Type::Sticky) return 1363;
if (Facing == eBlockFace::BLOCK_FACE_XP && Short && Type == Type::Normal) return 1364;
if (Facing == eBlockFace::BLOCK_FACE_XP && Short && Type == Type::Sticky) return 1365;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Short && Type == Type::Normal) return 1366;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Short && Type == Type::Sticky) return 1367;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Short && Type == Type::Normal) return 1368;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Short && Type == Type::Sticky) return 1369;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Short && Type == Type::Normal) return 1370;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Short && Type == Type::Sticky) return 1371;
if (Facing == eBlockFace::BLOCK_FACE_XM && Short && Type == Type::Normal) return 1372;
if (Facing == eBlockFace::BLOCK_FACE_XM && Short && Type == Type::Sticky) return 1373;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Short && Type == Type::Normal) return 1374;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Short && Type == Type::Sticky) return 1375;
if (Facing == eBlockFace::BLOCK_FACE_YP && Short && Type == Type::Normal) return 1376;
if (Facing == eBlockFace::BLOCK_FACE_YP && Short && Type == Type::Sticky) return 1377;
if (Facing == eBlockFace::BLOCK_FACE_YP && !Short && Type == Type::Normal) return 1378;
if (Facing == eBlockFace::BLOCK_FACE_YP && !Short && Type == Type::Sticky) return 1379;
if (Facing == eBlockFace::BLOCK_FACE_YM && Short && Type == Type::Normal) return 1380;
if (Facing == eBlockFace::BLOCK_FACE_YM && Short && Type == Type::Sticky) return 1381;
if (Facing == eBlockFace::BLOCK_FACE_YM && !Short && Type == Type::Normal) return 1382;
return 1383;
}
short PistonHead();
eBlockFace Facing(short ID);
bool Short(short ID);
enum Type Type(short ID);
}
namespace PlayerHead
{
constexpr short PlayerHead(unsigned char Rotation)
{
if (Rotation == 0) return 6550;
if (Rotation == 1) return 6551;
if (Rotation == 2) return 6552;
if (Rotation == 3) return 6553;
if (Rotation == 4) return 6554;
if (Rotation == 5) return 6555;
if (Rotation == 6) return 6556;
if (Rotation == 7) return 6557;
if (Rotation == 8) return 6558;
if (Rotation == 9) return 6559;
if (Rotation == 10) return 6560;
if (Rotation == 11) return 6561;
if (Rotation == 12) return 6562;
if (Rotation == 13) return 6563;
if (Rotation == 14) return 6564;
return 6565;
}
short PlayerHead();
unsigned char Rotation(short ID);
}
namespace PlayerWallHead
{
constexpr short PlayerWallHead(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6566;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6567;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 6568;
return 6569;
}
short PlayerWallHead();
eBlockFace Facing(short ID);
}
namespace Podzol
{
constexpr short Podzol(bool Snowy)
{
if (Snowy) return 12;
return 13;
}
short Podzol();
bool Snowy(short ID);
}
namespace PolishedAndesite
{
constexpr short PolishedAndesite()
{
return 7;
}
}
namespace PolishedAndesiteSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short PolishedAndesiteSlab(enum Type Type)
{
if (Type == Type::Top) return 10856;
if (Type == Type::Bottom) return 10858;
return 10860;
}
short PolishedAndesiteSlab();
enum Type Type(short ID);
}
namespace PolishedAndesiteStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short PolishedAndesiteStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 10630;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 10632;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 10634;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 10636;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 10638;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 10640;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10642;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10644;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10646;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10648;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 10650;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 10652;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 10654;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 10656;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 10658;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 10660;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10662;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10664;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10666;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 10668;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 10670;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 10672;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 10674;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 10676;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 10678;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 10680;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10682;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10684;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10686;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10688;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 10690;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 10692;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 10694;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 10696;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 10698;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 10700;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10702;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10704;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10706;
return 10708;
}
short PolishedAndesiteStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace PolishedBasalt
{
enum class Axis
{
X,
Y,
Z
};
constexpr short PolishedBasalt(enum Axis Axis)
{
if (Axis == Axis::X) return 4005;
if (Axis == Axis::Y) return 4006;
return 4007;
}
short PolishedBasalt();
enum Axis Axis(short ID);
}
namespace PolishedBlackstone
{
constexpr short PolishedBlackstone()
{
return 16250;
}
}
namespace PolishedBlackstoneBrickSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short PolishedBlackstoneBrickSlab(enum Type Type)
{
if (Type == Type::Top) return 16255;
if (Type == Type::Bottom) return 16257;
return 16259;
}
short PolishedBlackstoneBrickSlab();
enum Type Type(short ID);
}
namespace PolishedBlackstoneBrickStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short PolishedBlackstoneBrickStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 16261;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 16263;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 16265;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 16267;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 16269;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 16271;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 16273;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 16275;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 16277;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 16279;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 16281;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 16283;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 16285;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 16287;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 16289;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 16291;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 16293;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 16295;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 16297;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 16299;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 16301;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 16303;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 16305;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 16307;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 16309;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 16311;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 16313;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 16315;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 16317;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 16319;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 16321;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 16323;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 16325;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 16327;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 16329;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 16331;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 16333;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 16335;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 16337;
return 16339;
}
short PolishedBlackstoneBrickStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace PolishedBlackstoneBrickWall
{
enum class East
{
None,
Low,
Tall
};
enum class North
{
None,
Low,
Tall
};
enum class South
{
None,
Low,
Tall
};
enum class West
{
None,
Low,
Tall
};
constexpr short PolishedBlackstoneBrickWall(enum East East, enum North North, enum South South, bool Up, enum West West)
{
if (East == East::None && North == North::None && South == South::None && Up && West == West::None) return 16343;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Low) return 16344;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Tall) return 16345;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::None) return 16349;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Low) return 16350;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Tall) return 16351;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::None) return 16355;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Low) return 16356;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Tall) return 16357;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::None) return 16361;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Low) return 16362;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Tall) return 16363;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::None) return 16367;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Low) return 16368;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Tall) return 16369;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::None) return 16373;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Low) return 16374;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Tall) return 16375;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::None) return 16379;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Low) return 16380;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Tall) return 16381;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::None) return 16385;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Low) return 16386;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Tall) return 16387;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::None) return 16391;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Low) return 16392;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Tall) return 16393;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::None) return 16397;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Low) return 16398;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Tall) return 16399;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::None) return 16403;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Low) return 16404;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Tall) return 16405;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::None) return 16409;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Low) return 16410;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 16411;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::None) return 16415;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Low) return 16416;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Tall) return 16417;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::None) return 16421;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Low) return 16422;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Tall) return 16423;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::None) return 16427;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Low) return 16428;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Tall) return 16429;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::None) return 16433;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Low) return 16434;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 16435;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::None) return 16439;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Low) return 16440;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 16441;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::None) return 16445;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 16446;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 16447;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::None) return 16451;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Low) return 16452;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Tall) return 16453;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::None) return 16457;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Low) return 16458;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Tall) return 16459;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::None) return 16463;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Low) return 16464;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Tall) return 16465;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::None) return 16469;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Low) return 16470;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Tall) return 16471;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::None) return 16475;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Low) return 16476;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Tall) return 16477;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::None) return 16481;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Low) return 16482;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Tall) return 16483;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::None) return 16487;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Low) return 16488;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Tall) return 16489;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::None) return 16493;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Low) return 16494;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Tall) return 16495;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::None) return 16499;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Low) return 16500;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Tall) return 16501;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::None) return 16505;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Low) return 16506;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Tall) return 16507;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::None) return 16511;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Low) return 16512;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Tall) return 16513;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::None) return 16517;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Low) return 16518;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 16519;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::None) return 16523;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Low) return 16524;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Tall) return 16525;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::None) return 16529;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Low) return 16530;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Tall) return 16531;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::None) return 16535;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Low) return 16536;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Tall) return 16537;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::None) return 16541;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Low) return 16542;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 16543;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::None) return 16547;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Low) return 16548;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 16549;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::None) return 16553;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 16554;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 16555;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::None) return 16559;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Low) return 16560;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Tall) return 16561;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::None) return 16565;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Low) return 16566;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Tall) return 16567;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::None) return 16571;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Low) return 16572;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Tall) return 16573;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::None) return 16577;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Low) return 16578;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Tall) return 16579;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::None) return 16583;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Low) return 16584;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Tall) return 16585;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::None) return 16589;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Low) return 16590;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Tall) return 16591;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::None) return 16595;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Low) return 16596;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Tall) return 16597;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::None) return 16601;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Low) return 16602;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Tall) return 16603;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::None) return 16607;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Low) return 16608;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Tall) return 16609;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::None) return 16613;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Low) return 16614;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Tall) return 16615;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::None) return 16619;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Low) return 16620;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Tall) return 16621;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::None) return 16625;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Low) return 16626;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 16627;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::None) return 16631;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Low) return 16632;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Tall) return 16633;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::None) return 16637;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Low) return 16638;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Tall) return 16639;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::None) return 16643;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Low) return 16644;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Tall) return 16645;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::None) return 16649;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Low) return 16650;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 16651;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::None) return 16655;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Low) return 16656;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 16657;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::None) return 16661;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 16662;
return 16663;
}
short PolishedBlackstoneBrickWall();
enum East East(short ID);
enum North North(short ID);
enum South South(short ID);
bool Up(short ID);
enum West West(short ID);
}
namespace PolishedBlackstoneBricks
{
constexpr short PolishedBlackstoneBricks()
{
return 16251;
}
}
namespace PolishedBlackstoneButton
{
enum class Face
{
Floor,
Wall,
Ceiling
};
constexpr short PolishedBlackstoneButton(enum Face Face, eBlockFace Facing, bool Powered)
{
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 16753;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 16754;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 16755;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 16756;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 16757;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 16758;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 16759;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 16760;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 16761;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 16762;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 16763;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 16764;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 16765;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 16766;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 16767;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 16768;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 16769;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 16770;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 16771;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 16772;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 16773;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 16774;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 16775;
return 16776;
}
short PolishedBlackstoneButton();
enum Face Face(short ID);
eBlockFace Facing(short ID);
bool Powered(short ID);
}
namespace PolishedBlackstonePressurePlate
{
constexpr short PolishedBlackstonePressurePlate(bool Powered)
{
if (Powered) return 16751;
return 16752;
}
short PolishedBlackstonePressurePlate();
bool Powered(short ID);
}
namespace PolishedBlackstoneSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short PolishedBlackstoneSlab(enum Type Type)
{
if (Type == Type::Top) return 16746;
if (Type == Type::Bottom) return 16748;
return 16750;
}
short PolishedBlackstoneSlab();
enum Type Type(short ID);
}
namespace PolishedBlackstoneStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short PolishedBlackstoneStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 16666;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 16668;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 16670;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 16672;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 16674;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 16676;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 16678;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 16680;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 16682;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 16684;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 16686;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 16688;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 16690;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 16692;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 16694;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 16696;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 16698;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 16700;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 16702;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 16704;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 16706;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 16708;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 16710;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 16712;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 16714;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 16716;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 16718;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 16720;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 16722;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 16724;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 16726;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 16728;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 16730;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 16732;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 16734;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 16736;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 16738;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 16740;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 16742;
return 16744;
}
short PolishedBlackstoneStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace PolishedBlackstoneWall
{
enum class East
{
None,
Low,
Tall
};
enum class North
{
None,
Low,
Tall
};
enum class South
{
None,
Low,
Tall
};
enum class West
{
None,
Low,
Tall
};
constexpr short PolishedBlackstoneWall(enum East East, enum North North, enum South South, bool Up, enum West West)
{
if (East == East::None && North == North::None && South == South::None && Up && West == West::None) return 16780;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Low) return 16781;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Tall) return 16782;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::None) return 16786;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Low) return 16787;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Tall) return 16788;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::None) return 16792;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Low) return 16793;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Tall) return 16794;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::None) return 16798;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Low) return 16799;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Tall) return 16800;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::None) return 16804;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Low) return 16805;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Tall) return 16806;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::None) return 16810;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Low) return 16811;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Tall) return 16812;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::None) return 16816;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Low) return 16817;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Tall) return 16818;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::None) return 16822;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Low) return 16823;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Tall) return 16824;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::None) return 16828;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Low) return 16829;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Tall) return 16830;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::None) return 16834;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Low) return 16835;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Tall) return 16836;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::None) return 16840;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Low) return 16841;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Tall) return 16842;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::None) return 16846;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Low) return 16847;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 16848;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::None) return 16852;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Low) return 16853;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Tall) return 16854;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::None) return 16858;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Low) return 16859;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Tall) return 16860;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::None) return 16864;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Low) return 16865;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Tall) return 16866;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::None) return 16870;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Low) return 16871;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 16872;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::None) return 16876;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Low) return 16877;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 16878;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::None) return 16882;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 16883;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 16884;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::None) return 16888;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Low) return 16889;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Tall) return 16890;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::None) return 16894;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Low) return 16895;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Tall) return 16896;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::None) return 16900;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Low) return 16901;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Tall) return 16902;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::None) return 16906;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Low) return 16907;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Tall) return 16908;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::None) return 16912;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Low) return 16913;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Tall) return 16914;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::None) return 16918;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Low) return 16919;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Tall) return 16920;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::None) return 16924;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Low) return 16925;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Tall) return 16926;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::None) return 16930;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Low) return 16931;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Tall) return 16932;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::None) return 16936;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Low) return 16937;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Tall) return 16938;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::None) return 16942;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Low) return 16943;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Tall) return 16944;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::None) return 16948;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Low) return 16949;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Tall) return 16950;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::None) return 16954;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Low) return 16955;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 16956;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::None) return 16960;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Low) return 16961;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Tall) return 16962;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::None) return 16966;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Low) return 16967;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Tall) return 16968;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::None) return 16972;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Low) return 16973;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Tall) return 16974;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::None) return 16978;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Low) return 16979;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 16980;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::None) return 16984;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Low) return 16985;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 16986;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::None) return 16990;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 16991;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 16992;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::None) return 16996;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Low) return 16997;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Tall) return 16998;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::None) return 17002;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Low) return 17003;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Tall) return 17004;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::None) return 17008;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Low) return 17009;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Tall) return 17010;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::None) return 17014;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Low) return 17015;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Tall) return 17016;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::None) return 17020;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Low) return 17021;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Tall) return 17022;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::None) return 17026;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Low) return 17027;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Tall) return 17028;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::None) return 17032;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Low) return 17033;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Tall) return 17034;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::None) return 17038;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Low) return 17039;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Tall) return 17040;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::None) return 17044;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Low) return 17045;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Tall) return 17046;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::None) return 17050;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Low) return 17051;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Tall) return 17052;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::None) return 17056;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Low) return 17057;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Tall) return 17058;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::None) return 17062;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Low) return 17063;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 17064;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::None) return 17068;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Low) return 17069;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Tall) return 17070;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::None) return 17074;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Low) return 17075;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Tall) return 17076;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::None) return 17080;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Low) return 17081;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Tall) return 17082;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::None) return 17086;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Low) return 17087;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 17088;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::None) return 17092;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Low) return 17093;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 17094;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::None) return 17098;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 17099;
return 17100;
}
short PolishedBlackstoneWall();
enum East East(short ID);
enum North North(short ID);
enum South South(short ID);
bool Up(short ID);
enum West West(short ID);
}
namespace PolishedDiorite
{
constexpr short PolishedDiorite()
{
return 5;
}
}
namespace PolishedDioriteSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short PolishedDioriteSlab(enum Type Type)
{
if (Type == Type::Top) return 10808;
if (Type == Type::Bottom) return 10810;
return 10812;
}
short PolishedDioriteSlab();
enum Type Type(short ID);
}
namespace PolishedDioriteStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short PolishedDioriteStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 9910;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 9912;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 9914;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 9916;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 9918;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 9920;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9922;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 9924;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9926;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 9928;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 9930;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 9932;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 9934;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 9936;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 9938;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 9940;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9942;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 9944;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9946;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 9948;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 9950;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 9952;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 9954;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 9956;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 9958;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 9960;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9962;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 9964;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9966;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 9968;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 9970;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 9972;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 9974;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 9976;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 9978;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 9980;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9982;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 9984;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9986;
return 9988;
}
short PolishedDioriteStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace PolishedGranite
{
constexpr short PolishedGranite()
{
return 3;
}
}
namespace PolishedGraniteSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short PolishedGraniteSlab(enum Type Type)
{
if (Type == Type::Top) return 10790;
if (Type == Type::Bottom) return 10792;
return 10794;
}
short PolishedGraniteSlab();
enum Type Type(short ID);
}
namespace PolishedGraniteStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short PolishedGraniteStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 9670;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 9672;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 9674;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 9676;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 9678;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 9680;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9682;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 9684;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9686;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 9688;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 9690;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 9692;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 9694;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 9696;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 9698;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 9700;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9702;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 9704;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9706;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 9708;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 9710;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 9712;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 9714;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 9716;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 9718;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 9720;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9722;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 9724;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9726;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 9728;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 9730;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 9732;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 9734;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 9736;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 9738;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 9740;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9742;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 9744;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9746;
return 9748;
}
short PolishedGraniteStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace Poppy
{
constexpr short Poppy()
{
return 1413;
}
}
namespace Potatoes
{
constexpr short Potatoes(unsigned char Age)
{
if (Age == 0) return 6338;
if (Age == 1) return 6339;
if (Age == 2) return 6340;
if (Age == 3) return 6341;
if (Age == 4) return 6342;
if (Age == 5) return 6343;
if (Age == 6) return 6344;
return 6345;
}
short Potatoes();
unsigned char Age(short ID);
}
namespace PottedAcaciaSapling
{
constexpr short PottedAcaciaSapling()
{
return 6310;
}
}
namespace PottedAllium
{
constexpr short PottedAllium()
{
return 6316;
}
}
namespace PottedAzureBluet
{
constexpr short PottedAzureBluet()
{
return 6317;
}
}
namespace PottedBamboo
{
constexpr short PottedBamboo()
{
return 9664;
}
}
namespace PottedBirchSapling
{
constexpr short PottedBirchSapling()
{
return 6308;
}
}
namespace PottedBlueOrchid
{
constexpr short PottedBlueOrchid()
{
return 6315;
}
}
namespace PottedBrownMushroom
{
constexpr short PottedBrownMushroom()
{
return 6327;
}
}
namespace PottedCactus
{
constexpr short PottedCactus()
{
return 6329;
}
}
namespace PottedCornflower
{
constexpr short PottedCornflower()
{
return 6323;
}
}
namespace PottedCrimsonFungus
{
constexpr short PottedCrimsonFungus()
{
return 15834;
}
}
namespace PottedCrimsonRoots
{
constexpr short PottedCrimsonRoots()
{
return 15836;
}
}
namespace PottedDandelion
{
constexpr short PottedDandelion()
{
return 6313;
}
}
namespace PottedDarkOakSapling
{
constexpr short PottedDarkOakSapling()
{
return 6311;
}
}
namespace PottedDeadBush
{
constexpr short PottedDeadBush()
{
return 6328;
}
}
namespace PottedFern
{
constexpr short PottedFern()
{
return 6312;
}
}
namespace PottedJungleSapling
{
constexpr short PottedJungleSapling()
{
return 6309;
}
}
namespace PottedLilyOfTheValley
{
constexpr short PottedLilyOfTheValley()
{
return 6324;
}
}
namespace PottedOakSapling
{
constexpr short PottedOakSapling()
{
return 6306;
}
}
namespace PottedOrangeTulip
{
constexpr short PottedOrangeTulip()
{
return 6319;
}
}
namespace PottedOxeyeDaisy
{
constexpr short PottedOxeyeDaisy()
{
return 6322;
}
}
namespace PottedPinkTulip
{
constexpr short PottedPinkTulip()
{
return 6321;
}
}
namespace PottedPoppy
{
constexpr short PottedPoppy()
{
return 6314;
}
}
namespace PottedRedMushroom
{
constexpr short PottedRedMushroom()
{
return 6326;
}
}
namespace PottedRedTulip
{
constexpr short PottedRedTulip()
{
return 6318;
}
}
namespace PottedSpruceSapling
{
constexpr short PottedSpruceSapling()
{
return 6307;
}
}
namespace PottedWarpedFungus
{
constexpr short PottedWarpedFungus()
{
return 15835;
}
}
namespace PottedWarpedRoots
{
constexpr short PottedWarpedRoots()
{
return 15837;
}
}
namespace PottedWhiteTulip
{
constexpr short PottedWhiteTulip()
{
return 6320;
}
}
namespace PottedWitherRose
{
constexpr short PottedWitherRose()
{
return 6325;
}
}
namespace PoweredRail
{
enum class Shape
{
NorthSouth,
EastWest,
AscendingEast,
AscendingWest,
AscendingNorth,
AscendingSouth
};
constexpr short PoweredRail(bool Powered, enum Shape Shape)
{
if (Powered && Shape == Shape::NorthSouth) return 1305;
if (Powered && Shape == Shape::EastWest) return 1306;
if (Powered && Shape == Shape::AscendingEast) return 1307;
if (Powered && Shape == Shape::AscendingWest) return 1308;
if (Powered && Shape == Shape::AscendingNorth) return 1309;
if (Powered && Shape == Shape::AscendingSouth) return 1310;
if (!Powered && Shape == Shape::NorthSouth) return 1311;
if (!Powered && Shape == Shape::EastWest) return 1312;
if (!Powered && Shape == Shape::AscendingEast) return 1313;
if (!Powered && Shape == Shape::AscendingWest) return 1314;
if (!Powered && Shape == Shape::AscendingNorth) return 1315;
return 1316;
}
short PoweredRail();
bool Powered(short ID);
enum Shape Shape(short ID);
}
namespace Prismarine
{
constexpr short Prismarine()
{
return 7601;
}
}
namespace PrismarineBrickSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short PrismarineBrickSlab(enum Type Type)
{
if (Type == Type::Top) return 7851;
if (Type == Type::Bottom) return 7853;
return 7855;
}
short PrismarineBrickSlab();
enum Type Type(short ID);
}
namespace PrismarineBrickStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short PrismarineBrickStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 7685;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 7687;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 7689;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 7691;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 7693;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 7695;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7697;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 7699;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7701;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 7703;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 7705;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 7707;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 7709;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 7711;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 7713;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 7715;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7717;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 7719;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7721;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 7723;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 7725;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 7727;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 7729;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 7731;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 7733;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 7735;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7737;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 7739;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7741;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 7743;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 7745;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 7747;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 7749;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 7751;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 7753;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 7755;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7757;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 7759;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7761;
return 7763;
}
short PrismarineBrickStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace PrismarineBricks
{
constexpr short PrismarineBricks()
{
return 7602;
}
}
namespace PrismarineSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short PrismarineSlab(enum Type Type)
{
if (Type == Type::Top) return 7845;
if (Type == Type::Bottom) return 7847;
return 7849;
}
short PrismarineSlab();
enum Type Type(short ID);
}
namespace PrismarineStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short PrismarineStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 7605;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 7607;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 7609;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 7611;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 7613;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 7615;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7617;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 7619;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7621;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 7623;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 7625;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 7627;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 7629;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 7631;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 7633;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 7635;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7637;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 7639;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7641;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 7643;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 7645;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 7647;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 7649;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 7651;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 7653;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 7655;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7657;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 7659;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7661;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 7663;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 7665;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 7667;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 7669;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 7671;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 7673;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 7675;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 7677;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 7679;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 7681;
return 7683;
}
short PrismarineStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace PrismarineWall
{
enum class East
{
None,
Low,
Tall
};
enum class North
{
None,
Low,
Tall
};
enum class South
{
None,
Low,
Tall
};
enum class West
{
None,
Low,
Tall
};
constexpr short PrismarineWall(enum East East, enum North North, enum South South, bool Up, enum West West)
{
if (East == East::None && North == North::None && South == South::None && Up && West == West::None) return 11194;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Low) return 11195;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Tall) return 11196;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::None) return 11200;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Low) return 11201;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Tall) return 11202;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::None) return 11206;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Low) return 11207;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Tall) return 11208;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::None) return 11212;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Low) return 11213;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Tall) return 11214;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::None) return 11218;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Low) return 11219;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Tall) return 11220;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::None) return 11224;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Low) return 11225;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Tall) return 11226;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::None) return 11230;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Low) return 11231;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Tall) return 11232;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::None) return 11236;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Low) return 11237;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Tall) return 11238;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::None) return 11242;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Low) return 11243;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Tall) return 11244;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::None) return 11248;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Low) return 11249;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Tall) return 11250;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::None) return 11254;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Low) return 11255;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Tall) return 11256;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::None) return 11260;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Low) return 11261;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 11262;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::None) return 11266;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Low) return 11267;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Tall) return 11268;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::None) return 11272;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Low) return 11273;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Tall) return 11274;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::None) return 11278;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Low) return 11279;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Tall) return 11280;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::None) return 11284;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Low) return 11285;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 11286;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::None) return 11290;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Low) return 11291;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 11292;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::None) return 11296;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 11297;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 11298;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::None) return 11302;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Low) return 11303;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Tall) return 11304;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::None) return 11308;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Low) return 11309;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Tall) return 11310;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::None) return 11314;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Low) return 11315;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Tall) return 11316;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::None) return 11320;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Low) return 11321;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Tall) return 11322;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::None) return 11326;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Low) return 11327;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Tall) return 11328;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::None) return 11332;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Low) return 11333;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Tall) return 11334;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::None) return 11338;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Low) return 11339;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Tall) return 11340;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::None) return 11344;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Low) return 11345;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Tall) return 11346;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::None) return 11350;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Low) return 11351;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Tall) return 11352;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::None) return 11356;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Low) return 11357;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Tall) return 11358;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::None) return 11362;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Low) return 11363;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Tall) return 11364;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::None) return 11368;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Low) return 11369;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 11370;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::None) return 11374;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Low) return 11375;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Tall) return 11376;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::None) return 11380;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Low) return 11381;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Tall) return 11382;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::None) return 11386;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Low) return 11387;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Tall) return 11388;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::None) return 11392;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Low) return 11393;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 11394;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::None) return 11398;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Low) return 11399;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 11400;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::None) return 11404;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 11405;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 11406;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::None) return 11410;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Low) return 11411;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Tall) return 11412;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::None) return 11416;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Low) return 11417;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Tall) return 11418;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::None) return 11422;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Low) return 11423;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Tall) return 11424;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::None) return 11428;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Low) return 11429;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Tall) return 11430;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::None) return 11434;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Low) return 11435;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Tall) return 11436;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::None) return 11440;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Low) return 11441;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Tall) return 11442;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::None) return 11446;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Low) return 11447;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Tall) return 11448;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::None) return 11452;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Low) return 11453;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Tall) return 11454;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::None) return 11458;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Low) return 11459;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Tall) return 11460;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::None) return 11464;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Low) return 11465;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Tall) return 11466;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::None) return 11470;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Low) return 11471;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Tall) return 11472;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::None) return 11476;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Low) return 11477;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 11478;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::None) return 11482;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Low) return 11483;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Tall) return 11484;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::None) return 11488;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Low) return 11489;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Tall) return 11490;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::None) return 11494;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Low) return 11495;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Tall) return 11496;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::None) return 11500;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Low) return 11501;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 11502;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::None) return 11506;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Low) return 11507;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 11508;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::None) return 11512;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 11513;
return 11514;
}
short PrismarineWall();
enum East East(short ID);
enum North North(short ID);
enum South South(short ID);
bool Up(short ID);
enum West West(short ID);
}
namespace Pumpkin
{
constexpr short Pumpkin()
{
return 3998;
}
}
namespace PumpkinStem
{
constexpr short PumpkinStem(unsigned char Age)
{
if (Age == 0) return 4772;
if (Age == 1) return 4773;
if (Age == 2) return 4774;
if (Age == 3) return 4775;
if (Age == 4) return 4776;
if (Age == 5) return 4777;
if (Age == 6) return 4778;
return 4779;
}
short PumpkinStem();
unsigned char Age(short ID);
}
namespace PurpleBanner
{
constexpr short PurpleBanner(unsigned char Rotation)
{
if (Rotation == 0) return 8057;
if (Rotation == 1) return 8058;
if (Rotation == 2) return 8059;
if (Rotation == 3) return 8060;
if (Rotation == 4) return 8061;
if (Rotation == 5) return 8062;
if (Rotation == 6) return 8063;
if (Rotation == 7) return 8064;
if (Rotation == 8) return 8065;
if (Rotation == 9) return 8066;
if (Rotation == 10) return 8067;
if (Rotation == 11) return 8068;
if (Rotation == 12) return 8069;
if (Rotation == 13) return 8070;
if (Rotation == 14) return 8071;
return 8072;
}
short PurpleBanner();
unsigned char Rotation(short ID);
}
namespace PurpleBed
{
enum class Part
{
Head,
Foot
};
constexpr short PurpleBed(eBlockFace Facing, bool Occupied, enum Part Part)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Head) return 1209;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Foot) return 1210;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Head) return 1211;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Foot) return 1212;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Head) return 1213;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Foot) return 1214;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Head) return 1215;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Foot) return 1216;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Head) return 1217;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Foot) return 1218;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Head) return 1219;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Foot) return 1220;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Head) return 1221;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Foot) return 1222;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Occupied && Part == Part::Head) return 1223;
return 1224;
}
short PurpleBed();
eBlockFace Facing(short ID);
bool Occupied(short ID);
enum Part Part(short ID);
}
namespace PurpleCarpet
{
constexpr short PurpleCarpet()
{
return 7876;
}
}
namespace PurpleConcrete
{
constexpr short PurpleConcrete()
{
return 9448;
}
}
namespace PurpleConcretePowder
{
constexpr short PurpleConcretePowder()
{
return 9464;
}
}
namespace PurpleGlazedTerracotta
{
constexpr short PurpleGlazedTerracotta(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9414;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9415;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9416;
return 9417;
}
short PurpleGlazedTerracotta();
eBlockFace Facing(short ID);
}
namespace PurpleShulkerBox
{
constexpr short PurpleShulkerBox(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9338;
if (Facing == eBlockFace::BLOCK_FACE_XP) return 9339;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9340;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9341;
if (Facing == eBlockFace::BLOCK_FACE_YP) return 9342;
return 9343;
}
short PurpleShulkerBox();
eBlockFace Facing(short ID);
}
namespace PurpleStainedGlass
{
constexpr short PurpleStainedGlass()
{
return 4105;
}
}
namespace PurpleStainedGlassPane
{
constexpr short PurpleStainedGlassPane(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 7185;
if (East && North && South && !West) return 7186;
if (East && North && !South && West) return 7189;
if (East && North && !South && !West) return 7190;
if (East && !North && South && West) return 7193;
if (East && !North && South && !West) return 7194;
if (East && !North && !South && West) return 7197;
if (East && !North && !South && !West) return 7198;
if (!East && North && South && West) return 7201;
if (!East && North && South && !West) return 7202;
if (!East && North && !South && West) return 7205;
if (!East && North && !South && !West) return 7206;
if (!East && !North && South && West) return 7209;
if (!East && !North && South && !West) return 7210;
if (!East && !North && !South && West) return 7213;
return 7214;
}
short PurpleStainedGlassPane();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace PurpleTerracotta
{
constexpr short PurpleTerracotta()
{
return 6857;
}
}
namespace PurpleWallBanner
{
constexpr short PurpleWallBanner(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8193;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8194;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 8195;
return 8196;
}
short PurpleWallBanner();
eBlockFace Facing(short ID);
}
namespace PurpleWool
{
constexpr short PurpleWool()
{
return 1394;
}
}
namespace PurpurBlock
{
constexpr short PurpurBlock()
{
return 9134;
}
}
namespace PurpurPillar
{
enum class Axis
{
X,
Y,
Z
};
constexpr short PurpurPillar(enum Axis Axis)
{
if (Axis == Axis::X) return 9135;
if (Axis == Axis::Y) return 9136;
return 9137;
}
short PurpurPillar();
enum Axis Axis(short ID);
}
namespace PurpurSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short PurpurSlab(enum Type Type)
{
if (Type == Type::Top) return 8409;
if (Type == Type::Bottom) return 8411;
return 8413;
}
short PurpurSlab();
enum Type Type(short ID);
}
namespace PurpurStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short PurpurStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 9139;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 9141;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 9143;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 9145;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 9147;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 9149;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9151;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 9153;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9155;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 9157;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 9159;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 9161;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 9163;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 9165;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 9167;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 9169;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9171;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 9173;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9175;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 9177;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 9179;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 9181;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 9183;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 9185;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 9187;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 9189;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9191;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 9193;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9195;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 9197;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 9199;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 9201;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 9203;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 9205;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 9207;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 9209;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9211;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 9213;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9215;
return 9217;
}
short PurpurStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace QuartzBlock
{
constexpr short QuartzBlock()
{
return 6738;
}
}
namespace QuartzBricks
{
constexpr short QuartzBricks()
{
return 17103;
}
}
namespace QuartzPillar
{
enum class Axis
{
X,
Y,
Z
};
constexpr short QuartzPillar(enum Axis Axis)
{
if (Axis == Axis::X) return 6740;
if (Axis == Axis::Y) return 6741;
return 6742;
}
short QuartzPillar();
enum Axis Axis(short ID);
}
namespace QuartzSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short QuartzSlab(enum Type Type)
{
if (Type == Type::Top) return 8391;
if (Type == Type::Bottom) return 8393;
return 8395;
}
short QuartzSlab();
enum Type Type(short ID);
}
namespace QuartzStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short QuartzStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 6744;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 6746;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 6748;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 6750;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 6752;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 6754;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 6756;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 6758;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 6760;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 6762;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 6764;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 6766;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 6768;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 6770;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 6772;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 6774;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 6776;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 6778;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 6780;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 6782;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 6784;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 6786;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 6788;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 6790;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 6792;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 6794;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 6796;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 6798;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 6800;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 6802;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 6804;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 6806;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 6808;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 6810;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 6812;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 6814;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 6816;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 6818;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 6820;
return 6822;
}
short QuartzStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace Rail
{
enum class Shape
{
NorthSouth,
EastWest,
AscendingEast,
AscendingWest,
AscendingNorth,
AscendingSouth,
SouthEast,
SouthWest,
NorthWest,
NorthEast
};
constexpr short Rail(enum Shape Shape)
{
if (Shape == Shape::NorthSouth) return 3645;
if (Shape == Shape::EastWest) return 3646;
if (Shape == Shape::AscendingEast) return 3647;
if (Shape == Shape::AscendingWest) return 3648;
if (Shape == Shape::AscendingNorth) return 3649;
if (Shape == Shape::AscendingSouth) return 3650;
if (Shape == Shape::SouthEast) return 3651;
if (Shape == Shape::SouthWest) return 3652;
if (Shape == Shape::NorthWest) return 3653;
return 3654;
}
short Rail();
enum Shape Shape(short ID);
}
namespace RedBanner
{
constexpr short RedBanner(unsigned char Rotation)
{
if (Rotation == 0) return 8121;
if (Rotation == 1) return 8122;
if (Rotation == 2) return 8123;
if (Rotation == 3) return 8124;
if (Rotation == 4) return 8125;
if (Rotation == 5) return 8126;
if (Rotation == 6) return 8127;
if (Rotation == 7) return 8128;
if (Rotation == 8) return 8129;
if (Rotation == 9) return 8130;
if (Rotation == 10) return 8131;
if (Rotation == 11) return 8132;
if (Rotation == 12) return 8133;
if (Rotation == 13) return 8134;
if (Rotation == 14) return 8135;
return 8136;
}
short RedBanner();
unsigned char Rotation(short ID);
}
namespace RedBed
{
enum class Part
{
Head,
Foot
};
constexpr short RedBed(eBlockFace Facing, bool Occupied, enum Part Part)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Head) return 1273;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Foot) return 1274;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Head) return 1275;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Foot) return 1276;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Head) return 1277;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Foot) return 1278;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Head) return 1279;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Foot) return 1280;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Head) return 1281;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Foot) return 1282;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Head) return 1283;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Foot) return 1284;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Head) return 1285;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Foot) return 1286;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Occupied && Part == Part::Head) return 1287;
return 1288;
}
short RedBed();
eBlockFace Facing(short ID);
bool Occupied(short ID);
enum Part Part(short ID);
}
namespace RedCarpet
{
constexpr short RedCarpet()
{
return 7880;
}
}
namespace RedConcrete
{
constexpr short RedConcrete()
{
return 9452;
}
}
namespace RedConcretePowder
{
constexpr short RedConcretePowder()
{
return 9468;
}
}
namespace RedGlazedTerracotta
{
constexpr short RedGlazedTerracotta(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9430;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9431;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9432;
return 9433;
}
short RedGlazedTerracotta();
eBlockFace Facing(short ID);
}
namespace RedMushroom
{
constexpr short RedMushroom()
{
return 1426;
}
}
namespace RedMushroomBlock
{
constexpr short RedMushroomBlock(bool Down, bool East, bool North, bool South, bool Up, bool West)
{
if (Down && East && North && South && Up && West) return 4569;
if (Down && East && North && South && Up && !West) return 4570;
if (Down && East && North && South && !Up && West) return 4571;
if (Down && East && North && South && !Up && !West) return 4572;
if (Down && East && North && !South && Up && West) return 4573;
if (Down && East && North && !South && Up && !West) return 4574;
if (Down && East && North && !South && !Up && West) return 4575;
if (Down && East && North && !South && !Up && !West) return 4576;
if (Down && East && !North && South && Up && West) return 4577;
if (Down && East && !North && South && Up && !West) return 4578;
if (Down && East && !North && South && !Up && West) return 4579;
if (Down && East && !North && South && !Up && !West) return 4580;
if (Down && East && !North && !South && Up && West) return 4581;
if (Down && East && !North && !South && Up && !West) return 4582;
if (Down && East && !North && !South && !Up && West) return 4583;
if (Down && East && !North && !South && !Up && !West) return 4584;
if (Down && !East && North && South && Up && West) return 4585;
if (Down && !East && North && South && Up && !West) return 4586;
if (Down && !East && North && South && !Up && West) return 4587;
if (Down && !East && North && South && !Up && !West) return 4588;
if (Down && !East && North && !South && Up && West) return 4589;
if (Down && !East && North && !South && Up && !West) return 4590;
if (Down && !East && North && !South && !Up && West) return 4591;
if (Down && !East && North && !South && !Up && !West) return 4592;
if (Down && !East && !North && South && Up && West) return 4593;
if (Down && !East && !North && South && Up && !West) return 4594;
if (Down && !East && !North && South && !Up && West) return 4595;
if (Down && !East && !North && South && !Up && !West) return 4596;
if (Down && !East && !North && !South && Up && West) return 4597;
if (Down && !East && !North && !South && Up && !West) return 4598;
if (Down && !East && !North && !South && !Up && West) return 4599;
if (Down && !East && !North && !South && !Up && !West) return 4600;
if (!Down && East && North && South && Up && West) return 4601;
if (!Down && East && North && South && Up && !West) return 4602;
if (!Down && East && North && South && !Up && West) return 4603;
if (!Down && East && North && South && !Up && !West) return 4604;
if (!Down && East && North && !South && Up && West) return 4605;
if (!Down && East && North && !South && Up && !West) return 4606;
if (!Down && East && North && !South && !Up && West) return 4607;
if (!Down && East && North && !South && !Up && !West) return 4608;
if (!Down && East && !North && South && Up && West) return 4609;
if (!Down && East && !North && South && Up && !West) return 4610;
if (!Down && East && !North && South && !Up && West) return 4611;
if (!Down && East && !North && South && !Up && !West) return 4612;
if (!Down && East && !North && !South && Up && West) return 4613;
if (!Down && East && !North && !South && Up && !West) return 4614;
if (!Down && East && !North && !South && !Up && West) return 4615;
if (!Down && East && !North && !South && !Up && !West) return 4616;
if (!Down && !East && North && South && Up && West) return 4617;
if (!Down && !East && North && South && Up && !West) return 4618;
if (!Down && !East && North && South && !Up && West) return 4619;
if (!Down && !East && North && South && !Up && !West) return 4620;
if (!Down && !East && North && !South && Up && West) return 4621;
if (!Down && !East && North && !South && Up && !West) return 4622;
if (!Down && !East && North && !South && !Up && West) return 4623;
if (!Down && !East && North && !South && !Up && !West) return 4624;
if (!Down && !East && !North && South && Up && West) return 4625;
if (!Down && !East && !North && South && Up && !West) return 4626;
if (!Down && !East && !North && South && !Up && West) return 4627;
if (!Down && !East && !North && South && !Up && !West) return 4628;
if (!Down && !East && !North && !South && Up && West) return 4629;
if (!Down && !East && !North && !South && Up && !West) return 4630;
if (!Down && !East && !North && !South && !Up && West) return 4631;
return 4632;
}
short RedMushroomBlock();
bool Down(short ID);
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool Up(short ID);
bool West(short ID);
}
namespace RedNetherBrickSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short RedNetherBrickSlab(enum Type Type)
{
if (Type == Type::Top) return 10850;
if (Type == Type::Bottom) return 10852;
return 10854;
}
short RedNetherBrickSlab();
enum Type Type(short ID);
}
namespace RedNetherBrickStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short RedNetherBrickStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 10550;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 10552;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 10554;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 10556;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 10558;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 10560;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10562;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10564;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10566;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10568;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 10570;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 10572;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 10574;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 10576;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 10578;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 10580;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10582;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10584;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10586;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 10588;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 10590;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 10592;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 10594;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 10596;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 10598;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 10600;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10602;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10604;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10606;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10608;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 10610;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 10612;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 10614;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 10616;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 10618;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 10620;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10622;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10624;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10626;
return 10628;
}
short RedNetherBrickStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace RedNetherBrickWall
{
enum class East
{
None,
Low,
Tall
};
enum class North
{
None,
Low,
Tall
};
enum class South
{
None,
Low,
Tall
};
enum class West
{
None,
Low,
Tall
};
constexpr short RedNetherBrickWall(enum East East, enum North North, enum South South, bool Up, enum West West)
{
if (East == East::None && North == North::None && South == South::None && Up && West == West::None) return 13462;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Low) return 13463;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Tall) return 13464;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::None) return 13468;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Low) return 13469;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Tall) return 13470;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::None) return 13474;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Low) return 13475;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Tall) return 13476;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::None) return 13480;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Low) return 13481;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Tall) return 13482;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::None) return 13486;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Low) return 13487;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Tall) return 13488;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::None) return 13492;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Low) return 13493;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Tall) return 13494;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::None) return 13498;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Low) return 13499;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Tall) return 13500;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::None) return 13504;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Low) return 13505;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Tall) return 13506;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::None) return 13510;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Low) return 13511;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Tall) return 13512;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::None) return 13516;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Low) return 13517;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Tall) return 13518;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::None) return 13522;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Low) return 13523;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Tall) return 13524;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::None) return 13528;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Low) return 13529;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 13530;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::None) return 13534;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Low) return 13535;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Tall) return 13536;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::None) return 13540;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Low) return 13541;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Tall) return 13542;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::None) return 13546;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Low) return 13547;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Tall) return 13548;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::None) return 13552;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Low) return 13553;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 13554;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::None) return 13558;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Low) return 13559;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 13560;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::None) return 13564;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 13565;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 13566;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::None) return 13570;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Low) return 13571;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Tall) return 13572;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::None) return 13576;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Low) return 13577;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Tall) return 13578;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::None) return 13582;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Low) return 13583;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Tall) return 13584;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::None) return 13588;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Low) return 13589;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Tall) return 13590;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::None) return 13594;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Low) return 13595;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Tall) return 13596;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::None) return 13600;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Low) return 13601;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Tall) return 13602;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::None) return 13606;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Low) return 13607;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Tall) return 13608;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::None) return 13612;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Low) return 13613;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Tall) return 13614;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::None) return 13618;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Low) return 13619;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Tall) return 13620;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::None) return 13624;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Low) return 13625;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Tall) return 13626;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::None) return 13630;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Low) return 13631;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Tall) return 13632;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::None) return 13636;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Low) return 13637;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 13638;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::None) return 13642;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Low) return 13643;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Tall) return 13644;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::None) return 13648;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Low) return 13649;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Tall) return 13650;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::None) return 13654;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Low) return 13655;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Tall) return 13656;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::None) return 13660;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Low) return 13661;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 13662;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::None) return 13666;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Low) return 13667;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 13668;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::None) return 13672;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 13673;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 13674;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::None) return 13678;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Low) return 13679;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Tall) return 13680;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::None) return 13684;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Low) return 13685;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Tall) return 13686;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::None) return 13690;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Low) return 13691;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Tall) return 13692;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::None) return 13696;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Low) return 13697;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Tall) return 13698;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::None) return 13702;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Low) return 13703;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Tall) return 13704;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::None) return 13708;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Low) return 13709;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Tall) return 13710;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::None) return 13714;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Low) return 13715;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Tall) return 13716;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::None) return 13720;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Low) return 13721;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Tall) return 13722;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::None) return 13726;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Low) return 13727;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Tall) return 13728;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::None) return 13732;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Low) return 13733;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Tall) return 13734;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::None) return 13738;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Low) return 13739;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Tall) return 13740;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::None) return 13744;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Low) return 13745;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 13746;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::None) return 13750;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Low) return 13751;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Tall) return 13752;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::None) return 13756;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Low) return 13757;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Tall) return 13758;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::None) return 13762;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Low) return 13763;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Tall) return 13764;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::None) return 13768;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Low) return 13769;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 13770;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::None) return 13774;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Low) return 13775;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 13776;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::None) return 13780;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 13781;
return 13782;
}
short RedNetherBrickWall();
enum East East(short ID);
enum North North(short ID);
enum South South(short ID);
bool Up(short ID);
enum West West(short ID);
}
namespace RedNetherBricks
{
constexpr short RedNetherBricks()
{
return 9255;
}
}
namespace RedSand
{
constexpr short RedSand()
{
return 67;
}
}
namespace RedSandstone
{
constexpr short RedSandstone()
{
return 8217;
}
}
namespace RedSandstoneSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short RedSandstoneSlab(enum Type Type)
{
if (Type == Type::Top) return 8397;
if (Type == Type::Bottom) return 8399;
return 8401;
}
short RedSandstoneSlab();
enum Type Type(short ID);
}
namespace RedSandstoneStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short RedSandstoneStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 8221;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 8223;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 8225;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 8227;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 8229;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 8231;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 8233;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 8235;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 8237;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 8239;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 8241;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 8243;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 8245;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 8247;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 8249;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 8251;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 8253;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 8255;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 8257;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 8259;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 8261;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 8263;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 8265;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 8267;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 8269;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 8271;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 8273;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 8275;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 8277;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 8279;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 8281;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 8283;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 8285;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 8287;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 8289;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 8291;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 8293;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 8295;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 8297;
return 8299;
}
short RedSandstoneStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace RedSandstoneWall
{
enum class East
{
None,
Low,
Tall
};
enum class North
{
None,
Low,
Tall
};
enum class South
{
None,
Low,
Tall
};
enum class West
{
None,
Low,
Tall
};
constexpr short RedSandstoneWall(enum East East, enum North North, enum South South, bool Up, enum West West)
{
if (East == East::None && North == North::None && South == South::None && Up && West == West::None) return 11518;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Low) return 11519;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Tall) return 11520;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::None) return 11524;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Low) return 11525;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Tall) return 11526;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::None) return 11530;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Low) return 11531;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Tall) return 11532;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::None) return 11536;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Low) return 11537;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Tall) return 11538;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::None) return 11542;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Low) return 11543;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Tall) return 11544;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::None) return 11548;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Low) return 11549;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Tall) return 11550;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::None) return 11554;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Low) return 11555;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Tall) return 11556;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::None) return 11560;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Low) return 11561;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Tall) return 11562;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::None) return 11566;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Low) return 11567;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Tall) return 11568;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::None) return 11572;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Low) return 11573;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Tall) return 11574;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::None) return 11578;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Low) return 11579;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Tall) return 11580;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::None) return 11584;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Low) return 11585;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 11586;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::None) return 11590;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Low) return 11591;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Tall) return 11592;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::None) return 11596;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Low) return 11597;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Tall) return 11598;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::None) return 11602;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Low) return 11603;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Tall) return 11604;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::None) return 11608;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Low) return 11609;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 11610;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::None) return 11614;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Low) return 11615;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 11616;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::None) return 11620;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 11621;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 11622;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::None) return 11626;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Low) return 11627;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Tall) return 11628;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::None) return 11632;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Low) return 11633;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Tall) return 11634;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::None) return 11638;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Low) return 11639;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Tall) return 11640;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::None) return 11644;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Low) return 11645;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Tall) return 11646;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::None) return 11650;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Low) return 11651;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Tall) return 11652;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::None) return 11656;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Low) return 11657;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Tall) return 11658;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::None) return 11662;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Low) return 11663;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Tall) return 11664;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::None) return 11668;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Low) return 11669;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Tall) return 11670;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::None) return 11674;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Low) return 11675;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Tall) return 11676;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::None) return 11680;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Low) return 11681;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Tall) return 11682;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::None) return 11686;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Low) return 11687;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Tall) return 11688;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::None) return 11692;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Low) return 11693;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 11694;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::None) return 11698;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Low) return 11699;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Tall) return 11700;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::None) return 11704;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Low) return 11705;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Tall) return 11706;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::None) return 11710;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Low) return 11711;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Tall) return 11712;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::None) return 11716;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Low) return 11717;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 11718;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::None) return 11722;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Low) return 11723;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 11724;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::None) return 11728;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 11729;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 11730;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::None) return 11734;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Low) return 11735;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Tall) return 11736;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::None) return 11740;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Low) return 11741;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Tall) return 11742;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::None) return 11746;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Low) return 11747;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Tall) return 11748;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::None) return 11752;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Low) return 11753;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Tall) return 11754;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::None) return 11758;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Low) return 11759;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Tall) return 11760;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::None) return 11764;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Low) return 11765;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Tall) return 11766;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::None) return 11770;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Low) return 11771;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Tall) return 11772;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::None) return 11776;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Low) return 11777;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Tall) return 11778;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::None) return 11782;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Low) return 11783;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Tall) return 11784;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::None) return 11788;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Low) return 11789;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Tall) return 11790;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::None) return 11794;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Low) return 11795;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Tall) return 11796;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::None) return 11800;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Low) return 11801;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 11802;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::None) return 11806;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Low) return 11807;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Tall) return 11808;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::None) return 11812;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Low) return 11813;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Tall) return 11814;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::None) return 11818;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Low) return 11819;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Tall) return 11820;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::None) return 11824;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Low) return 11825;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 11826;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::None) return 11830;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Low) return 11831;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 11832;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::None) return 11836;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 11837;
return 11838;
}
short RedSandstoneWall();
enum East East(short ID);
enum North North(short ID);
enum South South(short ID);
bool Up(short ID);
enum West West(short ID);
}
namespace RedShulkerBox
{
constexpr short RedShulkerBox(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9362;
if (Facing == eBlockFace::BLOCK_FACE_XP) return 9363;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9364;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9365;
if (Facing == eBlockFace::BLOCK_FACE_YP) return 9366;
return 9367;
}
short RedShulkerBox();
eBlockFace Facing(short ID);
}
namespace RedStainedGlass
{
constexpr short RedStainedGlass()
{
return 4109;
}
}
namespace RedStainedGlassPane
{
constexpr short RedStainedGlassPane(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 7313;
if (East && North && South && !West) return 7314;
if (East && North && !South && West) return 7317;
if (East && North && !South && !West) return 7318;
if (East && !North && South && West) return 7321;
if (East && !North && South && !West) return 7322;
if (East && !North && !South && West) return 7325;
if (East && !North && !South && !West) return 7326;
if (!East && North && South && West) return 7329;
if (!East && North && South && !West) return 7330;
if (!East && North && !South && West) return 7333;
if (!East && North && !South && !West) return 7334;
if (!East && !North && South && West) return 7337;
if (!East && !North && South && !West) return 7338;
if (!East && !North && !South && West) return 7341;
return 7342;
}
short RedStainedGlassPane();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace RedTerracotta
{
constexpr short RedTerracotta()
{
return 6861;
}
}
namespace RedTulip
{
constexpr short RedTulip()
{
return 1417;
}
}
namespace RedWallBanner
{
constexpr short RedWallBanner(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8209;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8210;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 8211;
return 8212;
}
short RedWallBanner();
eBlockFace Facing(short ID);
}
namespace RedWool
{
constexpr short RedWool()
{
return 1398;
}
}
namespace RedstoneBlock
{
constexpr short RedstoneBlock()
{
return 6726;
}
}
namespace RedstoneLamp
{
constexpr short RedstoneLamp(bool Lit)
{
if (Lit) return 5156;
return 5157;
}
short RedstoneLamp();
bool Lit(short ID);
}
namespace RedstoneOre
{
constexpr short RedstoneOre(bool Lit)
{
if (Lit) return 3885;
return 3886;
}
short RedstoneOre();
bool Lit(short ID);
}
namespace RedstoneTorch
{
constexpr short RedstoneTorch(bool Lit)
{
if (Lit) return 3887;
return 3888;
}
short RedstoneTorch();
bool Lit(short ID);
}
namespace RedstoneWallTorch
{
constexpr short RedstoneWallTorch(eBlockFace Facing, bool Lit)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Lit) return 3889;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Lit) return 3890;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Lit) return 3891;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Lit) return 3892;
if (Facing == eBlockFace::BLOCK_FACE_XM && Lit) return 3893;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Lit) return 3894;
if (Facing == eBlockFace::BLOCK_FACE_XP && Lit) return 3895;
return 3896;
}
short RedstoneWallTorch();
eBlockFace Facing(short ID);
bool Lit(short ID);
}
namespace RedstoneWire
{
enum class East
{
Up,
Side,
None
};
enum class North
{
Up,
Side,
None
};
enum class South
{
Up,
Side,
None
};
enum class West
{
Up,
Side,
None
};
constexpr short RedstoneWire(enum East East, enum North North, unsigned char Power, enum South South, enum West West)
{
if (East == East::Up && North == North::Up && Power == 0 && South == South::Up && West == West::Up) return 2058;
if (East == East::Up && North == North::Up && Power == 0 && South == South::Up && West == West::Side) return 2059;
if (East == East::Up && North == North::Up && Power == 0 && South == South::Up && West == West::None) return 2060;
if (East == East::Up && North == North::Up && Power == 0 && South == South::Side && West == West::Up) return 2061;
if (East == East::Up && North == North::Up && Power == 0 && South == South::Side && West == West::Side) return 2062;
if (East == East::Up && North == North::Up && Power == 0 && South == South::Side && West == West::None) return 2063;
if (East == East::Up && North == North::Up && Power == 0 && South == South::None && West == West::Up) return 2064;
if (East == East::Up && North == North::Up && Power == 0 && South == South::None && West == West::Side) return 2065;
if (East == East::Up && North == North::Up && Power == 0 && South == South::None && West == West::None) return 2066;
if (East == East::Up && North == North::Up && Power == 1 && South == South::Up && West == West::Up) return 2067;
if (East == East::Up && North == North::Up && Power == 1 && South == South::Up && West == West::Side) return 2068;
if (East == East::Up && North == North::Up && Power == 1 && South == South::Up && West == West::None) return 2069;
if (East == East::Up && North == North::Up && Power == 1 && South == South::Side && West == West::Up) return 2070;
if (East == East::Up && North == North::Up && Power == 1 && South == South::Side && West == West::Side) return 2071;
if (East == East::Up && North == North::Up && Power == 1 && South == South::Side && West == West::None) return 2072;
if (East == East::Up && North == North::Up && Power == 1 && South == South::None && West == West::Up) return 2073;
if (East == East::Up && North == North::Up && Power == 1 && South == South::None && West == West::Side) return 2074;
if (East == East::Up && North == North::Up && Power == 1 && South == South::None && West == West::None) return 2075;
if (East == East::Up && North == North::Up && Power == 2 && South == South::Up && West == West::Up) return 2076;
if (East == East::Up && North == North::Up && Power == 2 && South == South::Up && West == West::Side) return 2077;
if (East == East::Up && North == North::Up && Power == 2 && South == South::Up && West == West::None) return 2078;
if (East == East::Up && North == North::Up && Power == 2 && South == South::Side && West == West::Up) return 2079;
if (East == East::Up && North == North::Up && Power == 2 && South == South::Side && West == West::Side) return 2080;
if (East == East::Up && North == North::Up && Power == 2 && South == South::Side && West == West::None) return 2081;
if (East == East::Up && North == North::Up && Power == 2 && South == South::None && West == West::Up) return 2082;
if (East == East::Up && North == North::Up && Power == 2 && South == South::None && West == West::Side) return 2083;
if (East == East::Up && North == North::Up && Power == 2 && South == South::None && West == West::None) return 2084;
if (East == East::Up && North == North::Up && Power == 3 && South == South::Up && West == West::Up) return 2085;
if (East == East::Up && North == North::Up && Power == 3 && South == South::Up && West == West::Side) return 2086;
if (East == East::Up && North == North::Up && Power == 3 && South == South::Up && West == West::None) return 2087;
if (East == East::Up && North == North::Up && Power == 3 && South == South::Side && West == West::Up) return 2088;
if (East == East::Up && North == North::Up && Power == 3 && South == South::Side && West == West::Side) return 2089;
if (East == East::Up && North == North::Up && Power == 3 && South == South::Side && West == West::None) return 2090;
if (East == East::Up && North == North::Up && Power == 3 && South == South::None && West == West::Up) return 2091;
if (East == East::Up && North == North::Up && Power == 3 && South == South::None && West == West::Side) return 2092;
if (East == East::Up && North == North::Up && Power == 3 && South == South::None && West == West::None) return 2093;
if (East == East::Up && North == North::Up && Power == 4 && South == South::Up && West == West::Up) return 2094;
if (East == East::Up && North == North::Up && Power == 4 && South == South::Up && West == West::Side) return 2095;
if (East == East::Up && North == North::Up && Power == 4 && South == South::Up && West == West::None) return 2096;
if (East == East::Up && North == North::Up && Power == 4 && South == South::Side && West == West::Up) return 2097;
if (East == East::Up && North == North::Up && Power == 4 && South == South::Side && West == West::Side) return 2098;
if (East == East::Up && North == North::Up && Power == 4 && South == South::Side && West == West::None) return 2099;
if (East == East::Up && North == North::Up && Power == 4 && South == South::None && West == West::Up) return 2100;
if (East == East::Up && North == North::Up && Power == 4 && South == South::None && West == West::Side) return 2101;
if (East == East::Up && North == North::Up && Power == 4 && South == South::None && West == West::None) return 2102;
if (East == East::Up && North == North::Up && Power == 5 && South == South::Up && West == West::Up) return 2103;
if (East == East::Up && North == North::Up && Power == 5 && South == South::Up && West == West::Side) return 2104;
if (East == East::Up && North == North::Up && Power == 5 && South == South::Up && West == West::None) return 2105;
if (East == East::Up && North == North::Up && Power == 5 && South == South::Side && West == West::Up) return 2106;
if (East == East::Up && North == North::Up && Power == 5 && South == South::Side && West == West::Side) return 2107;
if (East == East::Up && North == North::Up && Power == 5 && South == South::Side && West == West::None) return 2108;
if (East == East::Up && North == North::Up && Power == 5 && South == South::None && West == West::Up) return 2109;
if (East == East::Up && North == North::Up && Power == 5 && South == South::None && West == West::Side) return 2110;
if (East == East::Up && North == North::Up && Power == 5 && South == South::None && West == West::None) return 2111;
if (East == East::Up && North == North::Up && Power == 6 && South == South::Up && West == West::Up) return 2112;
if (East == East::Up && North == North::Up && Power == 6 && South == South::Up && West == West::Side) return 2113;
if (East == East::Up && North == North::Up && Power == 6 && South == South::Up && West == West::None) return 2114;
if (East == East::Up && North == North::Up && Power == 6 && South == South::Side && West == West::Up) return 2115;
if (East == East::Up && North == North::Up && Power == 6 && South == South::Side && West == West::Side) return 2116;
if (East == East::Up && North == North::Up && Power == 6 && South == South::Side && West == West::None) return 2117;
if (East == East::Up && North == North::Up && Power == 6 && South == South::None && West == West::Up) return 2118;
if (East == East::Up && North == North::Up && Power == 6 && South == South::None && West == West::Side) return 2119;
if (East == East::Up && North == North::Up && Power == 6 && South == South::None && West == West::None) return 2120;
if (East == East::Up && North == North::Up && Power == 7 && South == South::Up && West == West::Up) return 2121;
if (East == East::Up && North == North::Up && Power == 7 && South == South::Up && West == West::Side) return 2122;
if (East == East::Up && North == North::Up && Power == 7 && South == South::Up && West == West::None) return 2123;
if (East == East::Up && North == North::Up && Power == 7 && South == South::Side && West == West::Up) return 2124;
if (East == East::Up && North == North::Up && Power == 7 && South == South::Side && West == West::Side) return 2125;
if (East == East::Up && North == North::Up && Power == 7 && South == South::Side && West == West::None) return 2126;
if (East == East::Up && North == North::Up && Power == 7 && South == South::None && West == West::Up) return 2127;
if (East == East::Up && North == North::Up && Power == 7 && South == South::None && West == West::Side) return 2128;
if (East == East::Up && North == North::Up && Power == 7 && South == South::None && West == West::None) return 2129;
if (East == East::Up && North == North::Up && Power == 8 && South == South::Up && West == West::Up) return 2130;
if (East == East::Up && North == North::Up && Power == 8 && South == South::Up && West == West::Side) return 2131;
if (East == East::Up && North == North::Up && Power == 8 && South == South::Up && West == West::None) return 2132;
if (East == East::Up && North == North::Up && Power == 8 && South == South::Side && West == West::Up) return 2133;
if (East == East::Up && North == North::Up && Power == 8 && South == South::Side && West == West::Side) return 2134;
if (East == East::Up && North == North::Up && Power == 8 && South == South::Side && West == West::None) return 2135;
if (East == East::Up && North == North::Up && Power == 8 && South == South::None && West == West::Up) return 2136;
if (East == East::Up && North == North::Up && Power == 8 && South == South::None && West == West::Side) return 2137;
if (East == East::Up && North == North::Up && Power == 8 && South == South::None && West == West::None) return 2138;
if (East == East::Up && North == North::Up && Power == 9 && South == South::Up && West == West::Up) return 2139;
if (East == East::Up && North == North::Up && Power == 9 && South == South::Up && West == West::Side) return 2140;
if (East == East::Up && North == North::Up && Power == 9 && South == South::Up && West == West::None) return 2141;
if (East == East::Up && North == North::Up && Power == 9 && South == South::Side && West == West::Up) return 2142;
if (East == East::Up && North == North::Up && Power == 9 && South == South::Side && West == West::Side) return 2143;
if (East == East::Up && North == North::Up && Power == 9 && South == South::Side && West == West::None) return 2144;
if (East == East::Up && North == North::Up && Power == 9 && South == South::None && West == West::Up) return 2145;
if (East == East::Up && North == North::Up && Power == 9 && South == South::None && West == West::Side) return 2146;
if (East == East::Up && North == North::Up && Power == 9 && South == South::None && West == West::None) return 2147;
if (East == East::Up && North == North::Up && Power == 10 && South == South::Up && West == West::Up) return 2148;
if (East == East::Up && North == North::Up && Power == 10 && South == South::Up && West == West::Side) return 2149;
if (East == East::Up && North == North::Up && Power == 10 && South == South::Up && West == West::None) return 2150;
if (East == East::Up && North == North::Up && Power == 10 && South == South::Side && West == West::Up) return 2151;
if (East == East::Up && North == North::Up && Power == 10 && South == South::Side && West == West::Side) return 2152;
if (East == East::Up && North == North::Up && Power == 10 && South == South::Side && West == West::None) return 2153;
if (East == East::Up && North == North::Up && Power == 10 && South == South::None && West == West::Up) return 2154;
if (East == East::Up && North == North::Up && Power == 10 && South == South::None && West == West::Side) return 2155;
if (East == East::Up && North == North::Up && Power == 10 && South == South::None && West == West::None) return 2156;
if (East == East::Up && North == North::Up && Power == 11 && South == South::Up && West == West::Up) return 2157;
if (East == East::Up && North == North::Up && Power == 11 && South == South::Up && West == West::Side) return 2158;
if (East == East::Up && North == North::Up && Power == 11 && South == South::Up && West == West::None) return 2159;
if (East == East::Up && North == North::Up && Power == 11 && South == South::Side && West == West::Up) return 2160;
if (East == East::Up && North == North::Up && Power == 11 && South == South::Side && West == West::Side) return 2161;
if (East == East::Up && North == North::Up && Power == 11 && South == South::Side && West == West::None) return 2162;
if (East == East::Up && North == North::Up && Power == 11 && South == South::None && West == West::Up) return 2163;
if (East == East::Up && North == North::Up && Power == 11 && South == South::None && West == West::Side) return 2164;
if (East == East::Up && North == North::Up && Power == 11 && South == South::None && West == West::None) return 2165;
if (East == East::Up && North == North::Up && Power == 12 && South == South::Up && West == West::Up) return 2166;
if (East == East::Up && North == North::Up && Power == 12 && South == South::Up && West == West::Side) return 2167;
if (East == East::Up && North == North::Up && Power == 12 && South == South::Up && West == West::None) return 2168;
if (East == East::Up && North == North::Up && Power == 12 && South == South::Side && West == West::Up) return 2169;
if (East == East::Up && North == North::Up && Power == 12 && South == South::Side && West == West::Side) return 2170;
if (East == East::Up && North == North::Up && Power == 12 && South == South::Side && West == West::None) return 2171;
if (East == East::Up && North == North::Up && Power == 12 && South == South::None && West == West::Up) return 2172;
if (East == East::Up && North == North::Up && Power == 12 && South == South::None && West == West::Side) return 2173;
if (East == East::Up && North == North::Up && Power == 12 && South == South::None && West == West::None) return 2174;
if (East == East::Up && North == North::Up && Power == 13 && South == South::Up && West == West::Up) return 2175;
if (East == East::Up && North == North::Up && Power == 13 && South == South::Up && West == West::Side) return 2176;
if (East == East::Up && North == North::Up && Power == 13 && South == South::Up && West == West::None) return 2177;
if (East == East::Up && North == North::Up && Power == 13 && South == South::Side && West == West::Up) return 2178;
if (East == East::Up && North == North::Up && Power == 13 && South == South::Side && West == West::Side) return 2179;
if (East == East::Up && North == North::Up && Power == 13 && South == South::Side && West == West::None) return 2180;
if (East == East::Up && North == North::Up && Power == 13 && South == South::None && West == West::Up) return 2181;
if (East == East::Up && North == North::Up && Power == 13 && South == South::None && West == West::Side) return 2182;
if (East == East::Up && North == North::Up && Power == 13 && South == South::None && West == West::None) return 2183;
if (East == East::Up && North == North::Up && Power == 14 && South == South::Up && West == West::Up) return 2184;
if (East == East::Up && North == North::Up && Power == 14 && South == South::Up && West == West::Side) return 2185;
if (East == East::Up && North == North::Up && Power == 14 && South == South::Up && West == West::None) return 2186;
if (East == East::Up && North == North::Up && Power == 14 && South == South::Side && West == West::Up) return 2187;
if (East == East::Up && North == North::Up && Power == 14 && South == South::Side && West == West::Side) return 2188;
if (East == East::Up && North == North::Up && Power == 14 && South == South::Side && West == West::None) return 2189;
if (East == East::Up && North == North::Up && Power == 14 && South == South::None && West == West::Up) return 2190;
if (East == East::Up && North == North::Up && Power == 14 && South == South::None && West == West::Side) return 2191;
if (East == East::Up && North == North::Up && Power == 14 && South == South::None && West == West::None) return 2192;
if (East == East::Up && North == North::Up && Power == 15 && South == South::Up && West == West::Up) return 2193;
if (East == East::Up && North == North::Up && Power == 15 && South == South::Up && West == West::Side) return 2194;
if (East == East::Up && North == North::Up && Power == 15 && South == South::Up && West == West::None) return 2195;
if (East == East::Up && North == North::Up && Power == 15 && South == South::Side && West == West::Up) return 2196;
if (East == East::Up && North == North::Up && Power == 15 && South == South::Side && West == West::Side) return 2197;
if (East == East::Up && North == North::Up && Power == 15 && South == South::Side && West == West::None) return 2198;
if (East == East::Up && North == North::Up && Power == 15 && South == South::None && West == West::Up) return 2199;
if (East == East::Up && North == North::Up && Power == 15 && South == South::None && West == West::Side) return 2200;
if (East == East::Up && North == North::Up && Power == 15 && South == South::None && West == West::None) return 2201;
if (East == East::Up && North == North::Side && Power == 0 && South == South::Up && West == West::Up) return 2202;
if (East == East::Up && North == North::Side && Power == 0 && South == South::Up && West == West::Side) return 2203;
if (East == East::Up && North == North::Side && Power == 0 && South == South::Up && West == West::None) return 2204;
if (East == East::Up && North == North::Side && Power == 0 && South == South::Side && West == West::Up) return 2205;
if (East == East::Up && North == North::Side && Power == 0 && South == South::Side && West == West::Side) return 2206;
if (East == East::Up && North == North::Side && Power == 0 && South == South::Side && West == West::None) return 2207;
if (East == East::Up && North == North::Side && Power == 0 && South == South::None && West == West::Up) return 2208;
if (East == East::Up && North == North::Side && Power == 0 && South == South::None && West == West::Side) return 2209;
if (East == East::Up && North == North::Side && Power == 0 && South == South::None && West == West::None) return 2210;
if (East == East::Up && North == North::Side && Power == 1 && South == South::Up && West == West::Up) return 2211;
if (East == East::Up && North == North::Side && Power == 1 && South == South::Up && West == West::Side) return 2212;
if (East == East::Up && North == North::Side && Power == 1 && South == South::Up && West == West::None) return 2213;
if (East == East::Up && North == North::Side && Power == 1 && South == South::Side && West == West::Up) return 2214;
if (East == East::Up && North == North::Side && Power == 1 && South == South::Side && West == West::Side) return 2215;
if (East == East::Up && North == North::Side && Power == 1 && South == South::Side && West == West::None) return 2216;
if (East == East::Up && North == North::Side && Power == 1 && South == South::None && West == West::Up) return 2217;
if (East == East::Up && North == North::Side && Power == 1 && South == South::None && West == West::Side) return 2218;
if (East == East::Up && North == North::Side && Power == 1 && South == South::None && West == West::None) return 2219;
if (East == East::Up && North == North::Side && Power == 2 && South == South::Up && West == West::Up) return 2220;
if (East == East::Up && North == North::Side && Power == 2 && South == South::Up && West == West::Side) return 2221;
if (East == East::Up && North == North::Side && Power == 2 && South == South::Up && West == West::None) return 2222;
if (East == East::Up && North == North::Side && Power == 2 && South == South::Side && West == West::Up) return 2223;
if (East == East::Up && North == North::Side && Power == 2 && South == South::Side && West == West::Side) return 2224;
if (East == East::Up && North == North::Side && Power == 2 && South == South::Side && West == West::None) return 2225;
if (East == East::Up && North == North::Side && Power == 2 && South == South::None && West == West::Up) return 2226;
if (East == East::Up && North == North::Side && Power == 2 && South == South::None && West == West::Side) return 2227;
if (East == East::Up && North == North::Side && Power == 2 && South == South::None && West == West::None) return 2228;
if (East == East::Up && North == North::Side && Power == 3 && South == South::Up && West == West::Up) return 2229;
if (East == East::Up && North == North::Side && Power == 3 && South == South::Up && West == West::Side) return 2230;
if (East == East::Up && North == North::Side && Power == 3 && South == South::Up && West == West::None) return 2231;
if (East == East::Up && North == North::Side && Power == 3 && South == South::Side && West == West::Up) return 2232;
if (East == East::Up && North == North::Side && Power == 3 && South == South::Side && West == West::Side) return 2233;
if (East == East::Up && North == North::Side && Power == 3 && South == South::Side && West == West::None) return 2234;
if (East == East::Up && North == North::Side && Power == 3 && South == South::None && West == West::Up) return 2235;
if (East == East::Up && North == North::Side && Power == 3 && South == South::None && West == West::Side) return 2236;
if (East == East::Up && North == North::Side && Power == 3 && South == South::None && West == West::None) return 2237;
if (East == East::Up && North == North::Side && Power == 4 && South == South::Up && West == West::Up) return 2238;
if (East == East::Up && North == North::Side && Power == 4 && South == South::Up && West == West::Side) return 2239;
if (East == East::Up && North == North::Side && Power == 4 && South == South::Up && West == West::None) return 2240;
if (East == East::Up && North == North::Side && Power == 4 && South == South::Side && West == West::Up) return 2241;
if (East == East::Up && North == North::Side && Power == 4 && South == South::Side && West == West::Side) return 2242;
if (East == East::Up && North == North::Side && Power == 4 && South == South::Side && West == West::None) return 2243;
if (East == East::Up && North == North::Side && Power == 4 && South == South::None && West == West::Up) return 2244;
if (East == East::Up && North == North::Side && Power == 4 && South == South::None && West == West::Side) return 2245;
if (East == East::Up && North == North::Side && Power == 4 && South == South::None && West == West::None) return 2246;
if (East == East::Up && North == North::Side && Power == 5 && South == South::Up && West == West::Up) return 2247;
if (East == East::Up && North == North::Side && Power == 5 && South == South::Up && West == West::Side) return 2248;
if (East == East::Up && North == North::Side && Power == 5 && South == South::Up && West == West::None) return 2249;
if (East == East::Up && North == North::Side && Power == 5 && South == South::Side && West == West::Up) return 2250;
if (East == East::Up && North == North::Side && Power == 5 && South == South::Side && West == West::Side) return 2251;
if (East == East::Up && North == North::Side && Power == 5 && South == South::Side && West == West::None) return 2252;
if (East == East::Up && North == North::Side && Power == 5 && South == South::None && West == West::Up) return 2253;
if (East == East::Up && North == North::Side && Power == 5 && South == South::None && West == West::Side) return 2254;
if (East == East::Up && North == North::Side && Power == 5 && South == South::None && West == West::None) return 2255;
if (East == East::Up && North == North::Side && Power == 6 && South == South::Up && West == West::Up) return 2256;
if (East == East::Up && North == North::Side && Power == 6 && South == South::Up && West == West::Side) return 2257;
if (East == East::Up && North == North::Side && Power == 6 && South == South::Up && West == West::None) return 2258;
if (East == East::Up && North == North::Side && Power == 6 && South == South::Side && West == West::Up) return 2259;
if (East == East::Up && North == North::Side && Power == 6 && South == South::Side && West == West::Side) return 2260;
if (East == East::Up && North == North::Side && Power == 6 && South == South::Side && West == West::None) return 2261;
if (East == East::Up && North == North::Side && Power == 6 && South == South::None && West == West::Up) return 2262;
if (East == East::Up && North == North::Side && Power == 6 && South == South::None && West == West::Side) return 2263;
if (East == East::Up && North == North::Side && Power == 6 && South == South::None && West == West::None) return 2264;
if (East == East::Up && North == North::Side && Power == 7 && South == South::Up && West == West::Up) return 2265;
if (East == East::Up && North == North::Side && Power == 7 && South == South::Up && West == West::Side) return 2266;
if (East == East::Up && North == North::Side && Power == 7 && South == South::Up && West == West::None) return 2267;
if (East == East::Up && North == North::Side && Power == 7 && South == South::Side && West == West::Up) return 2268;
if (East == East::Up && North == North::Side && Power == 7 && South == South::Side && West == West::Side) return 2269;
if (East == East::Up && North == North::Side && Power == 7 && South == South::Side && West == West::None) return 2270;
if (East == East::Up && North == North::Side && Power == 7 && South == South::None && West == West::Up) return 2271;
if (East == East::Up && North == North::Side && Power == 7 && South == South::None && West == West::Side) return 2272;
if (East == East::Up && North == North::Side && Power == 7 && South == South::None && West == West::None) return 2273;
if (East == East::Up && North == North::Side && Power == 8 && South == South::Up && West == West::Up) return 2274;
if (East == East::Up && North == North::Side && Power == 8 && South == South::Up && West == West::Side) return 2275;
if (East == East::Up && North == North::Side && Power == 8 && South == South::Up && West == West::None) return 2276;
if (East == East::Up && North == North::Side && Power == 8 && South == South::Side && West == West::Up) return 2277;
if (East == East::Up && North == North::Side && Power == 8 && South == South::Side && West == West::Side) return 2278;
if (East == East::Up && North == North::Side && Power == 8 && South == South::Side && West == West::None) return 2279;
if (East == East::Up && North == North::Side && Power == 8 && South == South::None && West == West::Up) return 2280;
if (East == East::Up && North == North::Side && Power == 8 && South == South::None && West == West::Side) return 2281;
if (East == East::Up && North == North::Side && Power == 8 && South == South::None && West == West::None) return 2282;
if (East == East::Up && North == North::Side && Power == 9 && South == South::Up && West == West::Up) return 2283;
if (East == East::Up && North == North::Side && Power == 9 && South == South::Up && West == West::Side) return 2284;
if (East == East::Up && North == North::Side && Power == 9 && South == South::Up && West == West::None) return 2285;
if (East == East::Up && North == North::Side && Power == 9 && South == South::Side && West == West::Up) return 2286;
if (East == East::Up && North == North::Side && Power == 9 && South == South::Side && West == West::Side) return 2287;
if (East == East::Up && North == North::Side && Power == 9 && South == South::Side && West == West::None) return 2288;
if (East == East::Up && North == North::Side && Power == 9 && South == South::None && West == West::Up) return 2289;
if (East == East::Up && North == North::Side && Power == 9 && South == South::None && West == West::Side) return 2290;
if (East == East::Up && North == North::Side && Power == 9 && South == South::None && West == West::None) return 2291;
if (East == East::Up && North == North::Side && Power == 10 && South == South::Up && West == West::Up) return 2292;
if (East == East::Up && North == North::Side && Power == 10 && South == South::Up && West == West::Side) return 2293;
if (East == East::Up && North == North::Side && Power == 10 && South == South::Up && West == West::None) return 2294;
if (East == East::Up && North == North::Side && Power == 10 && South == South::Side && West == West::Up) return 2295;
if (East == East::Up && North == North::Side && Power == 10 && South == South::Side && West == West::Side) return 2296;
if (East == East::Up && North == North::Side && Power == 10 && South == South::Side && West == West::None) return 2297;
if (East == East::Up && North == North::Side && Power == 10 && South == South::None && West == West::Up) return 2298;
if (East == East::Up && North == North::Side && Power == 10 && South == South::None && West == West::Side) return 2299;
if (East == East::Up && North == North::Side && Power == 10 && South == South::None && West == West::None) return 2300;
if (East == East::Up && North == North::Side && Power == 11 && South == South::Up && West == West::Up) return 2301;
if (East == East::Up && North == North::Side && Power == 11 && South == South::Up && West == West::Side) return 2302;
if (East == East::Up && North == North::Side && Power == 11 && South == South::Up && West == West::None) return 2303;
if (East == East::Up && North == North::Side && Power == 11 && South == South::Side && West == West::Up) return 2304;
if (East == East::Up && North == North::Side && Power == 11 && South == South::Side && West == West::Side) return 2305;
if (East == East::Up && North == North::Side && Power == 11 && South == South::Side && West == West::None) return 2306;
if (East == East::Up && North == North::Side && Power == 11 && South == South::None && West == West::Up) return 2307;
if (East == East::Up && North == North::Side && Power == 11 && South == South::None && West == West::Side) return 2308;
if (East == East::Up && North == North::Side && Power == 11 && South == South::None && West == West::None) return 2309;
if (East == East::Up && North == North::Side && Power == 12 && South == South::Up && West == West::Up) return 2310;
if (East == East::Up && North == North::Side && Power == 12 && South == South::Up && West == West::Side) return 2311;
if (East == East::Up && North == North::Side && Power == 12 && South == South::Up && West == West::None) return 2312;
if (East == East::Up && North == North::Side && Power == 12 && South == South::Side && West == West::Up) return 2313;
if (East == East::Up && North == North::Side && Power == 12 && South == South::Side && West == West::Side) return 2314;
if (East == East::Up && North == North::Side && Power == 12 && South == South::Side && West == West::None) return 2315;
if (East == East::Up && North == North::Side && Power == 12 && South == South::None && West == West::Up) return 2316;
if (East == East::Up && North == North::Side && Power == 12 && South == South::None && West == West::Side) return 2317;
if (East == East::Up && North == North::Side && Power == 12 && South == South::None && West == West::None) return 2318;
if (East == East::Up && North == North::Side && Power == 13 && South == South::Up && West == West::Up) return 2319;
if (East == East::Up && North == North::Side && Power == 13 && South == South::Up && West == West::Side) return 2320;
if (East == East::Up && North == North::Side && Power == 13 && South == South::Up && West == West::None) return 2321;
if (East == East::Up && North == North::Side && Power == 13 && South == South::Side && West == West::Up) return 2322;
if (East == East::Up && North == North::Side && Power == 13 && South == South::Side && West == West::Side) return 2323;
if (East == East::Up && North == North::Side && Power == 13 && South == South::Side && West == West::None) return 2324;
if (East == East::Up && North == North::Side && Power == 13 && South == South::None && West == West::Up) return 2325;
if (East == East::Up && North == North::Side && Power == 13 && South == South::None && West == West::Side) return 2326;
if (East == East::Up && North == North::Side && Power == 13 && South == South::None && West == West::None) return 2327;
if (East == East::Up && North == North::Side && Power == 14 && South == South::Up && West == West::Up) return 2328;
if (East == East::Up && North == North::Side && Power == 14 && South == South::Up && West == West::Side) return 2329;
if (East == East::Up && North == North::Side && Power == 14 && South == South::Up && West == West::None) return 2330;
if (East == East::Up && North == North::Side && Power == 14 && South == South::Side && West == West::Up) return 2331;
if (East == East::Up && North == North::Side && Power == 14 && South == South::Side && West == West::Side) return 2332;
if (East == East::Up && North == North::Side && Power == 14 && South == South::Side && West == West::None) return 2333;
if (East == East::Up && North == North::Side && Power == 14 && South == South::None && West == West::Up) return 2334;
if (East == East::Up && North == North::Side && Power == 14 && South == South::None && West == West::Side) return 2335;
if (East == East::Up && North == North::Side && Power == 14 && South == South::None && West == West::None) return 2336;
if (East == East::Up && North == North::Side && Power == 15 && South == South::Up && West == West::Up) return 2337;
if (East == East::Up && North == North::Side && Power == 15 && South == South::Up && West == West::Side) return 2338;
if (East == East::Up && North == North::Side && Power == 15 && South == South::Up && West == West::None) return 2339;
if (East == East::Up && North == North::Side && Power == 15 && South == South::Side && West == West::Up) return 2340;
if (East == East::Up && North == North::Side && Power == 15 && South == South::Side && West == West::Side) return 2341;
if (East == East::Up && North == North::Side && Power == 15 && South == South::Side && West == West::None) return 2342;
if (East == East::Up && North == North::Side && Power == 15 && South == South::None && West == West::Up) return 2343;
if (East == East::Up && North == North::Side && Power == 15 && South == South::None && West == West::Side) return 2344;
if (East == East::Up && North == North::Side && Power == 15 && South == South::None && West == West::None) return 2345;
if (East == East::Up && North == North::None && Power == 0 && South == South::Up && West == West::Up) return 2346;
if (East == East::Up && North == North::None && Power == 0 && South == South::Up && West == West::Side) return 2347;
if (East == East::Up && North == North::None && Power == 0 && South == South::Up && West == West::None) return 2348;
if (East == East::Up && North == North::None && Power == 0 && South == South::Side && West == West::Up) return 2349;
if (East == East::Up && North == North::None && Power == 0 && South == South::Side && West == West::Side) return 2350;
if (East == East::Up && North == North::None && Power == 0 && South == South::Side && West == West::None) return 2351;
if (East == East::Up && North == North::None && Power == 0 && South == South::None && West == West::Up) return 2352;
if (East == East::Up && North == North::None && Power == 0 && South == South::None && West == West::Side) return 2353;
if (East == East::Up && North == North::None && Power == 0 && South == South::None && West == West::None) return 2354;
if (East == East::Up && North == North::None && Power == 1 && South == South::Up && West == West::Up) return 2355;
if (East == East::Up && North == North::None && Power == 1 && South == South::Up && West == West::Side) return 2356;
if (East == East::Up && North == North::None && Power == 1 && South == South::Up && West == West::None) return 2357;
if (East == East::Up && North == North::None && Power == 1 && South == South::Side && West == West::Up) return 2358;
if (East == East::Up && North == North::None && Power == 1 && South == South::Side && West == West::Side) return 2359;
if (East == East::Up && North == North::None && Power == 1 && South == South::Side && West == West::None) return 2360;
if (East == East::Up && North == North::None && Power == 1 && South == South::None && West == West::Up) return 2361;
if (East == East::Up && North == North::None && Power == 1 && South == South::None && West == West::Side) return 2362;
if (East == East::Up && North == North::None && Power == 1 && South == South::None && West == West::None) return 2363;
if (East == East::Up && North == North::None && Power == 2 && South == South::Up && West == West::Up) return 2364;
if (East == East::Up && North == North::None && Power == 2 && South == South::Up && West == West::Side) return 2365;
if (East == East::Up && North == North::None && Power == 2 && South == South::Up && West == West::None) return 2366;
if (East == East::Up && North == North::None && Power == 2 && South == South::Side && West == West::Up) return 2367;
if (East == East::Up && North == North::None && Power == 2 && South == South::Side && West == West::Side) return 2368;
if (East == East::Up && North == North::None && Power == 2 && South == South::Side && West == West::None) return 2369;
if (East == East::Up && North == North::None && Power == 2 && South == South::None && West == West::Up) return 2370;
if (East == East::Up && North == North::None && Power == 2 && South == South::None && West == West::Side) return 2371;
if (East == East::Up && North == North::None && Power == 2 && South == South::None && West == West::None) return 2372;
if (East == East::Up && North == North::None && Power == 3 && South == South::Up && West == West::Up) return 2373;
if (East == East::Up && North == North::None && Power == 3 && South == South::Up && West == West::Side) return 2374;
if (East == East::Up && North == North::None && Power == 3 && South == South::Up && West == West::None) return 2375;
if (East == East::Up && North == North::None && Power == 3 && South == South::Side && West == West::Up) return 2376;
if (East == East::Up && North == North::None && Power == 3 && South == South::Side && West == West::Side) return 2377;
if (East == East::Up && North == North::None && Power == 3 && South == South::Side && West == West::None) return 2378;
if (East == East::Up && North == North::None && Power == 3 && South == South::None && West == West::Up) return 2379;
if (East == East::Up && North == North::None && Power == 3 && South == South::None && West == West::Side) return 2380;
if (East == East::Up && North == North::None && Power == 3 && South == South::None && West == West::None) return 2381;
if (East == East::Up && North == North::None && Power == 4 && South == South::Up && West == West::Up) return 2382;
if (East == East::Up && North == North::None && Power == 4 && South == South::Up && West == West::Side) return 2383;
if (East == East::Up && North == North::None && Power == 4 && South == South::Up && West == West::None) return 2384;
if (East == East::Up && North == North::None && Power == 4 && South == South::Side && West == West::Up) return 2385;
if (East == East::Up && North == North::None && Power == 4 && South == South::Side && West == West::Side) return 2386;
if (East == East::Up && North == North::None && Power == 4 && South == South::Side && West == West::None) return 2387;
if (East == East::Up && North == North::None && Power == 4 && South == South::None && West == West::Up) return 2388;
if (East == East::Up && North == North::None && Power == 4 && South == South::None && West == West::Side) return 2389;
if (East == East::Up && North == North::None && Power == 4 && South == South::None && West == West::None) return 2390;
if (East == East::Up && North == North::None && Power == 5 && South == South::Up && West == West::Up) return 2391;
if (East == East::Up && North == North::None && Power == 5 && South == South::Up && West == West::Side) return 2392;
if (East == East::Up && North == North::None && Power == 5 && South == South::Up && West == West::None) return 2393;
if (East == East::Up && North == North::None && Power == 5 && South == South::Side && West == West::Up) return 2394;
if (East == East::Up && North == North::None && Power == 5 && South == South::Side && West == West::Side) return 2395;
if (East == East::Up && North == North::None && Power == 5 && South == South::Side && West == West::None) return 2396;
if (East == East::Up && North == North::None && Power == 5 && South == South::None && West == West::Up) return 2397;
if (East == East::Up && North == North::None && Power == 5 && South == South::None && West == West::Side) return 2398;
if (East == East::Up && North == North::None && Power == 5 && South == South::None && West == West::None) return 2399;
if (East == East::Up && North == North::None && Power == 6 && South == South::Up && West == West::Up) return 2400;
if (East == East::Up && North == North::None && Power == 6 && South == South::Up && West == West::Side) return 2401;
if (East == East::Up && North == North::None && Power == 6 && South == South::Up && West == West::None) return 2402;
if (East == East::Up && North == North::None && Power == 6 && South == South::Side && West == West::Up) return 2403;
if (East == East::Up && North == North::None && Power == 6 && South == South::Side && West == West::Side) return 2404;
if (East == East::Up && North == North::None && Power == 6 && South == South::Side && West == West::None) return 2405;
if (East == East::Up && North == North::None && Power == 6 && South == South::None && West == West::Up) return 2406;
if (East == East::Up && North == North::None && Power == 6 && South == South::None && West == West::Side) return 2407;
if (East == East::Up && North == North::None && Power == 6 && South == South::None && West == West::None) return 2408;
if (East == East::Up && North == North::None && Power == 7 && South == South::Up && West == West::Up) return 2409;
if (East == East::Up && North == North::None && Power == 7 && South == South::Up && West == West::Side) return 2410;
if (East == East::Up && North == North::None && Power == 7 && South == South::Up && West == West::None) return 2411;
if (East == East::Up && North == North::None && Power == 7 && South == South::Side && West == West::Up) return 2412;
if (East == East::Up && North == North::None && Power == 7 && South == South::Side && West == West::Side) return 2413;
if (East == East::Up && North == North::None && Power == 7 && South == South::Side && West == West::None) return 2414;
if (East == East::Up && North == North::None && Power == 7 && South == South::None && West == West::Up) return 2415;
if (East == East::Up && North == North::None && Power == 7 && South == South::None && West == West::Side) return 2416;
if (East == East::Up && North == North::None && Power == 7 && South == South::None && West == West::None) return 2417;
if (East == East::Up && North == North::None && Power == 8 && South == South::Up && West == West::Up) return 2418;
if (East == East::Up && North == North::None && Power == 8 && South == South::Up && West == West::Side) return 2419;
if (East == East::Up && North == North::None && Power == 8 && South == South::Up && West == West::None) return 2420;
if (East == East::Up && North == North::None && Power == 8 && South == South::Side && West == West::Up) return 2421;
if (East == East::Up && North == North::None && Power == 8 && South == South::Side && West == West::Side) return 2422;
if (East == East::Up && North == North::None && Power == 8 && South == South::Side && West == West::None) return 2423;
if (East == East::Up && North == North::None && Power == 8 && South == South::None && West == West::Up) return 2424;
if (East == East::Up && North == North::None && Power == 8 && South == South::None && West == West::Side) return 2425;
if (East == East::Up && North == North::None && Power == 8 && South == South::None && West == West::None) return 2426;
if (East == East::Up && North == North::None && Power == 9 && South == South::Up && West == West::Up) return 2427;
if (East == East::Up && North == North::None && Power == 9 && South == South::Up && West == West::Side) return 2428;
if (East == East::Up && North == North::None && Power == 9 && South == South::Up && West == West::None) return 2429;
if (East == East::Up && North == North::None && Power == 9 && South == South::Side && West == West::Up) return 2430;
if (East == East::Up && North == North::None && Power == 9 && South == South::Side && West == West::Side) return 2431;
if (East == East::Up && North == North::None && Power == 9 && South == South::Side && West == West::None) return 2432;
if (East == East::Up && North == North::None && Power == 9 && South == South::None && West == West::Up) return 2433;
if (East == East::Up && North == North::None && Power == 9 && South == South::None && West == West::Side) return 2434;
if (East == East::Up && North == North::None && Power == 9 && South == South::None && West == West::None) return 2435;
if (East == East::Up && North == North::None && Power == 10 && South == South::Up && West == West::Up) return 2436;
if (East == East::Up && North == North::None && Power == 10 && South == South::Up && West == West::Side) return 2437;
if (East == East::Up && North == North::None && Power == 10 && South == South::Up && West == West::None) return 2438;
if (East == East::Up && North == North::None && Power == 10 && South == South::Side && West == West::Up) return 2439;
if (East == East::Up && North == North::None && Power == 10 && South == South::Side && West == West::Side) return 2440;
if (East == East::Up && North == North::None && Power == 10 && South == South::Side && West == West::None) return 2441;
if (East == East::Up && North == North::None && Power == 10 && South == South::None && West == West::Up) return 2442;
if (East == East::Up && North == North::None && Power == 10 && South == South::None && West == West::Side) return 2443;
if (East == East::Up && North == North::None && Power == 10 && South == South::None && West == West::None) return 2444;
if (East == East::Up && North == North::None && Power == 11 && South == South::Up && West == West::Up) return 2445;
if (East == East::Up && North == North::None && Power == 11 && South == South::Up && West == West::Side) return 2446;
if (East == East::Up && North == North::None && Power == 11 && South == South::Up && West == West::None) return 2447;
if (East == East::Up && North == North::None && Power == 11 && South == South::Side && West == West::Up) return 2448;
if (East == East::Up && North == North::None && Power == 11 && South == South::Side && West == West::Side) return 2449;
if (East == East::Up && North == North::None && Power == 11 && South == South::Side && West == West::None) return 2450;
if (East == East::Up && North == North::None && Power == 11 && South == South::None && West == West::Up) return 2451;
if (East == East::Up && North == North::None && Power == 11 && South == South::None && West == West::Side) return 2452;
if (East == East::Up && North == North::None && Power == 11 && South == South::None && West == West::None) return 2453;
if (East == East::Up && North == North::None && Power == 12 && South == South::Up && West == West::Up) return 2454;
if (East == East::Up && North == North::None && Power == 12 && South == South::Up && West == West::Side) return 2455;
if (East == East::Up && North == North::None && Power == 12 && South == South::Up && West == West::None) return 2456;
if (East == East::Up && North == North::None && Power == 12 && South == South::Side && West == West::Up) return 2457;
if (East == East::Up && North == North::None && Power == 12 && South == South::Side && West == West::Side) return 2458;
if (East == East::Up && North == North::None && Power == 12 && South == South::Side && West == West::None) return 2459;
if (East == East::Up && North == North::None && Power == 12 && South == South::None && West == West::Up) return 2460;
if (East == East::Up && North == North::None && Power == 12 && South == South::None && West == West::Side) return 2461;
if (East == East::Up && North == North::None && Power == 12 && South == South::None && West == West::None) return 2462;
if (East == East::Up && North == North::None && Power == 13 && South == South::Up && West == West::Up) return 2463;
if (East == East::Up && North == North::None && Power == 13 && South == South::Up && West == West::Side) return 2464;
if (East == East::Up && North == North::None && Power == 13 && South == South::Up && West == West::None) return 2465;
if (East == East::Up && North == North::None && Power == 13 && South == South::Side && West == West::Up) return 2466;
if (East == East::Up && North == North::None && Power == 13 && South == South::Side && West == West::Side) return 2467;
if (East == East::Up && North == North::None && Power == 13 && South == South::Side && West == West::None) return 2468;
if (East == East::Up && North == North::None && Power == 13 && South == South::None && West == West::Up) return 2469;
if (East == East::Up && North == North::None && Power == 13 && South == South::None && West == West::Side) return 2470;
if (East == East::Up && North == North::None && Power == 13 && South == South::None && West == West::None) return 2471;
if (East == East::Up && North == North::None && Power == 14 && South == South::Up && West == West::Up) return 2472;
if (East == East::Up && North == North::None && Power == 14 && South == South::Up && West == West::Side) return 2473;
if (East == East::Up && North == North::None && Power == 14 && South == South::Up && West == West::None) return 2474;
if (East == East::Up && North == North::None && Power == 14 && South == South::Side && West == West::Up) return 2475;
if (East == East::Up && North == North::None && Power == 14 && South == South::Side && West == West::Side) return 2476;
if (East == East::Up && North == North::None && Power == 14 && South == South::Side && West == West::None) return 2477;
if (East == East::Up && North == North::None && Power == 14 && South == South::None && West == West::Up) return 2478;
if (East == East::Up && North == North::None && Power == 14 && South == South::None && West == West::Side) return 2479;
if (East == East::Up && North == North::None && Power == 14 && South == South::None && West == West::None) return 2480;
if (East == East::Up && North == North::None && Power == 15 && South == South::Up && West == West::Up) return 2481;
if (East == East::Up && North == North::None && Power == 15 && South == South::Up && West == West::Side) return 2482;
if (East == East::Up && North == North::None && Power == 15 && South == South::Up && West == West::None) return 2483;
if (East == East::Up && North == North::None && Power == 15 && South == South::Side && West == West::Up) return 2484;
if (East == East::Up && North == North::None && Power == 15 && South == South::Side && West == West::Side) return 2485;
if (East == East::Up && North == North::None && Power == 15 && South == South::Side && West == West::None) return 2486;
if (East == East::Up && North == North::None && Power == 15 && South == South::None && West == West::Up) return 2487;
if (East == East::Up && North == North::None && Power == 15 && South == South::None && West == West::Side) return 2488;
if (East == East::Up && North == North::None && Power == 15 && South == South::None && West == West::None) return 2489;
if (East == East::Side && North == North::Up && Power == 0 && South == South::Up && West == West::Up) return 2490;
if (East == East::Side && North == North::Up && Power == 0 && South == South::Up && West == West::Side) return 2491;
if (East == East::Side && North == North::Up && Power == 0 && South == South::Up && West == West::None) return 2492;
if (East == East::Side && North == North::Up && Power == 0 && South == South::Side && West == West::Up) return 2493;
if (East == East::Side && North == North::Up && Power == 0 && South == South::Side && West == West::Side) return 2494;
if (East == East::Side && North == North::Up && Power == 0 && South == South::Side && West == West::None) return 2495;
if (East == East::Side && North == North::Up && Power == 0 && South == South::None && West == West::Up) return 2496;
if (East == East::Side && North == North::Up && Power == 0 && South == South::None && West == West::Side) return 2497;
if (East == East::Side && North == North::Up && Power == 0 && South == South::None && West == West::None) return 2498;
if (East == East::Side && North == North::Up && Power == 1 && South == South::Up && West == West::Up) return 2499;
if (East == East::Side && North == North::Up && Power == 1 && South == South::Up && West == West::Side) return 2500;
if (East == East::Side && North == North::Up && Power == 1 && South == South::Up && West == West::None) return 2501;
if (East == East::Side && North == North::Up && Power == 1 && South == South::Side && West == West::Up) return 2502;
if (East == East::Side && North == North::Up && Power == 1 && South == South::Side && West == West::Side) return 2503;
if (East == East::Side && North == North::Up && Power == 1 && South == South::Side && West == West::None) return 2504;
if (East == East::Side && North == North::Up && Power == 1 && South == South::None && West == West::Up) return 2505;
if (East == East::Side && North == North::Up && Power == 1 && South == South::None && West == West::Side) return 2506;
if (East == East::Side && North == North::Up && Power == 1 && South == South::None && West == West::None) return 2507;
if (East == East::Side && North == North::Up && Power == 2 && South == South::Up && West == West::Up) return 2508;
if (East == East::Side && North == North::Up && Power == 2 && South == South::Up && West == West::Side) return 2509;
if (East == East::Side && North == North::Up && Power == 2 && South == South::Up && West == West::None) return 2510;
if (East == East::Side && North == North::Up && Power == 2 && South == South::Side && West == West::Up) return 2511;
if (East == East::Side && North == North::Up && Power == 2 && South == South::Side && West == West::Side) return 2512;
if (East == East::Side && North == North::Up && Power == 2 && South == South::Side && West == West::None) return 2513;
if (East == East::Side && North == North::Up && Power == 2 && South == South::None && West == West::Up) return 2514;
if (East == East::Side && North == North::Up && Power == 2 && South == South::None && West == West::Side) return 2515;
if (East == East::Side && North == North::Up && Power == 2 && South == South::None && West == West::None) return 2516;
if (East == East::Side && North == North::Up && Power == 3 && South == South::Up && West == West::Up) return 2517;
if (East == East::Side && North == North::Up && Power == 3 && South == South::Up && West == West::Side) return 2518;
if (East == East::Side && North == North::Up && Power == 3 && South == South::Up && West == West::None) return 2519;
if (East == East::Side && North == North::Up && Power == 3 && South == South::Side && West == West::Up) return 2520;
if (East == East::Side && North == North::Up && Power == 3 && South == South::Side && West == West::Side) return 2521;
if (East == East::Side && North == North::Up && Power == 3 && South == South::Side && West == West::None) return 2522;
if (East == East::Side && North == North::Up && Power == 3 && South == South::None && West == West::Up) return 2523;
if (East == East::Side && North == North::Up && Power == 3 && South == South::None && West == West::Side) return 2524;
if (East == East::Side && North == North::Up && Power == 3 && South == South::None && West == West::None) return 2525;
if (East == East::Side && North == North::Up && Power == 4 && South == South::Up && West == West::Up) return 2526;
if (East == East::Side && North == North::Up && Power == 4 && South == South::Up && West == West::Side) return 2527;
if (East == East::Side && North == North::Up && Power == 4 && South == South::Up && West == West::None) return 2528;
if (East == East::Side && North == North::Up && Power == 4 && South == South::Side && West == West::Up) return 2529;
if (East == East::Side && North == North::Up && Power == 4 && South == South::Side && West == West::Side) return 2530;
if (East == East::Side && North == North::Up && Power == 4 && South == South::Side && West == West::None) return 2531;
if (East == East::Side && North == North::Up && Power == 4 && South == South::None && West == West::Up) return 2532;
if (East == East::Side && North == North::Up && Power == 4 && South == South::None && West == West::Side) return 2533;
if (East == East::Side && North == North::Up && Power == 4 && South == South::None && West == West::None) return 2534;
if (East == East::Side && North == North::Up && Power == 5 && South == South::Up && West == West::Up) return 2535;
if (East == East::Side && North == North::Up && Power == 5 && South == South::Up && West == West::Side) return 2536;
if (East == East::Side && North == North::Up && Power == 5 && South == South::Up && West == West::None) return 2537;
if (East == East::Side && North == North::Up && Power == 5 && South == South::Side && West == West::Up) return 2538;
if (East == East::Side && North == North::Up && Power == 5 && South == South::Side && West == West::Side) return 2539;
if (East == East::Side && North == North::Up && Power == 5 && South == South::Side && West == West::None) return 2540;
if (East == East::Side && North == North::Up && Power == 5 && South == South::None && West == West::Up) return 2541;
if (East == East::Side && North == North::Up && Power == 5 && South == South::None && West == West::Side) return 2542;
if (East == East::Side && North == North::Up && Power == 5 && South == South::None && West == West::None) return 2543;
if (East == East::Side && North == North::Up && Power == 6 && South == South::Up && West == West::Up) return 2544;
if (East == East::Side && North == North::Up && Power == 6 && South == South::Up && West == West::Side) return 2545;
if (East == East::Side && North == North::Up && Power == 6 && South == South::Up && West == West::None) return 2546;
if (East == East::Side && North == North::Up && Power == 6 && South == South::Side && West == West::Up) return 2547;
if (East == East::Side && North == North::Up && Power == 6 && South == South::Side && West == West::Side) return 2548;
if (East == East::Side && North == North::Up && Power == 6 && South == South::Side && West == West::None) return 2549;
if (East == East::Side && North == North::Up && Power == 6 && South == South::None && West == West::Up) return 2550;
if (East == East::Side && North == North::Up && Power == 6 && South == South::None && West == West::Side) return 2551;
if (East == East::Side && North == North::Up && Power == 6 && South == South::None && West == West::None) return 2552;
if (East == East::Side && North == North::Up && Power == 7 && South == South::Up && West == West::Up) return 2553;
if (East == East::Side && North == North::Up && Power == 7 && South == South::Up && West == West::Side) return 2554;
if (East == East::Side && North == North::Up && Power == 7 && South == South::Up && West == West::None) return 2555;
if (East == East::Side && North == North::Up && Power == 7 && South == South::Side && West == West::Up) return 2556;
if (East == East::Side && North == North::Up && Power == 7 && South == South::Side && West == West::Side) return 2557;
if (East == East::Side && North == North::Up && Power == 7 && South == South::Side && West == West::None) return 2558;
if (East == East::Side && North == North::Up && Power == 7 && South == South::None && West == West::Up) return 2559;
if (East == East::Side && North == North::Up && Power == 7 && South == South::None && West == West::Side) return 2560;
if (East == East::Side && North == North::Up && Power == 7 && South == South::None && West == West::None) return 2561;
if (East == East::Side && North == North::Up && Power == 8 && South == South::Up && West == West::Up) return 2562;
if (East == East::Side && North == North::Up && Power == 8 && South == South::Up && West == West::Side) return 2563;
if (East == East::Side && North == North::Up && Power == 8 && South == South::Up && West == West::None) return 2564;
if (East == East::Side && North == North::Up && Power == 8 && South == South::Side && West == West::Up) return 2565;
if (East == East::Side && North == North::Up && Power == 8 && South == South::Side && West == West::Side) return 2566;
if (East == East::Side && North == North::Up && Power == 8 && South == South::Side && West == West::None) return 2567;
if (East == East::Side && North == North::Up && Power == 8 && South == South::None && West == West::Up) return 2568;
if (East == East::Side && North == North::Up && Power == 8 && South == South::None && West == West::Side) return 2569;
if (East == East::Side && North == North::Up && Power == 8 && South == South::None && West == West::None) return 2570;
if (East == East::Side && North == North::Up && Power == 9 && South == South::Up && West == West::Up) return 2571;
if (East == East::Side && North == North::Up && Power == 9 && South == South::Up && West == West::Side) return 2572;
if (East == East::Side && North == North::Up && Power == 9 && South == South::Up && West == West::None) return 2573;
if (East == East::Side && North == North::Up && Power == 9 && South == South::Side && West == West::Up) return 2574;
if (East == East::Side && North == North::Up && Power == 9 && South == South::Side && West == West::Side) return 2575;
if (East == East::Side && North == North::Up && Power == 9 && South == South::Side && West == West::None) return 2576;
if (East == East::Side && North == North::Up && Power == 9 && South == South::None && West == West::Up) return 2577;
if (East == East::Side && North == North::Up && Power == 9 && South == South::None && West == West::Side) return 2578;
if (East == East::Side && North == North::Up && Power == 9 && South == South::None && West == West::None) return 2579;
if (East == East::Side && North == North::Up && Power == 10 && South == South::Up && West == West::Up) return 2580;
if (East == East::Side && North == North::Up && Power == 10 && South == South::Up && West == West::Side) return 2581;
if (East == East::Side && North == North::Up && Power == 10 && South == South::Up && West == West::None) return 2582;
if (East == East::Side && North == North::Up && Power == 10 && South == South::Side && West == West::Up) return 2583;
if (East == East::Side && North == North::Up && Power == 10 && South == South::Side && West == West::Side) return 2584;
if (East == East::Side && North == North::Up && Power == 10 && South == South::Side && West == West::None) return 2585;
if (East == East::Side && North == North::Up && Power == 10 && South == South::None && West == West::Up) return 2586;
if (East == East::Side && North == North::Up && Power == 10 && South == South::None && West == West::Side) return 2587;
if (East == East::Side && North == North::Up && Power == 10 && South == South::None && West == West::None) return 2588;
if (East == East::Side && North == North::Up && Power == 11 && South == South::Up && West == West::Up) return 2589;
if (East == East::Side && North == North::Up && Power == 11 && South == South::Up && West == West::Side) return 2590;
if (East == East::Side && North == North::Up && Power == 11 && South == South::Up && West == West::None) return 2591;
if (East == East::Side && North == North::Up && Power == 11 && South == South::Side && West == West::Up) return 2592;
if (East == East::Side && North == North::Up && Power == 11 && South == South::Side && West == West::Side) return 2593;
if (East == East::Side && North == North::Up && Power == 11 && South == South::Side && West == West::None) return 2594;
if (East == East::Side && North == North::Up && Power == 11 && South == South::None && West == West::Up) return 2595;
if (East == East::Side && North == North::Up && Power == 11 && South == South::None && West == West::Side) return 2596;
if (East == East::Side && North == North::Up && Power == 11 && South == South::None && West == West::None) return 2597;
if (East == East::Side && North == North::Up && Power == 12 && South == South::Up && West == West::Up) return 2598;
if (East == East::Side && North == North::Up && Power == 12 && South == South::Up && West == West::Side) return 2599;
if (East == East::Side && North == North::Up && Power == 12 && South == South::Up && West == West::None) return 2600;
if (East == East::Side && North == North::Up && Power == 12 && South == South::Side && West == West::Up) return 2601;
if (East == East::Side && North == North::Up && Power == 12 && South == South::Side && West == West::Side) return 2602;
if (East == East::Side && North == North::Up && Power == 12 && South == South::Side && West == West::None) return 2603;
if (East == East::Side && North == North::Up && Power == 12 && South == South::None && West == West::Up) return 2604;
if (East == East::Side && North == North::Up && Power == 12 && South == South::None && West == West::Side) return 2605;
if (East == East::Side && North == North::Up && Power == 12 && South == South::None && West == West::None) return 2606;
if (East == East::Side && North == North::Up && Power == 13 && South == South::Up && West == West::Up) return 2607;
if (East == East::Side && North == North::Up && Power == 13 && South == South::Up && West == West::Side) return 2608;
if (East == East::Side && North == North::Up && Power == 13 && South == South::Up && West == West::None) return 2609;
if (East == East::Side && North == North::Up && Power == 13 && South == South::Side && West == West::Up) return 2610;
if (East == East::Side && North == North::Up && Power == 13 && South == South::Side && West == West::Side) return 2611;
if (East == East::Side && North == North::Up && Power == 13 && South == South::Side && West == West::None) return 2612;
if (East == East::Side && North == North::Up && Power == 13 && South == South::None && West == West::Up) return 2613;
if (East == East::Side && North == North::Up && Power == 13 && South == South::None && West == West::Side) return 2614;
if (East == East::Side && North == North::Up && Power == 13 && South == South::None && West == West::None) return 2615;
if (East == East::Side && North == North::Up && Power == 14 && South == South::Up && West == West::Up) return 2616;
if (East == East::Side && North == North::Up && Power == 14 && South == South::Up && West == West::Side) return 2617;
if (East == East::Side && North == North::Up && Power == 14 && South == South::Up && West == West::None) return 2618;
if (East == East::Side && North == North::Up && Power == 14 && South == South::Side && West == West::Up) return 2619;
if (East == East::Side && North == North::Up && Power == 14 && South == South::Side && West == West::Side) return 2620;
if (East == East::Side && North == North::Up && Power == 14 && South == South::Side && West == West::None) return 2621;
if (East == East::Side && North == North::Up && Power == 14 && South == South::None && West == West::Up) return 2622;
if (East == East::Side && North == North::Up && Power == 14 && South == South::None && West == West::Side) return 2623;
if (East == East::Side && North == North::Up && Power == 14 && South == South::None && West == West::None) return 2624;
if (East == East::Side && North == North::Up && Power == 15 && South == South::Up && West == West::Up) return 2625;
if (East == East::Side && North == North::Up && Power == 15 && South == South::Up && West == West::Side) return 2626;
if (East == East::Side && North == North::Up && Power == 15 && South == South::Up && West == West::None) return 2627;
if (East == East::Side && North == North::Up && Power == 15 && South == South::Side && West == West::Up) return 2628;
if (East == East::Side && North == North::Up && Power == 15 && South == South::Side && West == West::Side) return 2629;
if (East == East::Side && North == North::Up && Power == 15 && South == South::Side && West == West::None) return 2630;
if (East == East::Side && North == North::Up && Power == 15 && South == South::None && West == West::Up) return 2631;
if (East == East::Side && North == North::Up && Power == 15 && South == South::None && West == West::Side) return 2632;
if (East == East::Side && North == North::Up && Power == 15 && South == South::None && West == West::None) return 2633;
if (East == East::Side && North == North::Side && Power == 0 && South == South::Up && West == West::Up) return 2634;
if (East == East::Side && North == North::Side && Power == 0 && South == South::Up && West == West::Side) return 2635;
if (East == East::Side && North == North::Side && Power == 0 && South == South::Up && West == West::None) return 2636;
if (East == East::Side && North == North::Side && Power == 0 && South == South::Side && West == West::Up) return 2637;
if (East == East::Side && North == North::Side && Power == 0 && South == South::Side && West == West::Side) return 2638;
if (East == East::Side && North == North::Side && Power == 0 && South == South::Side && West == West::None) return 2639;
if (East == East::Side && North == North::Side && Power == 0 && South == South::None && West == West::Up) return 2640;
if (East == East::Side && North == North::Side && Power == 0 && South == South::None && West == West::Side) return 2641;
if (East == East::Side && North == North::Side && Power == 0 && South == South::None && West == West::None) return 2642;
if (East == East::Side && North == North::Side && Power == 1 && South == South::Up && West == West::Up) return 2643;
if (East == East::Side && North == North::Side && Power == 1 && South == South::Up && West == West::Side) return 2644;
if (East == East::Side && North == North::Side && Power == 1 && South == South::Up && West == West::None) return 2645;
if (East == East::Side && North == North::Side && Power == 1 && South == South::Side && West == West::Up) return 2646;
if (East == East::Side && North == North::Side && Power == 1 && South == South::Side && West == West::Side) return 2647;
if (East == East::Side && North == North::Side && Power == 1 && South == South::Side && West == West::None) return 2648;
if (East == East::Side && North == North::Side && Power == 1 && South == South::None && West == West::Up) return 2649;
if (East == East::Side && North == North::Side && Power == 1 && South == South::None && West == West::Side) return 2650;
if (East == East::Side && North == North::Side && Power == 1 && South == South::None && West == West::None) return 2651;
if (East == East::Side && North == North::Side && Power == 2 && South == South::Up && West == West::Up) return 2652;
if (East == East::Side && North == North::Side && Power == 2 && South == South::Up && West == West::Side) return 2653;
if (East == East::Side && North == North::Side && Power == 2 && South == South::Up && West == West::None) return 2654;
if (East == East::Side && North == North::Side && Power == 2 && South == South::Side && West == West::Up) return 2655;
if (East == East::Side && North == North::Side && Power == 2 && South == South::Side && West == West::Side) return 2656;
if (East == East::Side && North == North::Side && Power == 2 && South == South::Side && West == West::None) return 2657;
if (East == East::Side && North == North::Side && Power == 2 && South == South::None && West == West::Up) return 2658;
if (East == East::Side && North == North::Side && Power == 2 && South == South::None && West == West::Side) return 2659;
if (East == East::Side && North == North::Side && Power == 2 && South == South::None && West == West::None) return 2660;
if (East == East::Side && North == North::Side && Power == 3 && South == South::Up && West == West::Up) return 2661;
if (East == East::Side && North == North::Side && Power == 3 && South == South::Up && West == West::Side) return 2662;
if (East == East::Side && North == North::Side && Power == 3 && South == South::Up && West == West::None) return 2663;
if (East == East::Side && North == North::Side && Power == 3 && South == South::Side && West == West::Up) return 2664;
if (East == East::Side && North == North::Side && Power == 3 && South == South::Side && West == West::Side) return 2665;
if (East == East::Side && North == North::Side && Power == 3 && South == South::Side && West == West::None) return 2666;
if (East == East::Side && North == North::Side && Power == 3 && South == South::None && West == West::Up) return 2667;
if (East == East::Side && North == North::Side && Power == 3 && South == South::None && West == West::Side) return 2668;
if (East == East::Side && North == North::Side && Power == 3 && South == South::None && West == West::None) return 2669;
if (East == East::Side && North == North::Side && Power == 4 && South == South::Up && West == West::Up) return 2670;
if (East == East::Side && North == North::Side && Power == 4 && South == South::Up && West == West::Side) return 2671;
if (East == East::Side && North == North::Side && Power == 4 && South == South::Up && West == West::None) return 2672;
if (East == East::Side && North == North::Side && Power == 4 && South == South::Side && West == West::Up) return 2673;
if (East == East::Side && North == North::Side && Power == 4 && South == South::Side && West == West::Side) return 2674;
if (East == East::Side && North == North::Side && Power == 4 && South == South::Side && West == West::None) return 2675;
if (East == East::Side && North == North::Side && Power == 4 && South == South::None && West == West::Up) return 2676;
if (East == East::Side && North == North::Side && Power == 4 && South == South::None && West == West::Side) return 2677;
if (East == East::Side && North == North::Side && Power == 4 && South == South::None && West == West::None) return 2678;
if (East == East::Side && North == North::Side && Power == 5 && South == South::Up && West == West::Up) return 2679;
if (East == East::Side && North == North::Side && Power == 5 && South == South::Up && West == West::Side) return 2680;
if (East == East::Side && North == North::Side && Power == 5 && South == South::Up && West == West::None) return 2681;
if (East == East::Side && North == North::Side && Power == 5 && South == South::Side && West == West::Up) return 2682;
if (East == East::Side && North == North::Side && Power == 5 && South == South::Side && West == West::Side) return 2683;
if (East == East::Side && North == North::Side && Power == 5 && South == South::Side && West == West::None) return 2684;
if (East == East::Side && North == North::Side && Power == 5 && South == South::None && West == West::Up) return 2685;
if (East == East::Side && North == North::Side && Power == 5 && South == South::None && West == West::Side) return 2686;
if (East == East::Side && North == North::Side && Power == 5 && South == South::None && West == West::None) return 2687;
if (East == East::Side && North == North::Side && Power == 6 && South == South::Up && West == West::Up) return 2688;
if (East == East::Side && North == North::Side && Power == 6 && South == South::Up && West == West::Side) return 2689;
if (East == East::Side && North == North::Side && Power == 6 && South == South::Up && West == West::None) return 2690;
if (East == East::Side && North == North::Side && Power == 6 && South == South::Side && West == West::Up) return 2691;
if (East == East::Side && North == North::Side && Power == 6 && South == South::Side && West == West::Side) return 2692;
if (East == East::Side && North == North::Side && Power == 6 && South == South::Side && West == West::None) return 2693;
if (East == East::Side && North == North::Side && Power == 6 && South == South::None && West == West::Up) return 2694;
if (East == East::Side && North == North::Side && Power == 6 && South == South::None && West == West::Side) return 2695;
if (East == East::Side && North == North::Side && Power == 6 && South == South::None && West == West::None) return 2696;
if (East == East::Side && North == North::Side && Power == 7 && South == South::Up && West == West::Up) return 2697;
if (East == East::Side && North == North::Side && Power == 7 && South == South::Up && West == West::Side) return 2698;
if (East == East::Side && North == North::Side && Power == 7 && South == South::Up && West == West::None) return 2699;
if (East == East::Side && North == North::Side && Power == 7 && South == South::Side && West == West::Up) return 2700;
if (East == East::Side && North == North::Side && Power == 7 && South == South::Side && West == West::Side) return 2701;
if (East == East::Side && North == North::Side && Power == 7 && South == South::Side && West == West::None) return 2702;
if (East == East::Side && North == North::Side && Power == 7 && South == South::None && West == West::Up) return 2703;
if (East == East::Side && North == North::Side && Power == 7 && South == South::None && West == West::Side) return 2704;
if (East == East::Side && North == North::Side && Power == 7 && South == South::None && West == West::None) return 2705;
if (East == East::Side && North == North::Side && Power == 8 && South == South::Up && West == West::Up) return 2706;
if (East == East::Side && North == North::Side && Power == 8 && South == South::Up && West == West::Side) return 2707;
if (East == East::Side && North == North::Side && Power == 8 && South == South::Up && West == West::None) return 2708;
if (East == East::Side && North == North::Side && Power == 8 && South == South::Side && West == West::Up) return 2709;
if (East == East::Side && North == North::Side && Power == 8 && South == South::Side && West == West::Side) return 2710;
if (East == East::Side && North == North::Side && Power == 8 && South == South::Side && West == West::None) return 2711;
if (East == East::Side && North == North::Side && Power == 8 && South == South::None && West == West::Up) return 2712;
if (East == East::Side && North == North::Side && Power == 8 && South == South::None && West == West::Side) return 2713;
if (East == East::Side && North == North::Side && Power == 8 && South == South::None && West == West::None) return 2714;
if (East == East::Side && North == North::Side && Power == 9 && South == South::Up && West == West::Up) return 2715;
if (East == East::Side && North == North::Side && Power == 9 && South == South::Up && West == West::Side) return 2716;
if (East == East::Side && North == North::Side && Power == 9 && South == South::Up && West == West::None) return 2717;
if (East == East::Side && North == North::Side && Power == 9 && South == South::Side && West == West::Up) return 2718;
if (East == East::Side && North == North::Side && Power == 9 && South == South::Side && West == West::Side) return 2719;
if (East == East::Side && North == North::Side && Power == 9 && South == South::Side && West == West::None) return 2720;
if (East == East::Side && North == North::Side && Power == 9 && South == South::None && West == West::Up) return 2721;
if (East == East::Side && North == North::Side && Power == 9 && South == South::None && West == West::Side) return 2722;
if (East == East::Side && North == North::Side && Power == 9 && South == South::None && West == West::None) return 2723;
if (East == East::Side && North == North::Side && Power == 10 && South == South::Up && West == West::Up) return 2724;
if (East == East::Side && North == North::Side && Power == 10 && South == South::Up && West == West::Side) return 2725;
if (East == East::Side && North == North::Side && Power == 10 && South == South::Up && West == West::None) return 2726;
if (East == East::Side && North == North::Side && Power == 10 && South == South::Side && West == West::Up) return 2727;
if (East == East::Side && North == North::Side && Power == 10 && South == South::Side && West == West::Side) return 2728;
if (East == East::Side && North == North::Side && Power == 10 && South == South::Side && West == West::None) return 2729;
if (East == East::Side && North == North::Side && Power == 10 && South == South::None && West == West::Up) return 2730;
if (East == East::Side && North == North::Side && Power == 10 && South == South::None && West == West::Side) return 2731;
if (East == East::Side && North == North::Side && Power == 10 && South == South::None && West == West::None) return 2732;
if (East == East::Side && North == North::Side && Power == 11 && South == South::Up && West == West::Up) return 2733;
if (East == East::Side && North == North::Side && Power == 11 && South == South::Up && West == West::Side) return 2734;
if (East == East::Side && North == North::Side && Power == 11 && South == South::Up && West == West::None) return 2735;
if (East == East::Side && North == North::Side && Power == 11 && South == South::Side && West == West::Up) return 2736;
if (East == East::Side && North == North::Side && Power == 11 && South == South::Side && West == West::Side) return 2737;
if (East == East::Side && North == North::Side && Power == 11 && South == South::Side && West == West::None) return 2738;
if (East == East::Side && North == North::Side && Power == 11 && South == South::None && West == West::Up) return 2739;
if (East == East::Side && North == North::Side && Power == 11 && South == South::None && West == West::Side) return 2740;
if (East == East::Side && North == North::Side && Power == 11 && South == South::None && West == West::None) return 2741;
if (East == East::Side && North == North::Side && Power == 12 && South == South::Up && West == West::Up) return 2742;
if (East == East::Side && North == North::Side && Power == 12 && South == South::Up && West == West::Side) return 2743;
if (East == East::Side && North == North::Side && Power == 12 && South == South::Up && West == West::None) return 2744;
if (East == East::Side && North == North::Side && Power == 12 && South == South::Side && West == West::Up) return 2745;
if (East == East::Side && North == North::Side && Power == 12 && South == South::Side && West == West::Side) return 2746;
if (East == East::Side && North == North::Side && Power == 12 && South == South::Side && West == West::None) return 2747;
if (East == East::Side && North == North::Side && Power == 12 && South == South::None && West == West::Up) return 2748;
if (East == East::Side && North == North::Side && Power == 12 && South == South::None && West == West::Side) return 2749;
if (East == East::Side && North == North::Side && Power == 12 && South == South::None && West == West::None) return 2750;
if (East == East::Side && North == North::Side && Power == 13 && South == South::Up && West == West::Up) return 2751;
if (East == East::Side && North == North::Side && Power == 13 && South == South::Up && West == West::Side) return 2752;
if (East == East::Side && North == North::Side && Power == 13 && South == South::Up && West == West::None) return 2753;
if (East == East::Side && North == North::Side && Power == 13 && South == South::Side && West == West::Up) return 2754;
if (East == East::Side && North == North::Side && Power == 13 && South == South::Side && West == West::Side) return 2755;
if (East == East::Side && North == North::Side && Power == 13 && South == South::Side && West == West::None) return 2756;
if (East == East::Side && North == North::Side && Power == 13 && South == South::None && West == West::Up) return 2757;
if (East == East::Side && North == North::Side && Power == 13 && South == South::None && West == West::Side) return 2758;
if (East == East::Side && North == North::Side && Power == 13 && South == South::None && West == West::None) return 2759;
if (East == East::Side && North == North::Side && Power == 14 && South == South::Up && West == West::Up) return 2760;
if (East == East::Side && North == North::Side && Power == 14 && South == South::Up && West == West::Side) return 2761;
if (East == East::Side && North == North::Side && Power == 14 && South == South::Up && West == West::None) return 2762;
if (East == East::Side && North == North::Side && Power == 14 && South == South::Side && West == West::Up) return 2763;
if (East == East::Side && North == North::Side && Power == 14 && South == South::Side && West == West::Side) return 2764;
if (East == East::Side && North == North::Side && Power == 14 && South == South::Side && West == West::None) return 2765;
if (East == East::Side && North == North::Side && Power == 14 && South == South::None && West == West::Up) return 2766;
if (East == East::Side && North == North::Side && Power == 14 && South == South::None && West == West::Side) return 2767;
if (East == East::Side && North == North::Side && Power == 14 && South == South::None && West == West::None) return 2768;
if (East == East::Side && North == North::Side && Power == 15 && South == South::Up && West == West::Up) return 2769;
if (East == East::Side && North == North::Side && Power == 15 && South == South::Up && West == West::Side) return 2770;
if (East == East::Side && North == North::Side && Power == 15 && South == South::Up && West == West::None) return 2771;
if (East == East::Side && North == North::Side && Power == 15 && South == South::Side && West == West::Up) return 2772;
if (East == East::Side && North == North::Side && Power == 15 && South == South::Side && West == West::Side) return 2773;
if (East == East::Side && North == North::Side && Power == 15 && South == South::Side && West == West::None) return 2774;
if (East == East::Side && North == North::Side && Power == 15 && South == South::None && West == West::Up) return 2775;
if (East == East::Side && North == North::Side && Power == 15 && South == South::None && West == West::Side) return 2776;
if (East == East::Side && North == North::Side && Power == 15 && South == South::None && West == West::None) return 2777;
if (East == East::Side && North == North::None && Power == 0 && South == South::Up && West == West::Up) return 2778;
if (East == East::Side && North == North::None && Power == 0 && South == South::Up && West == West::Side) return 2779;
if (East == East::Side && North == North::None && Power == 0 && South == South::Up && West == West::None) return 2780;
if (East == East::Side && North == North::None && Power == 0 && South == South::Side && West == West::Up) return 2781;
if (East == East::Side && North == North::None && Power == 0 && South == South::Side && West == West::Side) return 2782;
if (East == East::Side && North == North::None && Power == 0 && South == South::Side && West == West::None) return 2783;
if (East == East::Side && North == North::None && Power == 0 && South == South::None && West == West::Up) return 2784;
if (East == East::Side && North == North::None && Power == 0 && South == South::None && West == West::Side) return 2785;
if (East == East::Side && North == North::None && Power == 0 && South == South::None && West == West::None) return 2786;
if (East == East::Side && North == North::None && Power == 1 && South == South::Up && West == West::Up) return 2787;
if (East == East::Side && North == North::None && Power == 1 && South == South::Up && West == West::Side) return 2788;
if (East == East::Side && North == North::None && Power == 1 && South == South::Up && West == West::None) return 2789;
if (East == East::Side && North == North::None && Power == 1 && South == South::Side && West == West::Up) return 2790;
if (East == East::Side && North == North::None && Power == 1 && South == South::Side && West == West::Side) return 2791;
if (East == East::Side && North == North::None && Power == 1 && South == South::Side && West == West::None) return 2792;
if (East == East::Side && North == North::None && Power == 1 && South == South::None && West == West::Up) return 2793;
if (East == East::Side && North == North::None && Power == 1 && South == South::None && West == West::Side) return 2794;
if (East == East::Side && North == North::None && Power == 1 && South == South::None && West == West::None) return 2795;
if (East == East::Side && North == North::None && Power == 2 && South == South::Up && West == West::Up) return 2796;
if (East == East::Side && North == North::None && Power == 2 && South == South::Up && West == West::Side) return 2797;
if (East == East::Side && North == North::None && Power == 2 && South == South::Up && West == West::None) return 2798;
if (East == East::Side && North == North::None && Power == 2 && South == South::Side && West == West::Up) return 2799;
if (East == East::Side && North == North::None && Power == 2 && South == South::Side && West == West::Side) return 2800;
if (East == East::Side && North == North::None && Power == 2 && South == South::Side && West == West::None) return 2801;
if (East == East::Side && North == North::None && Power == 2 && South == South::None && West == West::Up) return 2802;
if (East == East::Side && North == North::None && Power == 2 && South == South::None && West == West::Side) return 2803;
if (East == East::Side && North == North::None && Power == 2 && South == South::None && West == West::None) return 2804;
if (East == East::Side && North == North::None && Power == 3 && South == South::Up && West == West::Up) return 2805;
if (East == East::Side && North == North::None && Power == 3 && South == South::Up && West == West::Side) return 2806;
if (East == East::Side && North == North::None && Power == 3 && South == South::Up && West == West::None) return 2807;
if (East == East::Side && North == North::None && Power == 3 && South == South::Side && West == West::Up) return 2808;
if (East == East::Side && North == North::None && Power == 3 && South == South::Side && West == West::Side) return 2809;
if (East == East::Side && North == North::None && Power == 3 && South == South::Side && West == West::None) return 2810;
if (East == East::Side && North == North::None && Power == 3 && South == South::None && West == West::Up) return 2811;
if (East == East::Side && North == North::None && Power == 3 && South == South::None && West == West::Side) return 2812;
if (East == East::Side && North == North::None && Power == 3 && South == South::None && West == West::None) return 2813;
if (East == East::Side && North == North::None && Power == 4 && South == South::Up && West == West::Up) return 2814;
if (East == East::Side && North == North::None && Power == 4 && South == South::Up && West == West::Side) return 2815;
if (East == East::Side && North == North::None && Power == 4 && South == South::Up && West == West::None) return 2816;
if (East == East::Side && North == North::None && Power == 4 && South == South::Side && West == West::Up) return 2817;
if (East == East::Side && North == North::None && Power == 4 && South == South::Side && West == West::Side) return 2818;
if (East == East::Side && North == North::None && Power == 4 && South == South::Side && West == West::None) return 2819;
if (East == East::Side && North == North::None && Power == 4 && South == South::None && West == West::Up) return 2820;
if (East == East::Side && North == North::None && Power == 4 && South == South::None && West == West::Side) return 2821;
if (East == East::Side && North == North::None && Power == 4 && South == South::None && West == West::None) return 2822;
if (East == East::Side && North == North::None && Power == 5 && South == South::Up && West == West::Up) return 2823;
if (East == East::Side && North == North::None && Power == 5 && South == South::Up && West == West::Side) return 2824;
if (East == East::Side && North == North::None && Power == 5 && South == South::Up && West == West::None) return 2825;
if (East == East::Side && North == North::None && Power == 5 && South == South::Side && West == West::Up) return 2826;
if (East == East::Side && North == North::None && Power == 5 && South == South::Side && West == West::Side) return 2827;
if (East == East::Side && North == North::None && Power == 5 && South == South::Side && West == West::None) return 2828;
if (East == East::Side && North == North::None && Power == 5 && South == South::None && West == West::Up) return 2829;
if (East == East::Side && North == North::None && Power == 5 && South == South::None && West == West::Side) return 2830;
if (East == East::Side && North == North::None && Power == 5 && South == South::None && West == West::None) return 2831;
if (East == East::Side && North == North::None && Power == 6 && South == South::Up && West == West::Up) return 2832;
if (East == East::Side && North == North::None && Power == 6 && South == South::Up && West == West::Side) return 2833;
if (East == East::Side && North == North::None && Power == 6 && South == South::Up && West == West::None) return 2834;
if (East == East::Side && North == North::None && Power == 6 && South == South::Side && West == West::Up) return 2835;
if (East == East::Side && North == North::None && Power == 6 && South == South::Side && West == West::Side) return 2836;
if (East == East::Side && North == North::None && Power == 6 && South == South::Side && West == West::None) return 2837;
if (East == East::Side && North == North::None && Power == 6 && South == South::None && West == West::Up) return 2838;
if (East == East::Side && North == North::None && Power == 6 && South == South::None && West == West::Side) return 2839;
if (East == East::Side && North == North::None && Power == 6 && South == South::None && West == West::None) return 2840;
if (East == East::Side && North == North::None && Power == 7 && South == South::Up && West == West::Up) return 2841;
if (East == East::Side && North == North::None && Power == 7 && South == South::Up && West == West::Side) return 2842;
if (East == East::Side && North == North::None && Power == 7 && South == South::Up && West == West::None) return 2843;
if (East == East::Side && North == North::None && Power == 7 && South == South::Side && West == West::Up) return 2844;
if (East == East::Side && North == North::None && Power == 7 && South == South::Side && West == West::Side) return 2845;
if (East == East::Side && North == North::None && Power == 7 && South == South::Side && West == West::None) return 2846;
if (East == East::Side && North == North::None && Power == 7 && South == South::None && West == West::Up) return 2847;
if (East == East::Side && North == North::None && Power == 7 && South == South::None && West == West::Side) return 2848;
if (East == East::Side && North == North::None && Power == 7 && South == South::None && West == West::None) return 2849;
if (East == East::Side && North == North::None && Power == 8 && South == South::Up && West == West::Up) return 2850;
if (East == East::Side && North == North::None && Power == 8 && South == South::Up && West == West::Side) return 2851;
if (East == East::Side && North == North::None && Power == 8 && South == South::Up && West == West::None) return 2852;
if (East == East::Side && North == North::None && Power == 8 && South == South::Side && West == West::Up) return 2853;
if (East == East::Side && North == North::None && Power == 8 && South == South::Side && West == West::Side) return 2854;
if (East == East::Side && North == North::None && Power == 8 && South == South::Side && West == West::None) return 2855;
if (East == East::Side && North == North::None && Power == 8 && South == South::None && West == West::Up) return 2856;
if (East == East::Side && North == North::None && Power == 8 && South == South::None && West == West::Side) return 2857;
if (East == East::Side && North == North::None && Power == 8 && South == South::None && West == West::None) return 2858;
if (East == East::Side && North == North::None && Power == 9 && South == South::Up && West == West::Up) return 2859;
if (East == East::Side && North == North::None && Power == 9 && South == South::Up && West == West::Side) return 2860;
if (East == East::Side && North == North::None && Power == 9 && South == South::Up && West == West::None) return 2861;
if (East == East::Side && North == North::None && Power == 9 && South == South::Side && West == West::Up) return 2862;
if (East == East::Side && North == North::None && Power == 9 && South == South::Side && West == West::Side) return 2863;
if (East == East::Side && North == North::None && Power == 9 && South == South::Side && West == West::None) return 2864;
if (East == East::Side && North == North::None && Power == 9 && South == South::None && West == West::Up) return 2865;
if (East == East::Side && North == North::None && Power == 9 && South == South::None && West == West::Side) return 2866;
if (East == East::Side && North == North::None && Power == 9 && South == South::None && West == West::None) return 2867;
if (East == East::Side && North == North::None && Power == 10 && South == South::Up && West == West::Up) return 2868;
if (East == East::Side && North == North::None && Power == 10 && South == South::Up && West == West::Side) return 2869;
if (East == East::Side && North == North::None && Power == 10 && South == South::Up && West == West::None) return 2870;
if (East == East::Side && North == North::None && Power == 10 && South == South::Side && West == West::Up) return 2871;
if (East == East::Side && North == North::None && Power == 10 && South == South::Side && West == West::Side) return 2872;
if (East == East::Side && North == North::None && Power == 10 && South == South::Side && West == West::None) return 2873;
if (East == East::Side && North == North::None && Power == 10 && South == South::None && West == West::Up) return 2874;
if (East == East::Side && North == North::None && Power == 10 && South == South::None && West == West::Side) return 2875;
if (East == East::Side && North == North::None && Power == 10 && South == South::None && West == West::None) return 2876;
if (East == East::Side && North == North::None && Power == 11 && South == South::Up && West == West::Up) return 2877;
if (East == East::Side && North == North::None && Power == 11 && South == South::Up && West == West::Side) return 2878;
if (East == East::Side && North == North::None && Power == 11 && South == South::Up && West == West::None) return 2879;
if (East == East::Side && North == North::None && Power == 11 && South == South::Side && West == West::Up) return 2880;
if (East == East::Side && North == North::None && Power == 11 && South == South::Side && West == West::Side) return 2881;
if (East == East::Side && North == North::None && Power == 11 && South == South::Side && West == West::None) return 2882;
if (East == East::Side && North == North::None && Power == 11 && South == South::None && West == West::Up) return 2883;
if (East == East::Side && North == North::None && Power == 11 && South == South::None && West == West::Side) return 2884;
if (East == East::Side && North == North::None && Power == 11 && South == South::None && West == West::None) return 2885;
if (East == East::Side && North == North::None && Power == 12 && South == South::Up && West == West::Up) return 2886;
if (East == East::Side && North == North::None && Power == 12 && South == South::Up && West == West::Side) return 2887;
if (East == East::Side && North == North::None && Power == 12 && South == South::Up && West == West::None) return 2888;
if (East == East::Side && North == North::None && Power == 12 && South == South::Side && West == West::Up) return 2889;
if (East == East::Side && North == North::None && Power == 12 && South == South::Side && West == West::Side) return 2890;
if (East == East::Side && North == North::None && Power == 12 && South == South::Side && West == West::None) return 2891;
if (East == East::Side && North == North::None && Power == 12 && South == South::None && West == West::Up) return 2892;
if (East == East::Side && North == North::None && Power == 12 && South == South::None && West == West::Side) return 2893;
if (East == East::Side && North == North::None && Power == 12 && South == South::None && West == West::None) return 2894;
if (East == East::Side && North == North::None && Power == 13 && South == South::Up && West == West::Up) return 2895;
if (East == East::Side && North == North::None && Power == 13 && South == South::Up && West == West::Side) return 2896;
if (East == East::Side && North == North::None && Power == 13 && South == South::Up && West == West::None) return 2897;
if (East == East::Side && North == North::None && Power == 13 && South == South::Side && West == West::Up) return 2898;
if (East == East::Side && North == North::None && Power == 13 && South == South::Side && West == West::Side) return 2899;
if (East == East::Side && North == North::None && Power == 13 && South == South::Side && West == West::None) return 2900;
if (East == East::Side && North == North::None && Power == 13 && South == South::None && West == West::Up) return 2901;
if (East == East::Side && North == North::None && Power == 13 && South == South::None && West == West::Side) return 2902;
if (East == East::Side && North == North::None && Power == 13 && South == South::None && West == West::None) return 2903;
if (East == East::Side && North == North::None && Power == 14 && South == South::Up && West == West::Up) return 2904;
if (East == East::Side && North == North::None && Power == 14 && South == South::Up && West == West::Side) return 2905;
if (East == East::Side && North == North::None && Power == 14 && South == South::Up && West == West::None) return 2906;
if (East == East::Side && North == North::None && Power == 14 && South == South::Side && West == West::Up) return 2907;
if (East == East::Side && North == North::None && Power == 14 && South == South::Side && West == West::Side) return 2908;
if (East == East::Side && North == North::None && Power == 14 && South == South::Side && West == West::None) return 2909;
if (East == East::Side && North == North::None && Power == 14 && South == South::None && West == West::Up) return 2910;
if (East == East::Side && North == North::None && Power == 14 && South == South::None && West == West::Side) return 2911;
if (East == East::Side && North == North::None && Power == 14 && South == South::None && West == West::None) return 2912;
if (East == East::Side && North == North::None && Power == 15 && South == South::Up && West == West::Up) return 2913;
if (East == East::Side && North == North::None && Power == 15 && South == South::Up && West == West::Side) return 2914;
if (East == East::Side && North == North::None && Power == 15 && South == South::Up && West == West::None) return 2915;
if (East == East::Side && North == North::None && Power == 15 && South == South::Side && West == West::Up) return 2916;
if (East == East::Side && North == North::None && Power == 15 && South == South::Side && West == West::Side) return 2917;
if (East == East::Side && North == North::None && Power == 15 && South == South::Side && West == West::None) return 2918;
if (East == East::Side && North == North::None && Power == 15 && South == South::None && West == West::Up) return 2919;
if (East == East::Side && North == North::None && Power == 15 && South == South::None && West == West::Side) return 2920;
if (East == East::Side && North == North::None && Power == 15 && South == South::None && West == West::None) return 2921;
if (East == East::None && North == North::Up && Power == 0 && South == South::Up && West == West::Up) return 2922;
if (East == East::None && North == North::Up && Power == 0 && South == South::Up && West == West::Side) return 2923;
if (East == East::None && North == North::Up && Power == 0 && South == South::Up && West == West::None) return 2924;
if (East == East::None && North == North::Up && Power == 0 && South == South::Side && West == West::Up) return 2925;
if (East == East::None && North == North::Up && Power == 0 && South == South::Side && West == West::Side) return 2926;
if (East == East::None && North == North::Up && Power == 0 && South == South::Side && West == West::None) return 2927;
if (East == East::None && North == North::Up && Power == 0 && South == South::None && West == West::Up) return 2928;
if (East == East::None && North == North::Up && Power == 0 && South == South::None && West == West::Side) return 2929;
if (East == East::None && North == North::Up && Power == 0 && South == South::None && West == West::None) return 2930;
if (East == East::None && North == North::Up && Power == 1 && South == South::Up && West == West::Up) return 2931;
if (East == East::None && North == North::Up && Power == 1 && South == South::Up && West == West::Side) return 2932;
if (East == East::None && North == North::Up && Power == 1 && South == South::Up && West == West::None) return 2933;
if (East == East::None && North == North::Up && Power == 1 && South == South::Side && West == West::Up) return 2934;
if (East == East::None && North == North::Up && Power == 1 && South == South::Side && West == West::Side) return 2935;
if (East == East::None && North == North::Up && Power == 1 && South == South::Side && West == West::None) return 2936;
if (East == East::None && North == North::Up && Power == 1 && South == South::None && West == West::Up) return 2937;
if (East == East::None && North == North::Up && Power == 1 && South == South::None && West == West::Side) return 2938;
if (East == East::None && North == North::Up && Power == 1 && South == South::None && West == West::None) return 2939;
if (East == East::None && North == North::Up && Power == 2 && South == South::Up && West == West::Up) return 2940;
if (East == East::None && North == North::Up && Power == 2 && South == South::Up && West == West::Side) return 2941;
if (East == East::None && North == North::Up && Power == 2 && South == South::Up && West == West::None) return 2942;
if (East == East::None && North == North::Up && Power == 2 && South == South::Side && West == West::Up) return 2943;
if (East == East::None && North == North::Up && Power == 2 && South == South::Side && West == West::Side) return 2944;
if (East == East::None && North == North::Up && Power == 2 && South == South::Side && West == West::None) return 2945;
if (East == East::None && North == North::Up && Power == 2 && South == South::None && West == West::Up) return 2946;
if (East == East::None && North == North::Up && Power == 2 && South == South::None && West == West::Side) return 2947;
if (East == East::None && North == North::Up && Power == 2 && South == South::None && West == West::None) return 2948;
if (East == East::None && North == North::Up && Power == 3 && South == South::Up && West == West::Up) return 2949;
if (East == East::None && North == North::Up && Power == 3 && South == South::Up && West == West::Side) return 2950;
if (East == East::None && North == North::Up && Power == 3 && South == South::Up && West == West::None) return 2951;
if (East == East::None && North == North::Up && Power == 3 && South == South::Side && West == West::Up) return 2952;
if (East == East::None && North == North::Up && Power == 3 && South == South::Side && West == West::Side) return 2953;
if (East == East::None && North == North::Up && Power == 3 && South == South::Side && West == West::None) return 2954;
if (East == East::None && North == North::Up && Power == 3 && South == South::None && West == West::Up) return 2955;
if (East == East::None && North == North::Up && Power == 3 && South == South::None && West == West::Side) return 2956;
if (East == East::None && North == North::Up && Power == 3 && South == South::None && West == West::None) return 2957;
if (East == East::None && North == North::Up && Power == 4 && South == South::Up && West == West::Up) return 2958;
if (East == East::None && North == North::Up && Power == 4 && South == South::Up && West == West::Side) return 2959;
if (East == East::None && North == North::Up && Power == 4 && South == South::Up && West == West::None) return 2960;
if (East == East::None && North == North::Up && Power == 4 && South == South::Side && West == West::Up) return 2961;
if (East == East::None && North == North::Up && Power == 4 && South == South::Side && West == West::Side) return 2962;
if (East == East::None && North == North::Up && Power == 4 && South == South::Side && West == West::None) return 2963;
if (East == East::None && North == North::Up && Power == 4 && South == South::None && West == West::Up) return 2964;
if (East == East::None && North == North::Up && Power == 4 && South == South::None && West == West::Side) return 2965;
if (East == East::None && North == North::Up && Power == 4 && South == South::None && West == West::None) return 2966;
if (East == East::None && North == North::Up && Power == 5 && South == South::Up && West == West::Up) return 2967;
if (East == East::None && North == North::Up && Power == 5 && South == South::Up && West == West::Side) return 2968;
if (East == East::None && North == North::Up && Power == 5 && South == South::Up && West == West::None) return 2969;
if (East == East::None && North == North::Up && Power == 5 && South == South::Side && West == West::Up) return 2970;
if (East == East::None && North == North::Up && Power == 5 && South == South::Side && West == West::Side) return 2971;
if (East == East::None && North == North::Up && Power == 5 && South == South::Side && West == West::None) return 2972;
if (East == East::None && North == North::Up && Power == 5 && South == South::None && West == West::Up) return 2973;
if (East == East::None && North == North::Up && Power == 5 && South == South::None && West == West::Side) return 2974;
if (East == East::None && North == North::Up && Power == 5 && South == South::None && West == West::None) return 2975;
if (East == East::None && North == North::Up && Power == 6 && South == South::Up && West == West::Up) return 2976;
if (East == East::None && North == North::Up && Power == 6 && South == South::Up && West == West::Side) return 2977;
if (East == East::None && North == North::Up && Power == 6 && South == South::Up && West == West::None) return 2978;
if (East == East::None && North == North::Up && Power == 6 && South == South::Side && West == West::Up) return 2979;
if (East == East::None && North == North::Up && Power == 6 && South == South::Side && West == West::Side) return 2980;
if (East == East::None && North == North::Up && Power == 6 && South == South::Side && West == West::None) return 2981;
if (East == East::None && North == North::Up && Power == 6 && South == South::None && West == West::Up) return 2982;
if (East == East::None && North == North::Up && Power == 6 && South == South::None && West == West::Side) return 2983;
if (East == East::None && North == North::Up && Power == 6 && South == South::None && West == West::None) return 2984;
if (East == East::None && North == North::Up && Power == 7 && South == South::Up && West == West::Up) return 2985;
if (East == East::None && North == North::Up && Power == 7 && South == South::Up && West == West::Side) return 2986;
if (East == East::None && North == North::Up && Power == 7 && South == South::Up && West == West::None) return 2987;
if (East == East::None && North == North::Up && Power == 7 && South == South::Side && West == West::Up) return 2988;
if (East == East::None && North == North::Up && Power == 7 && South == South::Side && West == West::Side) return 2989;
if (East == East::None && North == North::Up && Power == 7 && South == South::Side && West == West::None) return 2990;
if (East == East::None && North == North::Up && Power == 7 && South == South::None && West == West::Up) return 2991;
if (East == East::None && North == North::Up && Power == 7 && South == South::None && West == West::Side) return 2992;
if (East == East::None && North == North::Up && Power == 7 && South == South::None && West == West::None) return 2993;
if (East == East::None && North == North::Up && Power == 8 && South == South::Up && West == West::Up) return 2994;
if (East == East::None && North == North::Up && Power == 8 && South == South::Up && West == West::Side) return 2995;
if (East == East::None && North == North::Up && Power == 8 && South == South::Up && West == West::None) return 2996;
if (East == East::None && North == North::Up && Power == 8 && South == South::Side && West == West::Up) return 2997;
if (East == East::None && North == North::Up && Power == 8 && South == South::Side && West == West::Side) return 2998;
if (East == East::None && North == North::Up && Power == 8 && South == South::Side && West == West::None) return 2999;
if (East == East::None && North == North::Up && Power == 8 && South == South::None && West == West::Up) return 3000;
if (East == East::None && North == North::Up && Power == 8 && South == South::None && West == West::Side) return 3001;
if (East == East::None && North == North::Up && Power == 8 && South == South::None && West == West::None) return 3002;
if (East == East::None && North == North::Up && Power == 9 && South == South::Up && West == West::Up) return 3003;
if (East == East::None && North == North::Up && Power == 9 && South == South::Up && West == West::Side) return 3004;
if (East == East::None && North == North::Up && Power == 9 && South == South::Up && West == West::None) return 3005;
if (East == East::None && North == North::Up && Power == 9 && South == South::Side && West == West::Up) return 3006;
if (East == East::None && North == North::Up && Power == 9 && South == South::Side && West == West::Side) return 3007;
if (East == East::None && North == North::Up && Power == 9 && South == South::Side && West == West::None) return 3008;
if (East == East::None && North == North::Up && Power == 9 && South == South::None && West == West::Up) return 3009;
if (East == East::None && North == North::Up && Power == 9 && South == South::None && West == West::Side) return 3010;
if (East == East::None && North == North::Up && Power == 9 && South == South::None && West == West::None) return 3011;
if (East == East::None && North == North::Up && Power == 10 && South == South::Up && West == West::Up) return 3012;
if (East == East::None && North == North::Up && Power == 10 && South == South::Up && West == West::Side) return 3013;
if (East == East::None && North == North::Up && Power == 10 && South == South::Up && West == West::None) return 3014;
if (East == East::None && North == North::Up && Power == 10 && South == South::Side && West == West::Up) return 3015;
if (East == East::None && North == North::Up && Power == 10 && South == South::Side && West == West::Side) return 3016;
if (East == East::None && North == North::Up && Power == 10 && South == South::Side && West == West::None) return 3017;
if (East == East::None && North == North::Up && Power == 10 && South == South::None && West == West::Up) return 3018;
if (East == East::None && North == North::Up && Power == 10 && South == South::None && West == West::Side) return 3019;
if (East == East::None && North == North::Up && Power == 10 && South == South::None && West == West::None) return 3020;
if (East == East::None && North == North::Up && Power == 11 && South == South::Up && West == West::Up) return 3021;
if (East == East::None && North == North::Up && Power == 11 && South == South::Up && West == West::Side) return 3022;
if (East == East::None && North == North::Up && Power == 11 && South == South::Up && West == West::None) return 3023;
if (East == East::None && North == North::Up && Power == 11 && South == South::Side && West == West::Up) return 3024;
if (East == East::None && North == North::Up && Power == 11 && South == South::Side && West == West::Side) return 3025;
if (East == East::None && North == North::Up && Power == 11 && South == South::Side && West == West::None) return 3026;
if (East == East::None && North == North::Up && Power == 11 && South == South::None && West == West::Up) return 3027;
if (East == East::None && North == North::Up && Power == 11 && South == South::None && West == West::Side) return 3028;
if (East == East::None && North == North::Up && Power == 11 && South == South::None && West == West::None) return 3029;
if (East == East::None && North == North::Up && Power == 12 && South == South::Up && West == West::Up) return 3030;
if (East == East::None && North == North::Up && Power == 12 && South == South::Up && West == West::Side) return 3031;
if (East == East::None && North == North::Up && Power == 12 && South == South::Up && West == West::None) return 3032;
if (East == East::None && North == North::Up && Power == 12 && South == South::Side && West == West::Up) return 3033;
if (East == East::None && North == North::Up && Power == 12 && South == South::Side && West == West::Side) return 3034;
if (East == East::None && North == North::Up && Power == 12 && South == South::Side && West == West::None) return 3035;
if (East == East::None && North == North::Up && Power == 12 && South == South::None && West == West::Up) return 3036;
if (East == East::None && North == North::Up && Power == 12 && South == South::None && West == West::Side) return 3037;
if (East == East::None && North == North::Up && Power == 12 && South == South::None && West == West::None) return 3038;
if (East == East::None && North == North::Up && Power == 13 && South == South::Up && West == West::Up) return 3039;
if (East == East::None && North == North::Up && Power == 13 && South == South::Up && West == West::Side) return 3040;
if (East == East::None && North == North::Up && Power == 13 && South == South::Up && West == West::None) return 3041;
if (East == East::None && North == North::Up && Power == 13 && South == South::Side && West == West::Up) return 3042;
if (East == East::None && North == North::Up && Power == 13 && South == South::Side && West == West::Side) return 3043;
if (East == East::None && North == North::Up && Power == 13 && South == South::Side && West == West::None) return 3044;
if (East == East::None && North == North::Up && Power == 13 && South == South::None && West == West::Up) return 3045;
if (East == East::None && North == North::Up && Power == 13 && South == South::None && West == West::Side) return 3046;
if (East == East::None && North == North::Up && Power == 13 && South == South::None && West == West::None) return 3047;
if (East == East::None && North == North::Up && Power == 14 && South == South::Up && West == West::Up) return 3048;
if (East == East::None && North == North::Up && Power == 14 && South == South::Up && West == West::Side) return 3049;
if (East == East::None && North == North::Up && Power == 14 && South == South::Up && West == West::None) return 3050;
if (East == East::None && North == North::Up && Power == 14 && South == South::Side && West == West::Up) return 3051;
if (East == East::None && North == North::Up && Power == 14 && South == South::Side && West == West::Side) return 3052;
if (East == East::None && North == North::Up && Power == 14 && South == South::Side && West == West::None) return 3053;
if (East == East::None && North == North::Up && Power == 14 && South == South::None && West == West::Up) return 3054;
if (East == East::None && North == North::Up && Power == 14 && South == South::None && West == West::Side) return 3055;
if (East == East::None && North == North::Up && Power == 14 && South == South::None && West == West::None) return 3056;
if (East == East::None && North == North::Up && Power == 15 && South == South::Up && West == West::Up) return 3057;
if (East == East::None && North == North::Up && Power == 15 && South == South::Up && West == West::Side) return 3058;
if (East == East::None && North == North::Up && Power == 15 && South == South::Up && West == West::None) return 3059;
if (East == East::None && North == North::Up && Power == 15 && South == South::Side && West == West::Up) return 3060;
if (East == East::None && North == North::Up && Power == 15 && South == South::Side && West == West::Side) return 3061;
if (East == East::None && North == North::Up && Power == 15 && South == South::Side && West == West::None) return 3062;
if (East == East::None && North == North::Up && Power == 15 && South == South::None && West == West::Up) return 3063;
if (East == East::None && North == North::Up && Power == 15 && South == South::None && West == West::Side) return 3064;
if (East == East::None && North == North::Up && Power == 15 && South == South::None && West == West::None) return 3065;
if (East == East::None && North == North::Side && Power == 0 && South == South::Up && West == West::Up) return 3066;
if (East == East::None && North == North::Side && Power == 0 && South == South::Up && West == West::Side) return 3067;
if (East == East::None && North == North::Side && Power == 0 && South == South::Up && West == West::None) return 3068;
if (East == East::None && North == North::Side && Power == 0 && South == South::Side && West == West::Up) return 3069;
if (East == East::None && North == North::Side && Power == 0 && South == South::Side && West == West::Side) return 3070;
if (East == East::None && North == North::Side && Power == 0 && South == South::Side && West == West::None) return 3071;
if (East == East::None && North == North::Side && Power == 0 && South == South::None && West == West::Up) return 3072;
if (East == East::None && North == North::Side && Power == 0 && South == South::None && West == West::Side) return 3073;
if (East == East::None && North == North::Side && Power == 0 && South == South::None && West == West::None) return 3074;
if (East == East::None && North == North::Side && Power == 1 && South == South::Up && West == West::Up) return 3075;
if (East == East::None && North == North::Side && Power == 1 && South == South::Up && West == West::Side) return 3076;
if (East == East::None && North == North::Side && Power == 1 && South == South::Up && West == West::None) return 3077;
if (East == East::None && North == North::Side && Power == 1 && South == South::Side && West == West::Up) return 3078;
if (East == East::None && North == North::Side && Power == 1 && South == South::Side && West == West::Side) return 3079;
if (East == East::None && North == North::Side && Power == 1 && South == South::Side && West == West::None) return 3080;
if (East == East::None && North == North::Side && Power == 1 && South == South::None && West == West::Up) return 3081;
if (East == East::None && North == North::Side && Power == 1 && South == South::None && West == West::Side) return 3082;
if (East == East::None && North == North::Side && Power == 1 && South == South::None && West == West::None) return 3083;
if (East == East::None && North == North::Side && Power == 2 && South == South::Up && West == West::Up) return 3084;
if (East == East::None && North == North::Side && Power == 2 && South == South::Up && West == West::Side) return 3085;
if (East == East::None && North == North::Side && Power == 2 && South == South::Up && West == West::None) return 3086;
if (East == East::None && North == North::Side && Power == 2 && South == South::Side && West == West::Up) return 3087;
if (East == East::None && North == North::Side && Power == 2 && South == South::Side && West == West::Side) return 3088;
if (East == East::None && North == North::Side && Power == 2 && South == South::Side && West == West::None) return 3089;
if (East == East::None && North == North::Side && Power == 2 && South == South::None && West == West::Up) return 3090;
if (East == East::None && North == North::Side && Power == 2 && South == South::None && West == West::Side) return 3091;
if (East == East::None && North == North::Side && Power == 2 && South == South::None && West == West::None) return 3092;
if (East == East::None && North == North::Side && Power == 3 && South == South::Up && West == West::Up) return 3093;
if (East == East::None && North == North::Side && Power == 3 && South == South::Up && West == West::Side) return 3094;
if (East == East::None && North == North::Side && Power == 3 && South == South::Up && West == West::None) return 3095;
if (East == East::None && North == North::Side && Power == 3 && South == South::Side && West == West::Up) return 3096;
if (East == East::None && North == North::Side && Power == 3 && South == South::Side && West == West::Side) return 3097;
if (East == East::None && North == North::Side && Power == 3 && South == South::Side && West == West::None) return 3098;
if (East == East::None && North == North::Side && Power == 3 && South == South::None && West == West::Up) return 3099;
if (East == East::None && North == North::Side && Power == 3 && South == South::None && West == West::Side) return 3100;
if (East == East::None && North == North::Side && Power == 3 && South == South::None && West == West::None) return 3101;
if (East == East::None && North == North::Side && Power == 4 && South == South::Up && West == West::Up) return 3102;
if (East == East::None && North == North::Side && Power == 4 && South == South::Up && West == West::Side) return 3103;
if (East == East::None && North == North::Side && Power == 4 && South == South::Up && West == West::None) return 3104;
if (East == East::None && North == North::Side && Power == 4 && South == South::Side && West == West::Up) return 3105;
if (East == East::None && North == North::Side && Power == 4 && South == South::Side && West == West::Side) return 3106;
if (East == East::None && North == North::Side && Power == 4 && South == South::Side && West == West::None) return 3107;
if (East == East::None && North == North::Side && Power == 4 && South == South::None && West == West::Up) return 3108;
if (East == East::None && North == North::Side && Power == 4 && South == South::None && West == West::Side) return 3109;
if (East == East::None && North == North::Side && Power == 4 && South == South::None && West == West::None) return 3110;
if (East == East::None && North == North::Side && Power == 5 && South == South::Up && West == West::Up) return 3111;
if (East == East::None && North == North::Side && Power == 5 && South == South::Up && West == West::Side) return 3112;
if (East == East::None && North == North::Side && Power == 5 && South == South::Up && West == West::None) return 3113;
if (East == East::None && North == North::Side && Power == 5 && South == South::Side && West == West::Up) return 3114;
if (East == East::None && North == North::Side && Power == 5 && South == South::Side && West == West::Side) return 3115;
if (East == East::None && North == North::Side && Power == 5 && South == South::Side && West == West::None) return 3116;
if (East == East::None && North == North::Side && Power == 5 && South == South::None && West == West::Up) return 3117;
if (East == East::None && North == North::Side && Power == 5 && South == South::None && West == West::Side) return 3118;
if (East == East::None && North == North::Side && Power == 5 && South == South::None && West == West::None) return 3119;
if (East == East::None && North == North::Side && Power == 6 && South == South::Up && West == West::Up) return 3120;
if (East == East::None && North == North::Side && Power == 6 && South == South::Up && West == West::Side) return 3121;
if (East == East::None && North == North::Side && Power == 6 && South == South::Up && West == West::None) return 3122;
if (East == East::None && North == North::Side && Power == 6 && South == South::Side && West == West::Up) return 3123;
if (East == East::None && North == North::Side && Power == 6 && South == South::Side && West == West::Side) return 3124;
if (East == East::None && North == North::Side && Power == 6 && South == South::Side && West == West::None) return 3125;
if (East == East::None && North == North::Side && Power == 6 && South == South::None && West == West::Up) return 3126;
if (East == East::None && North == North::Side && Power == 6 && South == South::None && West == West::Side) return 3127;
if (East == East::None && North == North::Side && Power == 6 && South == South::None && West == West::None) return 3128;
if (East == East::None && North == North::Side && Power == 7 && South == South::Up && West == West::Up) return 3129;
if (East == East::None && North == North::Side && Power == 7 && South == South::Up && West == West::Side) return 3130;
if (East == East::None && North == North::Side && Power == 7 && South == South::Up && West == West::None) return 3131;
if (East == East::None && North == North::Side && Power == 7 && South == South::Side && West == West::Up) return 3132;
if (East == East::None && North == North::Side && Power == 7 && South == South::Side && West == West::Side) return 3133;
if (East == East::None && North == North::Side && Power == 7 && South == South::Side && West == West::None) return 3134;
if (East == East::None && North == North::Side && Power == 7 && South == South::None && West == West::Up) return 3135;
if (East == East::None && North == North::Side && Power == 7 && South == South::None && West == West::Side) return 3136;
if (East == East::None && North == North::Side && Power == 7 && South == South::None && West == West::None) return 3137;
if (East == East::None && North == North::Side && Power == 8 && South == South::Up && West == West::Up) return 3138;
if (East == East::None && North == North::Side && Power == 8 && South == South::Up && West == West::Side) return 3139;
if (East == East::None && North == North::Side && Power == 8 && South == South::Up && West == West::None) return 3140;
if (East == East::None && North == North::Side && Power == 8 && South == South::Side && West == West::Up) return 3141;
if (East == East::None && North == North::Side && Power == 8 && South == South::Side && West == West::Side) return 3142;
if (East == East::None && North == North::Side && Power == 8 && South == South::Side && West == West::None) return 3143;
if (East == East::None && North == North::Side && Power == 8 && South == South::None && West == West::Up) return 3144;
if (East == East::None && North == North::Side && Power == 8 && South == South::None && West == West::Side) return 3145;
if (East == East::None && North == North::Side && Power == 8 && South == South::None && West == West::None) return 3146;
if (East == East::None && North == North::Side && Power == 9 && South == South::Up && West == West::Up) return 3147;
if (East == East::None && North == North::Side && Power == 9 && South == South::Up && West == West::Side) return 3148;
if (East == East::None && North == North::Side && Power == 9 && South == South::Up && West == West::None) return 3149;
if (East == East::None && North == North::Side && Power == 9 && South == South::Side && West == West::Up) return 3150;
if (East == East::None && North == North::Side && Power == 9 && South == South::Side && West == West::Side) return 3151;
if (East == East::None && North == North::Side && Power == 9 && South == South::Side && West == West::None) return 3152;
if (East == East::None && North == North::Side && Power == 9 && South == South::None && West == West::Up) return 3153;
if (East == East::None && North == North::Side && Power == 9 && South == South::None && West == West::Side) return 3154;
if (East == East::None && North == North::Side && Power == 9 && South == South::None && West == West::None) return 3155;
if (East == East::None && North == North::Side && Power == 10 && South == South::Up && West == West::Up) return 3156;
if (East == East::None && North == North::Side && Power == 10 && South == South::Up && West == West::Side) return 3157;
if (East == East::None && North == North::Side && Power == 10 && South == South::Up && West == West::None) return 3158;
if (East == East::None && North == North::Side && Power == 10 && South == South::Side && West == West::Up) return 3159;
if (East == East::None && North == North::Side && Power == 10 && South == South::Side && West == West::Side) return 3160;
if (East == East::None && North == North::Side && Power == 10 && South == South::Side && West == West::None) return 3161;
if (East == East::None && North == North::Side && Power == 10 && South == South::None && West == West::Up) return 3162;
if (East == East::None && North == North::Side && Power == 10 && South == South::None && West == West::Side) return 3163;
if (East == East::None && North == North::Side && Power == 10 && South == South::None && West == West::None) return 3164;
if (East == East::None && North == North::Side && Power == 11 && South == South::Up && West == West::Up) return 3165;
if (East == East::None && North == North::Side && Power == 11 && South == South::Up && West == West::Side) return 3166;
if (East == East::None && North == North::Side && Power == 11 && South == South::Up && West == West::None) return 3167;
if (East == East::None && North == North::Side && Power == 11 && South == South::Side && West == West::Up) return 3168;
if (East == East::None && North == North::Side && Power == 11 && South == South::Side && West == West::Side) return 3169;
if (East == East::None && North == North::Side && Power == 11 && South == South::Side && West == West::None) return 3170;
if (East == East::None && North == North::Side && Power == 11 && South == South::None && West == West::Up) return 3171;
if (East == East::None && North == North::Side && Power == 11 && South == South::None && West == West::Side) return 3172;
if (East == East::None && North == North::Side && Power == 11 && South == South::None && West == West::None) return 3173;
if (East == East::None && North == North::Side && Power == 12 && South == South::Up && West == West::Up) return 3174;
if (East == East::None && North == North::Side && Power == 12 && South == South::Up && West == West::Side) return 3175;
if (East == East::None && North == North::Side && Power == 12 && South == South::Up && West == West::None) return 3176;
if (East == East::None && North == North::Side && Power == 12 && South == South::Side && West == West::Up) return 3177;
if (East == East::None && North == North::Side && Power == 12 && South == South::Side && West == West::Side) return 3178;
if (East == East::None && North == North::Side && Power == 12 && South == South::Side && West == West::None) return 3179;
if (East == East::None && North == North::Side && Power == 12 && South == South::None && West == West::Up) return 3180;
if (East == East::None && North == North::Side && Power == 12 && South == South::None && West == West::Side) return 3181;
if (East == East::None && North == North::Side && Power == 12 && South == South::None && West == West::None) return 3182;
if (East == East::None && North == North::Side && Power == 13 && South == South::Up && West == West::Up) return 3183;
if (East == East::None && North == North::Side && Power == 13 && South == South::Up && West == West::Side) return 3184;
if (East == East::None && North == North::Side && Power == 13 && South == South::Up && West == West::None) return 3185;
if (East == East::None && North == North::Side && Power == 13 && South == South::Side && West == West::Up) return 3186;
if (East == East::None && North == North::Side && Power == 13 && South == South::Side && West == West::Side) return 3187;
if (East == East::None && North == North::Side && Power == 13 && South == South::Side && West == West::None) return 3188;
if (East == East::None && North == North::Side && Power == 13 && South == South::None && West == West::Up) return 3189;
if (East == East::None && North == North::Side && Power == 13 && South == South::None && West == West::Side) return 3190;
if (East == East::None && North == North::Side && Power == 13 && South == South::None && West == West::None) return 3191;
if (East == East::None && North == North::Side && Power == 14 && South == South::Up && West == West::Up) return 3192;
if (East == East::None && North == North::Side && Power == 14 && South == South::Up && West == West::Side) return 3193;
if (East == East::None && North == North::Side && Power == 14 && South == South::Up && West == West::None) return 3194;
if (East == East::None && North == North::Side && Power == 14 && South == South::Side && West == West::Up) return 3195;
if (East == East::None && North == North::Side && Power == 14 && South == South::Side && West == West::Side) return 3196;
if (East == East::None && North == North::Side && Power == 14 && South == South::Side && West == West::None) return 3197;
if (East == East::None && North == North::Side && Power == 14 && South == South::None && West == West::Up) return 3198;
if (East == East::None && North == North::Side && Power == 14 && South == South::None && West == West::Side) return 3199;
if (East == East::None && North == North::Side && Power == 14 && South == South::None && West == West::None) return 3200;
if (East == East::None && North == North::Side && Power == 15 && South == South::Up && West == West::Up) return 3201;
if (East == East::None && North == North::Side && Power == 15 && South == South::Up && West == West::Side) return 3202;
if (East == East::None && North == North::Side && Power == 15 && South == South::Up && West == West::None) return 3203;
if (East == East::None && North == North::Side && Power == 15 && South == South::Side && West == West::Up) return 3204;
if (East == East::None && North == North::Side && Power == 15 && South == South::Side && West == West::Side) return 3205;
if (East == East::None && North == North::Side && Power == 15 && South == South::Side && West == West::None) return 3206;
if (East == East::None && North == North::Side && Power == 15 && South == South::None && West == West::Up) return 3207;
if (East == East::None && North == North::Side && Power == 15 && South == South::None && West == West::Side) return 3208;
if (East == East::None && North == North::Side && Power == 15 && South == South::None && West == West::None) return 3209;
if (East == East::None && North == North::None && Power == 0 && South == South::Up && West == West::Up) return 3210;
if (East == East::None && North == North::None && Power == 0 && South == South::Up && West == West::Side) return 3211;
if (East == East::None && North == North::None && Power == 0 && South == South::Up && West == West::None) return 3212;
if (East == East::None && North == North::None && Power == 0 && South == South::Side && West == West::Up) return 3213;
if (East == East::None && North == North::None && Power == 0 && South == South::Side && West == West::Side) return 3214;
if (East == East::None && North == North::None && Power == 0 && South == South::Side && West == West::None) return 3215;
if (East == East::None && North == North::None && Power == 0 && South == South::None && West == West::Up) return 3216;
if (East == East::None && North == North::None && Power == 0 && South == South::None && West == West::Side) return 3217;
if (East == East::None && North == North::None && Power == 0 && South == South::None && West == West::None) return 3218;
if (East == East::None && North == North::None && Power == 1 && South == South::Up && West == West::Up) return 3219;
if (East == East::None && North == North::None && Power == 1 && South == South::Up && West == West::Side) return 3220;
if (East == East::None && North == North::None && Power == 1 && South == South::Up && West == West::None) return 3221;
if (East == East::None && North == North::None && Power == 1 && South == South::Side && West == West::Up) return 3222;
if (East == East::None && North == North::None && Power == 1 && South == South::Side && West == West::Side) return 3223;
if (East == East::None && North == North::None && Power == 1 && South == South::Side && West == West::None) return 3224;
if (East == East::None && North == North::None && Power == 1 && South == South::None && West == West::Up) return 3225;
if (East == East::None && North == North::None && Power == 1 && South == South::None && West == West::Side) return 3226;
if (East == East::None && North == North::None && Power == 1 && South == South::None && West == West::None) return 3227;
if (East == East::None && North == North::None && Power == 2 && South == South::Up && West == West::Up) return 3228;
if (East == East::None && North == North::None && Power == 2 && South == South::Up && West == West::Side) return 3229;
if (East == East::None && North == North::None && Power == 2 && South == South::Up && West == West::None) return 3230;
if (East == East::None && North == North::None && Power == 2 && South == South::Side && West == West::Up) return 3231;
if (East == East::None && North == North::None && Power == 2 && South == South::Side && West == West::Side) return 3232;
if (East == East::None && North == North::None && Power == 2 && South == South::Side && West == West::None) return 3233;
if (East == East::None && North == North::None && Power == 2 && South == South::None && West == West::Up) return 3234;
if (East == East::None && North == North::None && Power == 2 && South == South::None && West == West::Side) return 3235;
if (East == East::None && North == North::None && Power == 2 && South == South::None && West == West::None) return 3236;
if (East == East::None && North == North::None && Power == 3 && South == South::Up && West == West::Up) return 3237;
if (East == East::None && North == North::None && Power == 3 && South == South::Up && West == West::Side) return 3238;
if (East == East::None && North == North::None && Power == 3 && South == South::Up && West == West::None) return 3239;
if (East == East::None && North == North::None && Power == 3 && South == South::Side && West == West::Up) return 3240;
if (East == East::None && North == North::None && Power == 3 && South == South::Side && West == West::Side) return 3241;
if (East == East::None && North == North::None && Power == 3 && South == South::Side && West == West::None) return 3242;
if (East == East::None && North == North::None && Power == 3 && South == South::None && West == West::Up) return 3243;
if (East == East::None && North == North::None && Power == 3 && South == South::None && West == West::Side) return 3244;
if (East == East::None && North == North::None && Power == 3 && South == South::None && West == West::None) return 3245;
if (East == East::None && North == North::None && Power == 4 && South == South::Up && West == West::Up) return 3246;
if (East == East::None && North == North::None && Power == 4 && South == South::Up && West == West::Side) return 3247;
if (East == East::None && North == North::None && Power == 4 && South == South::Up && West == West::None) return 3248;
if (East == East::None && North == North::None && Power == 4 && South == South::Side && West == West::Up) return 3249;
if (East == East::None && North == North::None && Power == 4 && South == South::Side && West == West::Side) return 3250;
if (East == East::None && North == North::None && Power == 4 && South == South::Side && West == West::None) return 3251;
if (East == East::None && North == North::None && Power == 4 && South == South::None && West == West::Up) return 3252;
if (East == East::None && North == North::None && Power == 4 && South == South::None && West == West::Side) return 3253;
if (East == East::None && North == North::None && Power == 4 && South == South::None && West == West::None) return 3254;
if (East == East::None && North == North::None && Power == 5 && South == South::Up && West == West::Up) return 3255;
if (East == East::None && North == North::None && Power == 5 && South == South::Up && West == West::Side) return 3256;
if (East == East::None && North == North::None && Power == 5 && South == South::Up && West == West::None) return 3257;
if (East == East::None && North == North::None && Power == 5 && South == South::Side && West == West::Up) return 3258;
if (East == East::None && North == North::None && Power == 5 && South == South::Side && West == West::Side) return 3259;
if (East == East::None && North == North::None && Power == 5 && South == South::Side && West == West::None) return 3260;
if (East == East::None && North == North::None && Power == 5 && South == South::None && West == West::Up) return 3261;
if (East == East::None && North == North::None && Power == 5 && South == South::None && West == West::Side) return 3262;
if (East == East::None && North == North::None && Power == 5 && South == South::None && West == West::None) return 3263;
if (East == East::None && North == North::None && Power == 6 && South == South::Up && West == West::Up) return 3264;
if (East == East::None && North == North::None && Power == 6 && South == South::Up && West == West::Side) return 3265;
if (East == East::None && North == North::None && Power == 6 && South == South::Up && West == West::None) return 3266;
if (East == East::None && North == North::None && Power == 6 && South == South::Side && West == West::Up) return 3267;
if (East == East::None && North == North::None && Power == 6 && South == South::Side && West == West::Side) return 3268;
if (East == East::None && North == North::None && Power == 6 && South == South::Side && West == West::None) return 3269;
if (East == East::None && North == North::None && Power == 6 && South == South::None && West == West::Up) return 3270;
if (East == East::None && North == North::None && Power == 6 && South == South::None && West == West::Side) return 3271;
if (East == East::None && North == North::None && Power == 6 && South == South::None && West == West::None) return 3272;
if (East == East::None && North == North::None && Power == 7 && South == South::Up && West == West::Up) return 3273;
if (East == East::None && North == North::None && Power == 7 && South == South::Up && West == West::Side) return 3274;
if (East == East::None && North == North::None && Power == 7 && South == South::Up && West == West::None) return 3275;
if (East == East::None && North == North::None && Power == 7 && South == South::Side && West == West::Up) return 3276;
if (East == East::None && North == North::None && Power == 7 && South == South::Side && West == West::Side) return 3277;
if (East == East::None && North == North::None && Power == 7 && South == South::Side && West == West::None) return 3278;
if (East == East::None && North == North::None && Power == 7 && South == South::None && West == West::Up) return 3279;
if (East == East::None && North == North::None && Power == 7 && South == South::None && West == West::Side) return 3280;
if (East == East::None && North == North::None && Power == 7 && South == South::None && West == West::None) return 3281;
if (East == East::None && North == North::None && Power == 8 && South == South::Up && West == West::Up) return 3282;
if (East == East::None && North == North::None && Power == 8 && South == South::Up && West == West::Side) return 3283;
if (East == East::None && North == North::None && Power == 8 && South == South::Up && West == West::None) return 3284;
if (East == East::None && North == North::None && Power == 8 && South == South::Side && West == West::Up) return 3285;
if (East == East::None && North == North::None && Power == 8 && South == South::Side && West == West::Side) return 3286;
if (East == East::None && North == North::None && Power == 8 && South == South::Side && West == West::None) return 3287;
if (East == East::None && North == North::None && Power == 8 && South == South::None && West == West::Up) return 3288;
if (East == East::None && North == North::None && Power == 8 && South == South::None && West == West::Side) return 3289;
if (East == East::None && North == North::None && Power == 8 && South == South::None && West == West::None) return 3290;
if (East == East::None && North == North::None && Power == 9 && South == South::Up && West == West::Up) return 3291;
if (East == East::None && North == North::None && Power == 9 && South == South::Up && West == West::Side) return 3292;
if (East == East::None && North == North::None && Power == 9 && South == South::Up && West == West::None) return 3293;
if (East == East::None && North == North::None && Power == 9 && South == South::Side && West == West::Up) return 3294;
if (East == East::None && North == North::None && Power == 9 && South == South::Side && West == West::Side) return 3295;
if (East == East::None && North == North::None && Power == 9 && South == South::Side && West == West::None) return 3296;
if (East == East::None && North == North::None && Power == 9 && South == South::None && West == West::Up) return 3297;
if (East == East::None && North == North::None && Power == 9 && South == South::None && West == West::Side) return 3298;
if (East == East::None && North == North::None && Power == 9 && South == South::None && West == West::None) return 3299;
if (East == East::None && North == North::None && Power == 10 && South == South::Up && West == West::Up) return 3300;
if (East == East::None && North == North::None && Power == 10 && South == South::Up && West == West::Side) return 3301;
if (East == East::None && North == North::None && Power == 10 && South == South::Up && West == West::None) return 3302;
if (East == East::None && North == North::None && Power == 10 && South == South::Side && West == West::Up) return 3303;
if (East == East::None && North == North::None && Power == 10 && South == South::Side && West == West::Side) return 3304;
if (East == East::None && North == North::None && Power == 10 && South == South::Side && West == West::None) return 3305;
if (East == East::None && North == North::None && Power == 10 && South == South::None && West == West::Up) return 3306;
if (East == East::None && North == North::None && Power == 10 && South == South::None && West == West::Side) return 3307;
if (East == East::None && North == North::None && Power == 10 && South == South::None && West == West::None) return 3308;
if (East == East::None && North == North::None && Power == 11 && South == South::Up && West == West::Up) return 3309;
if (East == East::None && North == North::None && Power == 11 && South == South::Up && West == West::Side) return 3310;
if (East == East::None && North == North::None && Power == 11 && South == South::Up && West == West::None) return 3311;
if (East == East::None && North == North::None && Power == 11 && South == South::Side && West == West::Up) return 3312;
if (East == East::None && North == North::None && Power == 11 && South == South::Side && West == West::Side) return 3313;
if (East == East::None && North == North::None && Power == 11 && South == South::Side && West == West::None) return 3314;
if (East == East::None && North == North::None && Power == 11 && South == South::None && West == West::Up) return 3315;
if (East == East::None && North == North::None && Power == 11 && South == South::None && West == West::Side) return 3316;
if (East == East::None && North == North::None && Power == 11 && South == South::None && West == West::None) return 3317;
if (East == East::None && North == North::None && Power == 12 && South == South::Up && West == West::Up) return 3318;
if (East == East::None && North == North::None && Power == 12 && South == South::Up && West == West::Side) return 3319;
if (East == East::None && North == North::None && Power == 12 && South == South::Up && West == West::None) return 3320;
if (East == East::None && North == North::None && Power == 12 && South == South::Side && West == West::Up) return 3321;
if (East == East::None && North == North::None && Power == 12 && South == South::Side && West == West::Side) return 3322;
if (East == East::None && North == North::None && Power == 12 && South == South::Side && West == West::None) return 3323;
if (East == East::None && North == North::None && Power == 12 && South == South::None && West == West::Up) return 3324;
if (East == East::None && North == North::None && Power == 12 && South == South::None && West == West::Side) return 3325;
if (East == East::None && North == North::None && Power == 12 && South == South::None && West == West::None) return 3326;
if (East == East::None && North == North::None && Power == 13 && South == South::Up && West == West::Up) return 3327;
if (East == East::None && North == North::None && Power == 13 && South == South::Up && West == West::Side) return 3328;
if (East == East::None && North == North::None && Power == 13 && South == South::Up && West == West::None) return 3329;
if (East == East::None && North == North::None && Power == 13 && South == South::Side && West == West::Up) return 3330;
if (East == East::None && North == North::None && Power == 13 && South == South::Side && West == West::Side) return 3331;
if (East == East::None && North == North::None && Power == 13 && South == South::Side && West == West::None) return 3332;
if (East == East::None && North == North::None && Power == 13 && South == South::None && West == West::Up) return 3333;
if (East == East::None && North == North::None && Power == 13 && South == South::None && West == West::Side) return 3334;
if (East == East::None && North == North::None && Power == 13 && South == South::None && West == West::None) return 3335;
if (East == East::None && North == North::None && Power == 14 && South == South::Up && West == West::Up) return 3336;
if (East == East::None && North == North::None && Power == 14 && South == South::Up && West == West::Side) return 3337;
if (East == East::None && North == North::None && Power == 14 && South == South::Up && West == West::None) return 3338;
if (East == East::None && North == North::None && Power == 14 && South == South::Side && West == West::Up) return 3339;
if (East == East::None && North == North::None && Power == 14 && South == South::Side && West == West::Side) return 3340;
if (East == East::None && North == North::None && Power == 14 && South == South::Side && West == West::None) return 3341;
if (East == East::None && North == North::None && Power == 14 && South == South::None && West == West::Up) return 3342;
if (East == East::None && North == North::None && Power == 14 && South == South::None && West == West::Side) return 3343;
if (East == East::None && North == North::None && Power == 14 && South == South::None && West == West::None) return 3344;
if (East == East::None && North == North::None && Power == 15 && South == South::Up && West == West::Up) return 3345;
if (East == East::None && North == North::None && Power == 15 && South == South::Up && West == West::Side) return 3346;
if (East == East::None && North == North::None && Power == 15 && South == South::Up && West == West::None) return 3347;
if (East == East::None && North == North::None && Power == 15 && South == South::Side && West == West::Up) return 3348;
if (East == East::None && North == North::None && Power == 15 && South == South::Side && West == West::Side) return 3349;
if (East == East::None && North == North::None && Power == 15 && South == South::Side && West == West::None) return 3350;
if (East == East::None && North == North::None && Power == 15 && South == South::None && West == West::Up) return 3351;
if (East == East::None && North == North::None && Power == 15 && South == South::None && West == West::Side) return 3352;
return 3353;
}
short RedstoneWire();
enum East East(short ID);
enum North North(short ID);
unsigned char Power(short ID);
enum South South(short ID);
enum West West(short ID);
}
namespace Repeater
{
constexpr short Repeater(unsigned char Delay, eBlockFace Facing, bool Locked, bool Powered)
{
if (Delay == 1 && Facing == eBlockFace::BLOCK_FACE_ZM && Locked && Powered) return 4031;
if (Delay == 1 && Facing == eBlockFace::BLOCK_FACE_ZM && Locked && !Powered) return 4032;
if (Delay == 1 && Facing == eBlockFace::BLOCK_FACE_ZM && !Locked && Powered) return 4033;
if (Delay == 1 && Facing == eBlockFace::BLOCK_FACE_ZM && !Locked && !Powered) return 4034;
if (Delay == 1 && Facing == eBlockFace::BLOCK_FACE_ZP && Locked && Powered) return 4035;
if (Delay == 1 && Facing == eBlockFace::BLOCK_FACE_ZP && Locked && !Powered) return 4036;
if (Delay == 1 && Facing == eBlockFace::BLOCK_FACE_ZP && !Locked && Powered) return 4037;
if (Delay == 1 && Facing == eBlockFace::BLOCK_FACE_ZP && !Locked && !Powered) return 4038;
if (Delay == 1 && Facing == eBlockFace::BLOCK_FACE_XM && Locked && Powered) return 4039;
if (Delay == 1 && Facing == eBlockFace::BLOCK_FACE_XM && Locked && !Powered) return 4040;
if (Delay == 1 && Facing == eBlockFace::BLOCK_FACE_XM && !Locked && Powered) return 4041;
if (Delay == 1 && Facing == eBlockFace::BLOCK_FACE_XM && !Locked && !Powered) return 4042;
if (Delay == 1 && Facing == eBlockFace::BLOCK_FACE_XP && Locked && Powered) return 4043;
if (Delay == 1 && Facing == eBlockFace::BLOCK_FACE_XP && Locked && !Powered) return 4044;
if (Delay == 1 && Facing == eBlockFace::BLOCK_FACE_XP && !Locked && Powered) return 4045;
if (Delay == 1 && Facing == eBlockFace::BLOCK_FACE_XP && !Locked && !Powered) return 4046;
if (Delay == 2 && Facing == eBlockFace::BLOCK_FACE_ZM && Locked && Powered) return 4047;
if (Delay == 2 && Facing == eBlockFace::BLOCK_FACE_ZM && Locked && !Powered) return 4048;
if (Delay == 2 && Facing == eBlockFace::BLOCK_FACE_ZM && !Locked && Powered) return 4049;
if (Delay == 2 && Facing == eBlockFace::BLOCK_FACE_ZM && !Locked && !Powered) return 4050;
if (Delay == 2 && Facing == eBlockFace::BLOCK_FACE_ZP && Locked && Powered) return 4051;
if (Delay == 2 && Facing == eBlockFace::BLOCK_FACE_ZP && Locked && !Powered) return 4052;
if (Delay == 2 && Facing == eBlockFace::BLOCK_FACE_ZP && !Locked && Powered) return 4053;
if (Delay == 2 && Facing == eBlockFace::BLOCK_FACE_ZP && !Locked && !Powered) return 4054;
if (Delay == 2 && Facing == eBlockFace::BLOCK_FACE_XM && Locked && Powered) return 4055;
if (Delay == 2 && Facing == eBlockFace::BLOCK_FACE_XM && Locked && !Powered) return 4056;
if (Delay == 2 && Facing == eBlockFace::BLOCK_FACE_XM && !Locked && Powered) return 4057;
if (Delay == 2 && Facing == eBlockFace::BLOCK_FACE_XM && !Locked && !Powered) return 4058;
if (Delay == 2 && Facing == eBlockFace::BLOCK_FACE_XP && Locked && Powered) return 4059;
if (Delay == 2 && Facing == eBlockFace::BLOCK_FACE_XP && Locked && !Powered) return 4060;
if (Delay == 2 && Facing == eBlockFace::BLOCK_FACE_XP && !Locked && Powered) return 4061;
if (Delay == 2 && Facing == eBlockFace::BLOCK_FACE_XP && !Locked && !Powered) return 4062;
if (Delay == 3 && Facing == eBlockFace::BLOCK_FACE_ZM && Locked && Powered) return 4063;
if (Delay == 3 && Facing == eBlockFace::BLOCK_FACE_ZM && Locked && !Powered) return 4064;
if (Delay == 3 && Facing == eBlockFace::BLOCK_FACE_ZM && !Locked && Powered) return 4065;
if (Delay == 3 && Facing == eBlockFace::BLOCK_FACE_ZM && !Locked && !Powered) return 4066;
if (Delay == 3 && Facing == eBlockFace::BLOCK_FACE_ZP && Locked && Powered) return 4067;
if (Delay == 3 && Facing == eBlockFace::BLOCK_FACE_ZP && Locked && !Powered) return 4068;
if (Delay == 3 && Facing == eBlockFace::BLOCK_FACE_ZP && !Locked && Powered) return 4069;
if (Delay == 3 && Facing == eBlockFace::BLOCK_FACE_ZP && !Locked && !Powered) return 4070;
if (Delay == 3 && Facing == eBlockFace::BLOCK_FACE_XM && Locked && Powered) return 4071;
if (Delay == 3 && Facing == eBlockFace::BLOCK_FACE_XM && Locked && !Powered) return 4072;
if (Delay == 3 && Facing == eBlockFace::BLOCK_FACE_XM && !Locked && Powered) return 4073;
if (Delay == 3 && Facing == eBlockFace::BLOCK_FACE_XM && !Locked && !Powered) return 4074;
if (Delay == 3 && Facing == eBlockFace::BLOCK_FACE_XP && Locked && Powered) return 4075;
if (Delay == 3 && Facing == eBlockFace::BLOCK_FACE_XP && Locked && !Powered) return 4076;
if (Delay == 3 && Facing == eBlockFace::BLOCK_FACE_XP && !Locked && Powered) return 4077;
if (Delay == 3 && Facing == eBlockFace::BLOCK_FACE_XP && !Locked && !Powered) return 4078;
if (Delay == 4 && Facing == eBlockFace::BLOCK_FACE_ZM && Locked && Powered) return 4079;
if (Delay == 4 && Facing == eBlockFace::BLOCK_FACE_ZM && Locked && !Powered) return 4080;
if (Delay == 4 && Facing == eBlockFace::BLOCK_FACE_ZM && !Locked && Powered) return 4081;
if (Delay == 4 && Facing == eBlockFace::BLOCK_FACE_ZM && !Locked && !Powered) return 4082;
if (Delay == 4 && Facing == eBlockFace::BLOCK_FACE_ZP && Locked && Powered) return 4083;
if (Delay == 4 && Facing == eBlockFace::BLOCK_FACE_ZP && Locked && !Powered) return 4084;
if (Delay == 4 && Facing == eBlockFace::BLOCK_FACE_ZP && !Locked && Powered) return 4085;
if (Delay == 4 && Facing == eBlockFace::BLOCK_FACE_ZP && !Locked && !Powered) return 4086;
if (Delay == 4 && Facing == eBlockFace::BLOCK_FACE_XM && Locked && Powered) return 4087;
if (Delay == 4 && Facing == eBlockFace::BLOCK_FACE_XM && Locked && !Powered) return 4088;
if (Delay == 4 && Facing == eBlockFace::BLOCK_FACE_XM && !Locked && Powered) return 4089;
if (Delay == 4 && Facing == eBlockFace::BLOCK_FACE_XM && !Locked && !Powered) return 4090;
if (Delay == 4 && Facing == eBlockFace::BLOCK_FACE_XP && Locked && Powered) return 4091;
if (Delay == 4 && Facing == eBlockFace::BLOCK_FACE_XP && Locked && !Powered) return 4092;
if (Delay == 4 && Facing == eBlockFace::BLOCK_FACE_XP && !Locked && Powered) return 4093;
return 4094;
}
short Repeater();
unsigned char Delay(short ID);
eBlockFace Facing(short ID);
bool Locked(short ID);
bool Powered(short ID);
}
namespace RepeatingCommandBlock
{
constexpr short RepeatingCommandBlock(bool Conditional, eBlockFace Facing)
{
if (Conditional && Facing == eBlockFace::BLOCK_FACE_ZM) return 9225;
if (Conditional && Facing == eBlockFace::BLOCK_FACE_XP) return 9226;
if (Conditional && Facing == eBlockFace::BLOCK_FACE_ZP) return 9227;
if (Conditional && Facing == eBlockFace::BLOCK_FACE_XM) return 9228;
if (Conditional && Facing == eBlockFace::BLOCK_FACE_YP) return 9229;
if (Conditional && Facing == eBlockFace::BLOCK_FACE_YM) return 9230;
if (!Conditional && Facing == eBlockFace::BLOCK_FACE_ZM) return 9231;
if (!Conditional && Facing == eBlockFace::BLOCK_FACE_XP) return 9232;
if (!Conditional && Facing == eBlockFace::BLOCK_FACE_ZP) return 9233;
if (!Conditional && Facing == eBlockFace::BLOCK_FACE_XM) return 9234;
if (!Conditional && Facing == eBlockFace::BLOCK_FACE_YP) return 9235;
return 9236;
}
short RepeatingCommandBlock();
bool Conditional(short ID);
eBlockFace Facing(short ID);
}
namespace RespawnAnchor
{
constexpr short RespawnAnchor(unsigned char Charges)
{
if (Charges == 0) return 15829;
if (Charges == 1) return 15830;
if (Charges == 2) return 15831;
if (Charges == 3) return 15832;
return 15833;
}
short RespawnAnchor();
unsigned char Charges(short ID);
}
namespace RoseBush
{
enum class Half
{
Upper,
Lower
};
constexpr short RoseBush(enum Half Half)
{
if (Half == Half::Upper) return 7889;
return 7890;
}
short RoseBush();
enum Half Half(short ID);
}
namespace Sand
{
constexpr short Sand()
{
return 66;
}
}
namespace Sandstone
{
constexpr short Sandstone()
{
return 246;
}
}
namespace SandstoneSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short SandstoneSlab(enum Type Type)
{
if (Type == Type::Top) return 8349;
if (Type == Type::Bottom) return 8351;
return 8353;
}
short SandstoneSlab();
enum Type Type(short ID);
}
namespace SandstoneStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short SandstoneStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 5171;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 5173;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 5175;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 5177;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 5179;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 5181;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5183;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 5185;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5187;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 5189;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 5191;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 5193;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 5195;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 5197;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 5199;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 5201;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5203;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 5205;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5207;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 5209;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 5211;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 5213;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 5215;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 5217;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 5219;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 5221;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5223;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 5225;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5227;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 5229;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 5231;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 5233;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 5235;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 5237;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 5239;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 5241;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5243;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 5245;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5247;
return 5249;
}
short SandstoneStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace SandstoneWall
{
enum class East
{
None,
Low,
Tall
};
enum class North
{
None,
Low,
Tall
};
enum class South
{
None,
Low,
Tall
};
enum class West
{
None,
Low,
Tall
};
constexpr short SandstoneWall(enum East East, enum North North, enum South South, bool Up, enum West West)
{
if (East == East::None && North == North::None && South == South::None && Up && West == West::None) return 13786;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Low) return 13787;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Tall) return 13788;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::None) return 13792;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Low) return 13793;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Tall) return 13794;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::None) return 13798;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Low) return 13799;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Tall) return 13800;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::None) return 13804;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Low) return 13805;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Tall) return 13806;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::None) return 13810;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Low) return 13811;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Tall) return 13812;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::None) return 13816;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Low) return 13817;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Tall) return 13818;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::None) return 13822;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Low) return 13823;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Tall) return 13824;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::None) return 13828;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Low) return 13829;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Tall) return 13830;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::None) return 13834;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Low) return 13835;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Tall) return 13836;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::None) return 13840;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Low) return 13841;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Tall) return 13842;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::None) return 13846;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Low) return 13847;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Tall) return 13848;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::None) return 13852;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Low) return 13853;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 13854;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::None) return 13858;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Low) return 13859;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Tall) return 13860;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::None) return 13864;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Low) return 13865;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Tall) return 13866;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::None) return 13870;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Low) return 13871;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Tall) return 13872;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::None) return 13876;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Low) return 13877;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 13878;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::None) return 13882;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Low) return 13883;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 13884;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::None) return 13888;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 13889;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 13890;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::None) return 13894;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Low) return 13895;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Tall) return 13896;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::None) return 13900;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Low) return 13901;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Tall) return 13902;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::None) return 13906;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Low) return 13907;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Tall) return 13908;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::None) return 13912;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Low) return 13913;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Tall) return 13914;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::None) return 13918;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Low) return 13919;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Tall) return 13920;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::None) return 13924;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Low) return 13925;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Tall) return 13926;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::None) return 13930;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Low) return 13931;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Tall) return 13932;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::None) return 13936;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Low) return 13937;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Tall) return 13938;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::None) return 13942;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Low) return 13943;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Tall) return 13944;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::None) return 13948;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Low) return 13949;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Tall) return 13950;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::None) return 13954;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Low) return 13955;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Tall) return 13956;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::None) return 13960;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Low) return 13961;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 13962;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::None) return 13966;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Low) return 13967;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Tall) return 13968;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::None) return 13972;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Low) return 13973;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Tall) return 13974;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::None) return 13978;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Low) return 13979;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Tall) return 13980;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::None) return 13984;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Low) return 13985;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 13986;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::None) return 13990;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Low) return 13991;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 13992;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::None) return 13996;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 13997;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 13998;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::None) return 14002;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Low) return 14003;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Tall) return 14004;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::None) return 14008;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Low) return 14009;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Tall) return 14010;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::None) return 14014;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Low) return 14015;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Tall) return 14016;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::None) return 14020;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Low) return 14021;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Tall) return 14022;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::None) return 14026;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Low) return 14027;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Tall) return 14028;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::None) return 14032;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Low) return 14033;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Tall) return 14034;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::None) return 14038;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Low) return 14039;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Tall) return 14040;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::None) return 14044;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Low) return 14045;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Tall) return 14046;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::None) return 14050;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Low) return 14051;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Tall) return 14052;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::None) return 14056;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Low) return 14057;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Tall) return 14058;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::None) return 14062;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Low) return 14063;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Tall) return 14064;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::None) return 14068;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Low) return 14069;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 14070;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::None) return 14074;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Low) return 14075;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Tall) return 14076;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::None) return 14080;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Low) return 14081;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Tall) return 14082;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::None) return 14086;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Low) return 14087;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Tall) return 14088;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::None) return 14092;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Low) return 14093;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 14094;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::None) return 14098;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Low) return 14099;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 14100;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::None) return 14104;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 14105;
return 14106;
}
short SandstoneWall();
enum East East(short ID);
enum North North(short ID);
enum South South(short ID);
bool Up(short ID);
enum West West(short ID);
}
namespace Scaffolding
{
constexpr short Scaffolding(bool Bottom, unsigned char Distance)
{
if (Bottom && Distance == 0) return 14756;
if (Bottom && Distance == 1) return 14758;
if (Bottom && Distance == 2) return 14760;
if (Bottom && Distance == 3) return 14762;
if (Bottom && Distance == 4) return 14764;
if (Bottom && Distance == 5) return 14766;
if (Bottom && Distance == 6) return 14768;
if (Bottom && Distance == 7) return 14770;
if (!Bottom && Distance == 0) return 14772;
if (!Bottom && Distance == 1) return 14774;
if (!Bottom && Distance == 2) return 14776;
if (!Bottom && Distance == 3) return 14778;
if (!Bottom && Distance == 4) return 14780;
if (!Bottom && Distance == 5) return 14782;
if (!Bottom && Distance == 6) return 14784;
return 14786;
}
short Scaffolding();
bool Bottom(short ID);
unsigned char Distance(short ID);
}
namespace SeaLantern
{
constexpr short SeaLantern()
{
return 7862;
}
}
namespace SeaPickle
{
constexpr short SeaPickle(unsigned char Pickles)
{
if (Pickles == 1) return 9641;
if (Pickles == 2) return 9643;
if (Pickles == 3) return 9645;
return 9647;
}
short SeaPickle();
unsigned char Pickles(short ID);
}
namespace Seagrass
{
constexpr short Seagrass()
{
return 1345;
}
}
namespace Shroomlight
{
constexpr short Shroomlight()
{
return 14989;
}
}
namespace ShulkerBox
{
constexpr short ShulkerBox(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9272;
if (Facing == eBlockFace::BLOCK_FACE_XP) return 9273;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9274;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9275;
if (Facing == eBlockFace::BLOCK_FACE_YP) return 9276;
return 9277;
}
short ShulkerBox();
eBlockFace Facing(short ID);
}
namespace SkeletonSkull
{
constexpr short SkeletonSkull(unsigned char Rotation)
{
if (Rotation == 0) return 6490;
if (Rotation == 1) return 6491;
if (Rotation == 2) return 6492;
if (Rotation == 3) return 6493;
if (Rotation == 4) return 6494;
if (Rotation == 5) return 6495;
if (Rotation == 6) return 6496;
if (Rotation == 7) return 6497;
if (Rotation == 8) return 6498;
if (Rotation == 9) return 6499;
if (Rotation == 10) return 6500;
if (Rotation == 11) return 6501;
if (Rotation == 12) return 6502;
if (Rotation == 13) return 6503;
if (Rotation == 14) return 6504;
return 6505;
}
short SkeletonSkull();
unsigned char Rotation(short ID);
}
namespace SkeletonWallSkull
{
constexpr short SkeletonWallSkull(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6506;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6507;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 6508;
return 6509;
}
short SkeletonWallSkull();
eBlockFace Facing(short ID);
}
namespace SlimeBlock
{
constexpr short SlimeBlock()
{
return 7535;
}
}
namespace SmithingTable
{
constexpr short SmithingTable()
{
return 14849;
}
}
namespace Smoker
{
constexpr short Smoker(eBlockFace Facing, bool Lit)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Lit) return 14803;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Lit) return 14804;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Lit) return 14805;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Lit) return 14806;
if (Facing == eBlockFace::BLOCK_FACE_XM && Lit) return 14807;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Lit) return 14808;
if (Facing == eBlockFace::BLOCK_FACE_XP && Lit) return 14809;
return 14810;
}
short Smoker();
eBlockFace Facing(short ID);
bool Lit(short ID);
}
namespace SmoothQuartz
{
constexpr short SmoothQuartz()
{
return 8416;
}
}
namespace SmoothQuartzSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short SmoothQuartzSlab(enum Type Type)
{
if (Type == Type::Top) return 10832;
if (Type == Type::Bottom) return 10834;
return 10836;
}
short SmoothQuartzSlab();
enum Type Type(short ID);
}
namespace SmoothQuartzStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short SmoothQuartzStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 10310;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 10312;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 10314;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 10316;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 10318;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 10320;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10322;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10324;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10326;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10328;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 10330;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 10332;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 10334;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 10336;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 10338;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 10340;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10342;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10344;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10346;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 10348;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 10350;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 10352;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 10354;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 10356;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 10358;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 10360;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10362;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10364;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10366;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10368;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 10370;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 10372;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 10374;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 10376;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 10378;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 10380;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10382;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10384;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10386;
return 10388;
}
short SmoothQuartzStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace SmoothRedSandstone
{
constexpr short SmoothRedSandstone()
{
return 8417;
}
}
namespace SmoothRedSandstoneSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short SmoothRedSandstoneSlab(enum Type Type)
{
if (Type == Type::Top) return 10796;
if (Type == Type::Bottom) return 10798;
return 10800;
}
short SmoothRedSandstoneSlab();
enum Type Type(short ID);
}
namespace SmoothRedSandstoneStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short SmoothRedSandstoneStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 9750;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 9752;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 9754;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 9756;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 9758;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 9760;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9762;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 9764;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9766;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 9768;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 9770;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 9772;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 9774;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 9776;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 9778;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 9780;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9782;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 9784;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9786;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 9788;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 9790;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 9792;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 9794;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 9796;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 9798;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 9800;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9802;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 9804;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9806;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 9808;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 9810;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 9812;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 9814;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 9816;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 9818;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 9820;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 9822;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 9824;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 9826;
return 9828;
}
short SmoothRedSandstoneStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace SmoothSandstone
{
constexpr short SmoothSandstone()
{
return 8415;
}
}
namespace SmoothSandstoneSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short SmoothSandstoneSlab(enum Type Type)
{
if (Type == Type::Top) return 10826;
if (Type == Type::Bottom) return 10828;
return 10830;
}
short SmoothSandstoneSlab();
enum Type Type(short ID);
}
namespace SmoothSandstoneStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short SmoothSandstoneStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 10230;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 10232;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 10234;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 10236;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 10238;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 10240;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10242;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10244;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10246;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10248;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 10250;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 10252;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 10254;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 10256;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 10258;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 10260;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10262;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10264;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10266;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 10268;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 10270;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 10272;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 10274;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 10276;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 10278;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 10280;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10282;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10284;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10286;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10288;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 10290;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 10292;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 10294;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 10296;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 10298;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 10300;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10302;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10304;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10306;
return 10308;
}
short SmoothSandstoneStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace SmoothStone
{
constexpr short SmoothStone()
{
return 8414;
}
}
namespace SmoothStoneSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short SmoothStoneSlab(enum Type Type)
{
if (Type == Type::Top) return 8343;
if (Type == Type::Bottom) return 8345;
return 8347;
}
short SmoothStoneSlab();
enum Type Type(short ID);
}
namespace Snow
{
constexpr short Snow(unsigned char Layers)
{
if (Layers == 1) return 3921;
if (Layers == 2) return 3922;
if (Layers == 3) return 3923;
if (Layers == 4) return 3924;
if (Layers == 5) return 3925;
if (Layers == 6) return 3926;
if (Layers == 7) return 3927;
return 3928;
}
short Snow();
unsigned char Layers(short ID);
}
namespace SnowBlock
{
constexpr short SnowBlock()
{
return 3930;
}
}
namespace SoulCampfire
{
constexpr short SoulCampfire(eBlockFace Facing, bool Lit, bool SignalFire)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Lit && SignalFire) return 14923;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Lit && !SignalFire) return 14925;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Lit && SignalFire) return 14927;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Lit && !SignalFire) return 14929;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Lit && SignalFire) return 14931;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Lit && !SignalFire) return 14933;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Lit && SignalFire) return 14935;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Lit && !SignalFire) return 14937;
if (Facing == eBlockFace::BLOCK_FACE_XM && Lit && SignalFire) return 14939;
if (Facing == eBlockFace::BLOCK_FACE_XM && Lit && !SignalFire) return 14941;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Lit && SignalFire) return 14943;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Lit && !SignalFire) return 14945;
if (Facing == eBlockFace::BLOCK_FACE_XP && Lit && SignalFire) return 14947;
if (Facing == eBlockFace::BLOCK_FACE_XP && Lit && !SignalFire) return 14949;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Lit && SignalFire) return 14951;
return 14953;
}
short SoulCampfire();
eBlockFace Facing(short ID);
bool Lit(short ID);
bool SignalFire(short ID);
}
namespace SoulFire
{
constexpr short SoulFire()
{
return 1952;
}
}
namespace SoulLantern
{
constexpr short SoulLantern(bool Hanging)
{
if (Hanging) return 14888;
return 14889;
}
short SoulLantern();
bool Hanging(short ID);
}
namespace SoulSand
{
constexpr short SoulSand()
{
return 4000;
}
}
namespace SoulSoil
{
constexpr short SoulSoil()
{
return 4001;
}
}
namespace SoulTorch
{
constexpr short SoulTorch()
{
return 4008;
}
}
namespace SoulWallTorch
{
constexpr short SoulWallTorch(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 4009;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 4010;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 4011;
return 4012;
}
short SoulWallTorch();
eBlockFace Facing(short ID);
}
namespace Spawner
{
constexpr short Spawner()
{
return 1953;
}
}
namespace Sponge
{
constexpr short Sponge()
{
return 229;
}
}
namespace SpruceButton
{
enum class Face
{
Floor,
Wall,
Ceiling
};
constexpr short SpruceButton(enum Face Face, eBlockFace Facing, bool Powered)
{
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 6370;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 6371;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 6372;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 6373;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 6374;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 6375;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 6376;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 6377;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 6378;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 6379;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 6380;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 6381;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 6382;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 6383;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 6384;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 6385;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 6386;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 6387;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 6388;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 6389;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 6390;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 6391;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 6392;
return 6393;
}
short SpruceButton();
enum Face Face(short ID);
eBlockFace Facing(short ID);
bool Powered(short ID);
}
namespace SpruceDoor
{
enum class Half
{
Upper,
Lower
};
enum class Hinge
{
Left,
Right
};
constexpr short SpruceDoor(eBlockFace Facing, enum Half Half, enum Hinge Hinge, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 8738;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 8739;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 8740;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 8741;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 8742;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 8743;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 8744;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 8745;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 8746;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 8747;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 8748;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 8749;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 8750;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 8751;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 8752;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 8753;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 8754;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 8755;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 8756;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 8757;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 8758;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 8759;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 8760;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 8761;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 8762;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 8763;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 8764;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 8765;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 8766;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 8767;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 8768;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 8769;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 8770;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 8771;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 8772;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 8773;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 8774;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 8775;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 8776;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 8777;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 8778;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 8779;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 8780;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 8781;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 8782;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 8783;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 8784;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 8785;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 8786;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 8787;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 8788;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 8789;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 8790;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 8791;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 8792;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 8793;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 8794;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 8795;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 8796;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 8797;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 8798;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 8799;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 8800;
return 8801;
}
short SpruceDoor();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Hinge Hinge(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace SpruceFence
{
constexpr short SpruceFence(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 8580;
if (East && North && South && !West) return 8581;
if (East && North && !South && West) return 8584;
if (East && North && !South && !West) return 8585;
if (East && !North && South && West) return 8588;
if (East && !North && South && !West) return 8589;
if (East && !North && !South && West) return 8592;
if (East && !North && !South && !West) return 8593;
if (!East && North && South && West) return 8596;
if (!East && North && South && !West) return 8597;
if (!East && North && !South && West) return 8600;
if (!East && North && !South && !West) return 8601;
if (!East && !North && South && West) return 8604;
if (!East && !North && South && !West) return 8605;
if (!East && !North && !South && West) return 8608;
return 8609;
}
short SpruceFence();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace SpruceFenceGate
{
constexpr short SpruceFenceGate(eBlockFace Facing, bool InWall, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && Open && Powered) return 8418;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && Open && !Powered) return 8419;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && !Open && Powered) return 8420;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && !Open && !Powered) return 8421;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && Open && Powered) return 8422;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && Open && !Powered) return 8423;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && !Open && Powered) return 8424;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && !Open && !Powered) return 8425;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && Open && Powered) return 8426;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && Open && !Powered) return 8427;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && !Open && Powered) return 8428;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && !Open && !Powered) return 8429;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && Open && Powered) return 8430;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && Open && !Powered) return 8431;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && !Open && Powered) return 8432;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && !Open && !Powered) return 8433;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && Open && Powered) return 8434;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && Open && !Powered) return 8435;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && !Open && Powered) return 8436;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && !Open && !Powered) return 8437;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && Open && Powered) return 8438;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && Open && !Powered) return 8439;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && !Open && Powered) return 8440;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && !Open && !Powered) return 8441;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && Open && Powered) return 8442;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && Open && !Powered) return 8443;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && !Open && Powered) return 8444;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && !Open && !Powered) return 8445;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && Open && Powered) return 8446;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && Open && !Powered) return 8447;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && !Open && Powered) return 8448;
return 8449;
}
short SpruceFenceGate();
eBlockFace Facing(short ID);
bool InWall(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace SpruceLeaves
{
constexpr short SpruceLeaves(unsigned char Distance, bool Persistent)
{
if (Distance == 1 && Persistent) return 159;
if (Distance == 1 && !Persistent) return 160;
if (Distance == 2 && Persistent) return 161;
if (Distance == 2 && !Persistent) return 162;
if (Distance == 3 && Persistent) return 163;
if (Distance == 3 && !Persistent) return 164;
if (Distance == 4 && Persistent) return 165;
if (Distance == 4 && !Persistent) return 166;
if (Distance == 5 && Persistent) return 167;
if (Distance == 5 && !Persistent) return 168;
if (Distance == 6 && Persistent) return 169;
if (Distance == 6 && !Persistent) return 170;
if (Distance == 7 && Persistent) return 171;
return 172;
}
short SpruceLeaves();
unsigned char Distance(short ID);
bool Persistent(short ID);
}
namespace SpruceLog
{
enum class Axis
{
X,
Y,
Z
};
constexpr short SpruceLog(enum Axis Axis)
{
if (Axis == Axis::X) return 76;
if (Axis == Axis::Y) return 77;
return 78;
}
short SpruceLog();
enum Axis Axis(short ID);
}
namespace SprucePlanks
{
constexpr short SprucePlanks()
{
return 16;
}
}
namespace SprucePressurePlate
{
constexpr short SprucePressurePlate(bool Powered)
{
if (Powered) return 3875;
return 3876;
}
short SprucePressurePlate();
bool Powered(short ID);
}
namespace SpruceSapling
{
constexpr short SpruceSapling(unsigned char Stage)
{
if (Stage == 0) return 23;
return 24;
}
short SpruceSapling();
unsigned char Stage(short ID);
}
namespace SpruceSign
{
constexpr short SpruceSign(unsigned char Rotation)
{
if (Rotation == 0) return 3414;
if (Rotation == 1) return 3416;
if (Rotation == 2) return 3418;
if (Rotation == 3) return 3420;
if (Rotation == 4) return 3422;
if (Rotation == 5) return 3424;
if (Rotation == 6) return 3426;
if (Rotation == 7) return 3428;
if (Rotation == 8) return 3430;
if (Rotation == 9) return 3432;
if (Rotation == 10) return 3434;
if (Rotation == 11) return 3436;
if (Rotation == 12) return 3438;
if (Rotation == 13) return 3440;
if (Rotation == 14) return 3442;
return 3444;
}
short SpruceSign();
unsigned char Rotation(short ID);
}
namespace SpruceSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short SpruceSlab(enum Type Type)
{
if (Type == Type::Top) return 8307;
if (Type == Type::Bottom) return 8309;
return 8311;
}
short SpruceSlab();
enum Type Type(short ID);
}
namespace SpruceStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short SpruceStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 5405;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 5407;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 5409;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 5411;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 5413;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 5415;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5417;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 5419;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5421;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 5423;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 5425;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 5427;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 5429;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 5431;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 5433;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 5435;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5437;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 5439;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5441;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 5443;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 5445;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 5447;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 5449;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 5451;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 5453;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 5455;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5457;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 5459;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5461;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 5463;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 5465;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 5467;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 5469;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 5471;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 5473;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 5475;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5477;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 5479;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5481;
return 5483;
}
short SpruceStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace SpruceTrapdoor
{
enum class Half
{
Top,
Bottom
};
constexpr short SpruceTrapdoor(eBlockFace Facing, enum Half Half, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Open && Powered) return 4176;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Open && !Powered) return 4178;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && !Open && Powered) return 4180;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && !Open && !Powered) return 4182;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Open && Powered) return 4184;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Open && !Powered) return 4186;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && !Open && Powered) return 4188;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && !Open && !Powered) return 4190;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Open && Powered) return 4192;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Open && !Powered) return 4194;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && !Open && Powered) return 4196;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && !Open && !Powered) return 4198;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Open && Powered) return 4200;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Open && !Powered) return 4202;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && !Open && Powered) return 4204;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && !Open && !Powered) return 4206;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Open && Powered) return 4208;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Open && !Powered) return 4210;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && !Open && Powered) return 4212;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && !Open && !Powered) return 4214;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Open && Powered) return 4216;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Open && !Powered) return 4218;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && !Open && Powered) return 4220;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && !Open && !Powered) return 4222;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Open && Powered) return 4224;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Open && !Powered) return 4226;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && !Open && Powered) return 4228;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && !Open && !Powered) return 4230;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Open && Powered) return 4232;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Open && !Powered) return 4234;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && !Open && Powered) return 4236;
return 4238;
}
short SpruceTrapdoor();
eBlockFace Facing(short ID);
enum Half Half(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace SpruceWallSign
{
constexpr short SpruceWallSign(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 3744;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 3746;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 3748;
return 3750;
}
short SpruceWallSign();
eBlockFace Facing(short ID);
}
namespace SpruceWood
{
enum class Axis
{
X,
Y,
Z
};
constexpr short SpruceWood(enum Axis Axis)
{
if (Axis == Axis::X) return 112;
if (Axis == Axis::Y) return 113;
return 114;
}
short SpruceWood();
enum Axis Axis(short ID);
}
namespace StickyPiston
{
constexpr short StickyPiston(bool Extended, eBlockFace Facing)
{
if (Extended && Facing == eBlockFace::BLOCK_FACE_ZM) return 1329;
if (Extended && Facing == eBlockFace::BLOCK_FACE_XP) return 1330;
if (Extended && Facing == eBlockFace::BLOCK_FACE_ZP) return 1331;
if (Extended && Facing == eBlockFace::BLOCK_FACE_XM) return 1332;
if (Extended && Facing == eBlockFace::BLOCK_FACE_YP) return 1333;
if (Extended && Facing == eBlockFace::BLOCK_FACE_YM) return 1334;
if (!Extended && Facing == eBlockFace::BLOCK_FACE_ZM) return 1335;
if (!Extended && Facing == eBlockFace::BLOCK_FACE_XP) return 1336;
if (!Extended && Facing == eBlockFace::BLOCK_FACE_ZP) return 1337;
if (!Extended && Facing == eBlockFace::BLOCK_FACE_XM) return 1338;
if (!Extended && Facing == eBlockFace::BLOCK_FACE_YP) return 1339;
return 1340;
}
short StickyPiston();
bool Extended(short ID);
eBlockFace Facing(short ID);
}
namespace Stone
{
constexpr short Stone()
{
return 1;
}
}
namespace StoneBrickSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short StoneBrickSlab(enum Type Type)
{
if (Type == Type::Top) return 8379;
if (Type == Type::Bottom) return 8381;
return 8383;
}
short StoneBrickSlab();
enum Type Type(short ID);
}
namespace StoneBrickStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short StoneBrickStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 4933;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 4935;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 4937;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 4939;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 4941;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 4943;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 4945;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 4947;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 4949;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 4951;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 4953;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 4955;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 4957;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 4959;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 4961;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 4963;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 4965;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 4967;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 4969;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 4971;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 4973;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 4975;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 4977;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 4979;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 4981;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 4983;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 4985;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 4987;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 4989;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 4991;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 4993;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 4995;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 4997;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 4999;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 5001;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 5003;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 5005;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 5007;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 5009;
return 5011;
}
short StoneBrickStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace StoneBrickWall
{
enum class East
{
None,
Low,
Tall
};
enum class North
{
None,
Low,
Tall
};
enum class South
{
None,
Low,
Tall
};
enum class West
{
None,
Low,
Tall
};
constexpr short StoneBrickWall(enum East East, enum North North, enum South South, bool Up, enum West West)
{
if (East == East::None && North == North::None && South == South::None && Up && West == West::None) return 12490;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Low) return 12491;
if (East == East::None && North == North::None && South == South::None && Up && West == West::Tall) return 12492;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::None) return 12496;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Low) return 12497;
if (East == East::None && North == North::None && South == South::None && !Up && West == West::Tall) return 12498;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::None) return 12502;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Low) return 12503;
if (East == East::None && North == North::None && South == South::Low && Up && West == West::Tall) return 12504;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::None) return 12508;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Low) return 12509;
if (East == East::None && North == North::None && South == South::Low && !Up && West == West::Tall) return 12510;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::None) return 12514;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Low) return 12515;
if (East == East::None && North == North::None && South == South::Tall && Up && West == West::Tall) return 12516;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::None) return 12520;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Low) return 12521;
if (East == East::None && North == North::None && South == South::Tall && !Up && West == West::Tall) return 12522;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::None) return 12526;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Low) return 12527;
if (East == East::None && North == North::Low && South == South::None && Up && West == West::Tall) return 12528;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::None) return 12532;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Low) return 12533;
if (East == East::None && North == North::Low && South == South::None && !Up && West == West::Tall) return 12534;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::None) return 12538;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Low) return 12539;
if (East == East::None && North == North::Low && South == South::Low && Up && West == West::Tall) return 12540;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::None) return 12544;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Low) return 12545;
if (East == East::None && North == North::Low && South == South::Low && !Up && West == West::Tall) return 12546;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::None) return 12550;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Low) return 12551;
if (East == East::None && North == North::Low && South == South::Tall && Up && West == West::Tall) return 12552;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::None) return 12556;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Low) return 12557;
if (East == East::None && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 12558;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::None) return 12562;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Low) return 12563;
if (East == East::None && North == North::Tall && South == South::None && Up && West == West::Tall) return 12564;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::None) return 12568;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Low) return 12569;
if (East == East::None && North == North::Tall && South == South::None && !Up && West == West::Tall) return 12570;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::None) return 12574;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Low) return 12575;
if (East == East::None && North == North::Tall && South == South::Low && Up && West == West::Tall) return 12576;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::None) return 12580;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Low) return 12581;
if (East == East::None && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 12582;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::None) return 12586;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Low) return 12587;
if (East == East::None && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 12588;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::None) return 12592;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 12593;
if (East == East::None && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 12594;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::None) return 12598;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Low) return 12599;
if (East == East::Low && North == North::None && South == South::None && Up && West == West::Tall) return 12600;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::None) return 12604;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Low) return 12605;
if (East == East::Low && North == North::None && South == South::None && !Up && West == West::Tall) return 12606;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::None) return 12610;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Low) return 12611;
if (East == East::Low && North == North::None && South == South::Low && Up && West == West::Tall) return 12612;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::None) return 12616;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Low) return 12617;
if (East == East::Low && North == North::None && South == South::Low && !Up && West == West::Tall) return 12618;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::None) return 12622;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Low) return 12623;
if (East == East::Low && North == North::None && South == South::Tall && Up && West == West::Tall) return 12624;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::None) return 12628;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Low) return 12629;
if (East == East::Low && North == North::None && South == South::Tall && !Up && West == West::Tall) return 12630;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::None) return 12634;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Low) return 12635;
if (East == East::Low && North == North::Low && South == South::None && Up && West == West::Tall) return 12636;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::None) return 12640;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Low) return 12641;
if (East == East::Low && North == North::Low && South == South::None && !Up && West == West::Tall) return 12642;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::None) return 12646;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Low) return 12647;
if (East == East::Low && North == North::Low && South == South::Low && Up && West == West::Tall) return 12648;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::None) return 12652;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Low) return 12653;
if (East == East::Low && North == North::Low && South == South::Low && !Up && West == West::Tall) return 12654;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::None) return 12658;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Low) return 12659;
if (East == East::Low && North == North::Low && South == South::Tall && Up && West == West::Tall) return 12660;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::None) return 12664;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Low) return 12665;
if (East == East::Low && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 12666;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::None) return 12670;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Low) return 12671;
if (East == East::Low && North == North::Tall && South == South::None && Up && West == West::Tall) return 12672;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::None) return 12676;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Low) return 12677;
if (East == East::Low && North == North::Tall && South == South::None && !Up && West == West::Tall) return 12678;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::None) return 12682;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Low) return 12683;
if (East == East::Low && North == North::Tall && South == South::Low && Up && West == West::Tall) return 12684;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::None) return 12688;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Low) return 12689;
if (East == East::Low && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 12690;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::None) return 12694;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Low) return 12695;
if (East == East::Low && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 12696;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::None) return 12700;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 12701;
if (East == East::Low && North == North::Tall && South == South::Tall && !Up && West == West::Tall) return 12702;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::None) return 12706;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Low) return 12707;
if (East == East::Tall && North == North::None && South == South::None && Up && West == West::Tall) return 12708;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::None) return 12712;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Low) return 12713;
if (East == East::Tall && North == North::None && South == South::None && !Up && West == West::Tall) return 12714;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::None) return 12718;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Low) return 12719;
if (East == East::Tall && North == North::None && South == South::Low && Up && West == West::Tall) return 12720;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::None) return 12724;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Low) return 12725;
if (East == East::Tall && North == North::None && South == South::Low && !Up && West == West::Tall) return 12726;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::None) return 12730;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Low) return 12731;
if (East == East::Tall && North == North::None && South == South::Tall && Up && West == West::Tall) return 12732;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::None) return 12736;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Low) return 12737;
if (East == East::Tall && North == North::None && South == South::Tall && !Up && West == West::Tall) return 12738;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::None) return 12742;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Low) return 12743;
if (East == East::Tall && North == North::Low && South == South::None && Up && West == West::Tall) return 12744;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::None) return 12748;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Low) return 12749;
if (East == East::Tall && North == North::Low && South == South::None && !Up && West == West::Tall) return 12750;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::None) return 12754;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Low) return 12755;
if (East == East::Tall && North == North::Low && South == South::Low && Up && West == West::Tall) return 12756;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::None) return 12760;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Low) return 12761;
if (East == East::Tall && North == North::Low && South == South::Low && !Up && West == West::Tall) return 12762;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::None) return 12766;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Low) return 12767;
if (East == East::Tall && North == North::Low && South == South::Tall && Up && West == West::Tall) return 12768;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::None) return 12772;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Low) return 12773;
if (East == East::Tall && North == North::Low && South == South::Tall && !Up && West == West::Tall) return 12774;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::None) return 12778;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Low) return 12779;
if (East == East::Tall && North == North::Tall && South == South::None && Up && West == West::Tall) return 12780;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::None) return 12784;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Low) return 12785;
if (East == East::Tall && North == North::Tall && South == South::None && !Up && West == West::Tall) return 12786;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::None) return 12790;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Low) return 12791;
if (East == East::Tall && North == North::Tall && South == South::Low && Up && West == West::Tall) return 12792;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::None) return 12796;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Low) return 12797;
if (East == East::Tall && North == North::Tall && South == South::Low && !Up && West == West::Tall) return 12798;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::None) return 12802;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Low) return 12803;
if (East == East::Tall && North == North::Tall && South == South::Tall && Up && West == West::Tall) return 12804;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::None) return 12808;
if (East == East::Tall && North == North::Tall && South == South::Tall && !Up && West == West::Low) return 12809;
return 12810;
}
short StoneBrickWall();
enum East East(short ID);
enum North North(short ID);
enum South South(short ID);
bool Up(short ID);
enum West West(short ID);
}
namespace StoneBricks
{
constexpr short StoneBricks()
{
return 4495;
}
}
namespace StoneButton
{
enum class Face
{
Floor,
Wall,
Ceiling
};
constexpr short StoneButton(enum Face Face, eBlockFace Facing, bool Powered)
{
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 3897;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 3898;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 3899;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 3900;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 3901;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 3902;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 3903;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 3904;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 3905;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 3906;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 3907;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 3908;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 3909;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 3910;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 3911;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 3912;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 3913;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 3914;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 3915;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 3916;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 3917;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 3918;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 3919;
return 3920;
}
short StoneButton();
enum Face Face(short ID);
eBlockFace Facing(short ID);
bool Powered(short ID);
}
namespace StonePressurePlate
{
constexpr short StonePressurePlate(bool Powered)
{
if (Powered) return 3807;
return 3808;
}
short StonePressurePlate();
bool Powered(short ID);
}
namespace StoneSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short StoneSlab(enum Type Type)
{
if (Type == Type::Top) return 8337;
if (Type == Type::Bottom) return 8339;
return 8341;
}
short StoneSlab();
enum Type Type(short ID);
}
namespace StoneStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short StoneStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 10150;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 10152;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 10154;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 10156;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 10158;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 10160;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10162;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10164;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10166;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10168;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 10170;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 10172;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 10174;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 10176;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 10178;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 10180;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10182;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10184;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10186;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 10188;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 10190;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 10192;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 10194;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 10196;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 10198;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 10200;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10202;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 10204;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10206;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 10208;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 10210;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 10212;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 10214;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 10216;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 10218;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 10220;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 10222;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 10224;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 10226;
return 10228;
}
short StoneStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace Stonecutter
{
constexpr short Stonecutter(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 14850;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 14851;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 14852;
return 14853;
}
short Stonecutter();
eBlockFace Facing(short ID);
}
namespace StrippedAcaciaLog
{
enum class Axis
{
X,
Y,
Z
};
constexpr short StrippedAcaciaLog(enum Axis Axis)
{
if (Axis == Axis::X) return 100;
if (Axis == Axis::Y) return 101;
return 102;
}
short StrippedAcaciaLog();
enum Axis Axis(short ID);
}
namespace StrippedAcaciaWood
{
enum class Axis
{
X,
Y,
Z
};
constexpr short StrippedAcaciaWood(enum Axis Axis)
{
if (Axis == Axis::X) return 139;
if (Axis == Axis::Y) return 140;
return 141;
}
short StrippedAcaciaWood();
enum Axis Axis(short ID);
}
namespace StrippedBirchLog
{
enum class Axis
{
X,
Y,
Z
};
constexpr short StrippedBirchLog(enum Axis Axis)
{
if (Axis == Axis::X) return 94;
if (Axis == Axis::Y) return 95;
return 96;
}
short StrippedBirchLog();
enum Axis Axis(short ID);
}
namespace StrippedBirchWood
{
enum class Axis
{
X,
Y,
Z
};
constexpr short StrippedBirchWood(enum Axis Axis)
{
if (Axis == Axis::X) return 133;
if (Axis == Axis::Y) return 134;
return 135;
}
short StrippedBirchWood();
enum Axis Axis(short ID);
}
namespace StrippedCrimsonHyphae
{
enum class Axis
{
X,
Y,
Z
};
constexpr short StrippedCrimsonHyphae(enum Axis Axis)
{
if (Axis == Axis::X) return 14984;
if (Axis == Axis::Y) return 14985;
return 14986;
}
short StrippedCrimsonHyphae();
enum Axis Axis(short ID);
}
namespace StrippedCrimsonStem
{
enum class Axis
{
X,
Y,
Z
};
constexpr short StrippedCrimsonStem(enum Axis Axis)
{
if (Axis == Axis::X) return 14978;
if (Axis == Axis::Y) return 14979;
return 14980;
}
short StrippedCrimsonStem();
enum Axis Axis(short ID);
}
namespace StrippedDarkOakLog
{
enum class Axis
{
X,
Y,
Z
};
constexpr short StrippedDarkOakLog(enum Axis Axis)
{
if (Axis == Axis::X) return 103;
if (Axis == Axis::Y) return 104;
return 105;
}
short StrippedDarkOakLog();
enum Axis Axis(short ID);
}
namespace StrippedDarkOakWood
{
enum class Axis
{
X,
Y,
Z
};
constexpr short StrippedDarkOakWood(enum Axis Axis)
{
if (Axis == Axis::X) return 142;
if (Axis == Axis::Y) return 143;
return 144;
}
short StrippedDarkOakWood();
enum Axis Axis(short ID);
}
namespace StrippedJungleLog
{
enum class Axis
{
X,
Y,
Z
};
constexpr short StrippedJungleLog(enum Axis Axis)
{
if (Axis == Axis::X) return 97;
if (Axis == Axis::Y) return 98;
return 99;
}
short StrippedJungleLog();
enum Axis Axis(short ID);
}
namespace StrippedJungleWood
{
enum class Axis
{
X,
Y,
Z
};
constexpr short StrippedJungleWood(enum Axis Axis)
{
if (Axis == Axis::X) return 136;
if (Axis == Axis::Y) return 137;
return 138;
}
short StrippedJungleWood();
enum Axis Axis(short ID);
}
namespace StrippedOakLog
{
enum class Axis
{
X,
Y,
Z
};
constexpr short StrippedOakLog(enum Axis Axis)
{
if (Axis == Axis::X) return 106;
if (Axis == Axis::Y) return 107;
return 108;
}
short StrippedOakLog();
enum Axis Axis(short ID);
}
namespace StrippedOakWood
{
enum class Axis
{
X,
Y,
Z
};
constexpr short StrippedOakWood(enum Axis Axis)
{
if (Axis == Axis::X) return 127;
if (Axis == Axis::Y) return 128;
return 129;
}
short StrippedOakWood();
enum Axis Axis(short ID);
}
namespace StrippedSpruceLog
{
enum class Axis
{
X,
Y,
Z
};
constexpr short StrippedSpruceLog(enum Axis Axis)
{
if (Axis == Axis::X) return 91;
if (Axis == Axis::Y) return 92;
return 93;
}
short StrippedSpruceLog();
enum Axis Axis(short ID);
}
namespace StrippedSpruceWood
{
enum class Axis
{
X,
Y,
Z
};
constexpr short StrippedSpruceWood(enum Axis Axis)
{
if (Axis == Axis::X) return 130;
if (Axis == Axis::Y) return 131;
return 132;
}
short StrippedSpruceWood();
enum Axis Axis(short ID);
}
namespace StrippedWarpedHyphae
{
enum class Axis
{
X,
Y,
Z
};
constexpr short StrippedWarpedHyphae(enum Axis Axis)
{
if (Axis == Axis::X) return 14967;
if (Axis == Axis::Y) return 14968;
return 14969;
}
short StrippedWarpedHyphae();
enum Axis Axis(short ID);
}
namespace StrippedWarpedStem
{
enum class Axis
{
X,
Y,
Z
};
constexpr short StrippedWarpedStem(enum Axis Axis)
{
if (Axis == Axis::X) return 14961;
if (Axis == Axis::Y) return 14962;
return 14963;
}
short StrippedWarpedStem();
enum Axis Axis(short ID);
}
namespace StructureBlock
{
enum class Mode
{
Save,
Load,
Corner,
Data
};
constexpr short StructureBlock(enum Mode Mode)
{
if (Mode == Mode::Save) return 15735;
if (Mode == Mode::Load) return 15736;
if (Mode == Mode::Corner) return 15737;
return 15738;
}
short StructureBlock();
enum Mode Mode(short ID);
}
namespace StructureVoid
{
constexpr short StructureVoid()
{
return 9259;
}
}
namespace SugarCane
{
constexpr short SugarCane(unsigned char Age)
{
if (Age == 0) return 3948;
if (Age == 1) return 3949;
if (Age == 2) return 3950;
if (Age == 3) return 3951;
if (Age == 4) return 3952;
if (Age == 5) return 3953;
if (Age == 6) return 3954;
if (Age == 7) return 3955;
if (Age == 8) return 3956;
if (Age == 9) return 3957;
if (Age == 10) return 3958;
if (Age == 11) return 3959;
if (Age == 12) return 3960;
if (Age == 13) return 3961;
if (Age == 14) return 3962;
return 3963;
}
short SugarCane();
unsigned char Age(short ID);
}
namespace Sunflower
{
enum class Half
{
Upper,
Lower
};
constexpr short Sunflower(enum Half Half)
{
if (Half == Half::Upper) return 7885;
return 7886;
}
short Sunflower();
enum Half Half(short ID);
}
namespace SweetBerryBush
{
constexpr short SweetBerryBush(unsigned char Age)
{
if (Age == 0) return 14954;
if (Age == 1) return 14955;
if (Age == 2) return 14956;
return 14957;
}
short SweetBerryBush();
unsigned char Age(short ID);
}
namespace TNT
{
constexpr short TNT(bool Unstable)
{
if (Unstable) return 1430;
return 1431;
}
short TNT();
bool Unstable(short ID);
}
namespace TallGrass
{
enum class Half
{
Upper,
Lower
};
constexpr short TallGrass(enum Half Half)
{
if (Half == Half::Upper) return 7893;
return 7894;
}
short TallGrass();
enum Half Half(short ID);
}
namespace TallSeagrass
{
enum class Half
{
Upper,
Lower
};
constexpr short TallSeagrass(enum Half Half)
{
if (Half == Half::Upper) return 1346;
return 1347;
}
short TallSeagrass();
enum Half Half(short ID);
}
namespace Target
{
constexpr short Target(unsigned char Power)
{
if (Power == 0) return 15760;
if (Power == 1) return 15761;
if (Power == 2) return 15762;
if (Power == 3) return 15763;
if (Power == 4) return 15764;
if (Power == 5) return 15765;
if (Power == 6) return 15766;
if (Power == 7) return 15767;
if (Power == 8) return 15768;
if (Power == 9) return 15769;
if (Power == 10) return 15770;
if (Power == 11) return 15771;
if (Power == 12) return 15772;
if (Power == 13) return 15773;
if (Power == 14) return 15774;
return 15775;
}
short Target();
unsigned char Power(short ID);
}
namespace Terracotta
{
constexpr short Terracotta()
{
return 7882;
}
}
namespace Torch
{
constexpr short Torch()
{
return 1435;
}
}
namespace TrappedChest
{
enum class Type
{
Single,
Left,
Right
};
constexpr short TrappedChest(eBlockFace Facing, enum Type Type)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Type == Type::Single) return 6623;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Type == Type::Left) return 6625;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Type == Type::Right) return 6627;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Type == Type::Single) return 6629;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Type == Type::Left) return 6631;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Type == Type::Right) return 6633;
if (Facing == eBlockFace::BLOCK_FACE_XM && Type == Type::Single) return 6635;
if (Facing == eBlockFace::BLOCK_FACE_XM && Type == Type::Left) return 6637;
if (Facing == eBlockFace::BLOCK_FACE_XM && Type == Type::Right) return 6639;
if (Facing == eBlockFace::BLOCK_FACE_XP && Type == Type::Single) return 6641;
if (Facing == eBlockFace::BLOCK_FACE_XP && Type == Type::Left) return 6643;
return 6645;
}
short TrappedChest();
eBlockFace Facing(short ID);
enum Type Type(short ID);
}
namespace Tripwire
{
constexpr short Tripwire(bool Attached, bool Disarmed, bool East, bool North, bool Powered, bool South, bool West)
{
if (Attached && Disarmed && East && North && Powered && South && West) return 5275;
if (Attached && Disarmed && East && North && Powered && South && !West) return 5276;
if (Attached && Disarmed && East && North && Powered && !South && West) return 5277;
if (Attached && Disarmed && East && North && Powered && !South && !West) return 5278;
if (Attached && Disarmed && East && North && !Powered && South && West) return 5279;
if (Attached && Disarmed && East && North && !Powered && South && !West) return 5280;
if (Attached && Disarmed && East && North && !Powered && !South && West) return 5281;
if (Attached && Disarmed && East && North && !Powered && !South && !West) return 5282;
if (Attached && Disarmed && East && !North && Powered && South && West) return 5283;
if (Attached && Disarmed && East && !North && Powered && South && !West) return 5284;
if (Attached && Disarmed && East && !North && Powered && !South && West) return 5285;
if (Attached && Disarmed && East && !North && Powered && !South && !West) return 5286;
if (Attached && Disarmed && East && !North && !Powered && South && West) return 5287;
if (Attached && Disarmed && East && !North && !Powered && South && !West) return 5288;
if (Attached && Disarmed && East && !North && !Powered && !South && West) return 5289;
if (Attached && Disarmed && East && !North && !Powered && !South && !West) return 5290;
if (Attached && Disarmed && !East && North && Powered && South && West) return 5291;
if (Attached && Disarmed && !East && North && Powered && South && !West) return 5292;
if (Attached && Disarmed && !East && North && Powered && !South && West) return 5293;
if (Attached && Disarmed && !East && North && Powered && !South && !West) return 5294;
if (Attached && Disarmed && !East && North && !Powered && South && West) return 5295;
if (Attached && Disarmed && !East && North && !Powered && South && !West) return 5296;
if (Attached && Disarmed && !East && North && !Powered && !South && West) return 5297;
if (Attached && Disarmed && !East && North && !Powered && !South && !West) return 5298;
if (Attached && Disarmed && !East && !North && Powered && South && West) return 5299;
if (Attached && Disarmed && !East && !North && Powered && South && !West) return 5300;
if (Attached && Disarmed && !East && !North && Powered && !South && West) return 5301;
if (Attached && Disarmed && !East && !North && Powered && !South && !West) return 5302;
if (Attached && Disarmed && !East && !North && !Powered && South && West) return 5303;
if (Attached && Disarmed && !East && !North && !Powered && South && !West) return 5304;
if (Attached && Disarmed && !East && !North && !Powered && !South && West) return 5305;
if (Attached && Disarmed && !East && !North && !Powered && !South && !West) return 5306;
if (Attached && !Disarmed && East && North && Powered && South && West) return 5307;
if (Attached && !Disarmed && East && North && Powered && South && !West) return 5308;
if (Attached && !Disarmed && East && North && Powered && !South && West) return 5309;
if (Attached && !Disarmed && East && North && Powered && !South && !West) return 5310;
if (Attached && !Disarmed && East && North && !Powered && South && West) return 5311;
if (Attached && !Disarmed && East && North && !Powered && South && !West) return 5312;
if (Attached && !Disarmed && East && North && !Powered && !South && West) return 5313;
if (Attached && !Disarmed && East && North && !Powered && !South && !West) return 5314;
if (Attached && !Disarmed && East && !North && Powered && South && West) return 5315;
if (Attached && !Disarmed && East && !North && Powered && South && !West) return 5316;
if (Attached && !Disarmed && East && !North && Powered && !South && West) return 5317;
if (Attached && !Disarmed && East && !North && Powered && !South && !West) return 5318;
if (Attached && !Disarmed && East && !North && !Powered && South && West) return 5319;
if (Attached && !Disarmed && East && !North && !Powered && South && !West) return 5320;
if (Attached && !Disarmed && East && !North && !Powered && !South && West) return 5321;
if (Attached && !Disarmed && East && !North && !Powered && !South && !West) return 5322;
if (Attached && !Disarmed && !East && North && Powered && South && West) return 5323;
if (Attached && !Disarmed && !East && North && Powered && South && !West) return 5324;
if (Attached && !Disarmed && !East && North && Powered && !South && West) return 5325;
if (Attached && !Disarmed && !East && North && Powered && !South && !West) return 5326;
if (Attached && !Disarmed && !East && North && !Powered && South && West) return 5327;
if (Attached && !Disarmed && !East && North && !Powered && South && !West) return 5328;
if (Attached && !Disarmed && !East && North && !Powered && !South && West) return 5329;
if (Attached && !Disarmed && !East && North && !Powered && !South && !West) return 5330;
if (Attached && !Disarmed && !East && !North && Powered && South && West) return 5331;
if (Attached && !Disarmed && !East && !North && Powered && South && !West) return 5332;
if (Attached && !Disarmed && !East && !North && Powered && !South && West) return 5333;
if (Attached && !Disarmed && !East && !North && Powered && !South && !West) return 5334;
if (Attached && !Disarmed && !East && !North && !Powered && South && West) return 5335;
if (Attached && !Disarmed && !East && !North && !Powered && South && !West) return 5336;
if (Attached && !Disarmed && !East && !North && !Powered && !South && West) return 5337;
if (Attached && !Disarmed && !East && !North && !Powered && !South && !West) return 5338;
if (!Attached && Disarmed && East && North && Powered && South && West) return 5339;
if (!Attached && Disarmed && East && North && Powered && South && !West) return 5340;
if (!Attached && Disarmed && East && North && Powered && !South && West) return 5341;
if (!Attached && Disarmed && East && North && Powered && !South && !West) return 5342;
if (!Attached && Disarmed && East && North && !Powered && South && West) return 5343;
if (!Attached && Disarmed && East && North && !Powered && South && !West) return 5344;
if (!Attached && Disarmed && East && North && !Powered && !South && West) return 5345;
if (!Attached && Disarmed && East && North && !Powered && !South && !West) return 5346;
if (!Attached && Disarmed && East && !North && Powered && South && West) return 5347;
if (!Attached && Disarmed && East && !North && Powered && South && !West) return 5348;
if (!Attached && Disarmed && East && !North && Powered && !South && West) return 5349;
if (!Attached && Disarmed && East && !North && Powered && !South && !West) return 5350;
if (!Attached && Disarmed && East && !North && !Powered && South && West) return 5351;
if (!Attached && Disarmed && East && !North && !Powered && South && !West) return 5352;
if (!Attached && Disarmed && East && !North && !Powered && !South && West) return 5353;
if (!Attached && Disarmed && East && !North && !Powered && !South && !West) return 5354;
if (!Attached && Disarmed && !East && North && Powered && South && West) return 5355;
if (!Attached && Disarmed && !East && North && Powered && South && !West) return 5356;
if (!Attached && Disarmed && !East && North && Powered && !South && West) return 5357;
if (!Attached && Disarmed && !East && North && Powered && !South && !West) return 5358;
if (!Attached && Disarmed && !East && North && !Powered && South && West) return 5359;
if (!Attached && Disarmed && !East && North && !Powered && South && !West) return 5360;
if (!Attached && Disarmed && !East && North && !Powered && !South && West) return 5361;
if (!Attached && Disarmed && !East && North && !Powered && !South && !West) return 5362;
if (!Attached && Disarmed && !East && !North && Powered && South && West) return 5363;
if (!Attached && Disarmed && !East && !North && Powered && South && !West) return 5364;
if (!Attached && Disarmed && !East && !North && Powered && !South && West) return 5365;
if (!Attached && Disarmed && !East && !North && Powered && !South && !West) return 5366;
if (!Attached && Disarmed && !East && !North && !Powered && South && West) return 5367;
if (!Attached && Disarmed && !East && !North && !Powered && South && !West) return 5368;
if (!Attached && Disarmed && !East && !North && !Powered && !South && West) return 5369;
if (!Attached && Disarmed && !East && !North && !Powered && !South && !West) return 5370;
if (!Attached && !Disarmed && East && North && Powered && South && West) return 5371;
if (!Attached && !Disarmed && East && North && Powered && South && !West) return 5372;
if (!Attached && !Disarmed && East && North && Powered && !South && West) return 5373;
if (!Attached && !Disarmed && East && North && Powered && !South && !West) return 5374;
if (!Attached && !Disarmed && East && North && !Powered && South && West) return 5375;
if (!Attached && !Disarmed && East && North && !Powered && South && !West) return 5376;
if (!Attached && !Disarmed && East && North && !Powered && !South && West) return 5377;
if (!Attached && !Disarmed && East && North && !Powered && !South && !West) return 5378;
if (!Attached && !Disarmed && East && !North && Powered && South && West) return 5379;
if (!Attached && !Disarmed && East && !North && Powered && South && !West) return 5380;
if (!Attached && !Disarmed && East && !North && Powered && !South && West) return 5381;
if (!Attached && !Disarmed && East && !North && Powered && !South && !West) return 5382;
if (!Attached && !Disarmed && East && !North && !Powered && South && West) return 5383;
if (!Attached && !Disarmed && East && !North && !Powered && South && !West) return 5384;
if (!Attached && !Disarmed && East && !North && !Powered && !South && West) return 5385;
if (!Attached && !Disarmed && East && !North && !Powered && !South && !West) return 5386;
if (!Attached && !Disarmed && !East && North && Powered && South && West) return 5387;
if (!Attached && !Disarmed && !East && North && Powered && South && !West) return 5388;
if (!Attached && !Disarmed && !East && North && Powered && !South && West) return 5389;
if (!Attached && !Disarmed && !East && North && Powered && !South && !West) return 5390;
if (!Attached && !Disarmed && !East && North && !Powered && South && West) return 5391;
if (!Attached && !Disarmed && !East && North && !Powered && South && !West) return 5392;
if (!Attached && !Disarmed && !East && North && !Powered && !South && West) return 5393;
if (!Attached && !Disarmed && !East && North && !Powered && !South && !West) return 5394;
if (!Attached && !Disarmed && !East && !North && Powered && South && West) return 5395;
if (!Attached && !Disarmed && !East && !North && Powered && South && !West) return 5396;
if (!Attached && !Disarmed && !East && !North && Powered && !South && West) return 5397;
if (!Attached && !Disarmed && !East && !North && Powered && !South && !West) return 5398;
if (!Attached && !Disarmed && !East && !North && !Powered && South && West) return 5399;
if (!Attached && !Disarmed && !East && !North && !Powered && South && !West) return 5400;
if (!Attached && !Disarmed && !East && !North && !Powered && !South && West) return 5401;
return 5402;
}
short Tripwire();
bool Attached(short ID);
bool Disarmed(short ID);
bool East(short ID);
bool North(short ID);
bool Powered(short ID);
bool South(short ID);
bool West(short ID);
}
namespace TripwireHook
{
constexpr short TripwireHook(bool Attached, eBlockFace Facing, bool Powered)
{
if (Attached && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 5259;
if (Attached && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 5260;
if (Attached && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 5261;
if (Attached && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 5262;
if (Attached && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 5263;
if (Attached && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 5264;
if (Attached && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 5265;
if (Attached && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 5266;
if (!Attached && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 5267;
if (!Attached && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 5268;
if (!Attached && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 5269;
if (!Attached && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 5270;
if (!Attached && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 5271;
if (!Attached && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 5272;
if (!Attached && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 5273;
return 5274;
}
short TripwireHook();
bool Attached(short ID);
eBlockFace Facing(short ID);
bool Powered(short ID);
}
namespace TubeCoral
{
constexpr short TubeCoral()
{
return 9531;
}
}
namespace TubeCoralBlock
{
constexpr short TubeCoralBlock()
{
return 9515;
}
}
namespace TubeCoralFan
{
constexpr short TubeCoralFan()
{
return 9551;
}
}
namespace TubeCoralWallFan
{
constexpr short TubeCoralWallFan(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9601;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9603;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9605;
return 9607;
}
short TubeCoralWallFan();
eBlockFace Facing(short ID);
}
namespace TurtleEgg
{
constexpr short TurtleEgg(unsigned char Eggs, unsigned char Hatch)
{
if (Eggs == 1 && Hatch == 0) return 9498;
if (Eggs == 1 && Hatch == 1) return 9499;
if (Eggs == 1 && Hatch == 2) return 9500;
if (Eggs == 2 && Hatch == 0) return 9501;
if (Eggs == 2 && Hatch == 1) return 9502;
if (Eggs == 2 && Hatch == 2) return 9503;
if (Eggs == 3 && Hatch == 0) return 9504;
if (Eggs == 3 && Hatch == 1) return 9505;
if (Eggs == 3 && Hatch == 2) return 9506;
if (Eggs == 4 && Hatch == 0) return 9507;
if (Eggs == 4 && Hatch == 1) return 9508;
return 9509;
}
short TurtleEgg();
unsigned char Eggs(short ID);
unsigned char Hatch(short ID);
}
namespace TwistingVines
{
constexpr short TwistingVines(unsigned char Age)
{
if (Age == 0) return 15017;
if (Age == 1) return 15018;
if (Age == 2) return 15019;
if (Age == 3) return 15020;
if (Age == 4) return 15021;
if (Age == 5) return 15022;
if (Age == 6) return 15023;
if (Age == 7) return 15024;
if (Age == 8) return 15025;
if (Age == 9) return 15026;
if (Age == 10) return 15027;
if (Age == 11) return 15028;
if (Age == 12) return 15029;
if (Age == 13) return 15030;
if (Age == 14) return 15031;
if (Age == 15) return 15032;
if (Age == 16) return 15033;
if (Age == 17) return 15034;
if (Age == 18) return 15035;
if (Age == 19) return 15036;
if (Age == 20) return 15037;
if (Age == 21) return 15038;
if (Age == 22) return 15039;
if (Age == 23) return 15040;
if (Age == 24) return 15041;
return 15042;
}
short TwistingVines();
unsigned char Age(short ID);
}
namespace TwistingVinesPlant
{
constexpr short TwistingVinesPlant()
{
return 15043;
}
}
namespace Vine
{
constexpr short Vine(bool East, bool North, bool South, bool Up, bool West)
{
if (East && North && South && Up && West) return 4788;
if (East && North && South && Up && !West) return 4789;
if (East && North && South && !Up && West) return 4790;
if (East && North && South && !Up && !West) return 4791;
if (East && North && !South && Up && West) return 4792;
if (East && North && !South && Up && !West) return 4793;
if (East && North && !South && !Up && West) return 4794;
if (East && North && !South && !Up && !West) return 4795;
if (East && !North && South && Up && West) return 4796;
if (East && !North && South && Up && !West) return 4797;
if (East && !North && South && !Up && West) return 4798;
if (East && !North && South && !Up && !West) return 4799;
if (East && !North && !South && Up && West) return 4800;
if (East && !North && !South && Up && !West) return 4801;
if (East && !North && !South && !Up && West) return 4802;
if (East && !North && !South && !Up && !West) return 4803;
if (!East && North && South && Up && West) return 4804;
if (!East && North && South && Up && !West) return 4805;
if (!East && North && South && !Up && West) return 4806;
if (!East && North && South && !Up && !West) return 4807;
if (!East && North && !South && Up && West) return 4808;
if (!East && North && !South && Up && !West) return 4809;
if (!East && North && !South && !Up && West) return 4810;
if (!East && North && !South && !Up && !West) return 4811;
if (!East && !North && South && Up && West) return 4812;
if (!East && !North && South && Up && !West) return 4813;
if (!East && !North && South && !Up && West) return 4814;
if (!East && !North && South && !Up && !West) return 4815;
if (!East && !North && !South && Up && West) return 4816;
if (!East && !North && !South && Up && !West) return 4817;
if (!East && !North && !South && !Up && West) return 4818;
return 4819;
}
short Vine();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool Up(short ID);
bool West(short ID);
}
namespace VoidAir
{
constexpr short VoidAir()
{
return 9665;
}
}
namespace WallTorch
{
constexpr short WallTorch(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 1436;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 1437;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 1438;
return 1439;
}
short WallTorch();
eBlockFace Facing(short ID);
}
namespace WarpedButton
{
enum class Face
{
Floor,
Wall,
Ceiling
};
constexpr short WarpedButton(enum Face Face, eBlockFace Facing, bool Powered)
{
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 15503;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 15504;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 15505;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 15506;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 15507;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 15508;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 15509;
if (Face == Face::Floor && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 15510;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 15511;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 15512;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 15513;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 15514;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 15515;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 15516;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 15517;
if (Face == Face::Wall && Facing == eBlockFace::BLOCK_FACE_XP && !Powered) return 15518;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && Powered) return 15519;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZM && !Powered) return 15520;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && Powered) return 15521;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_ZP && !Powered) return 15522;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && Powered) return 15523;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XM && !Powered) return 15524;
if (Face == Face::Ceiling && Facing == eBlockFace::BLOCK_FACE_XP && Powered) return 15525;
return 15526;
}
short WarpedButton();
enum Face Face(short ID);
eBlockFace Facing(short ID);
bool Powered(short ID);
}
namespace WarpedDoor
{
enum class Half
{
Upper,
Lower
};
enum class Hinge
{
Left,
Right
};
constexpr short WarpedDoor(eBlockFace Facing, enum Half Half, enum Hinge Hinge, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 15591;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 15592;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 15593;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 15594;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 15595;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 15596;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 15597;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 15598;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 15599;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 15600;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 15601;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 15602;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 15603;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 15604;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 15605;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 15606;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 15607;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 15608;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 15609;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 15610;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 15611;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 15612;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 15613;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 15614;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 15615;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 15616;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 15617;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 15618;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 15619;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 15620;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 15621;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 15622;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 15623;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 15624;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 15625;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 15626;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 15627;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 15628;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 15629;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 15630;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 15631;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 15632;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 15633;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 15634;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 15635;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 15636;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 15637;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Lower && Hinge == Hinge::Right && !Open && !Powered) return 15638;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && Open && Powered) return 15639;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && Open && !Powered) return 15640;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && !Open && Powered) return 15641;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Left && !Open && !Powered) return 15642;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && Open && Powered) return 15643;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && Open && !Powered) return 15644;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && !Open && Powered) return 15645;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Upper && Hinge == Hinge::Right && !Open && !Powered) return 15646;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && Open && Powered) return 15647;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && Open && !Powered) return 15648;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && !Open && Powered) return 15649;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Left && !Open && !Powered) return 15650;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && Open && Powered) return 15651;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && Open && !Powered) return 15652;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Lower && Hinge == Hinge::Right && !Open && Powered) return 15653;
return 15654;
}
short WarpedDoor();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Hinge Hinge(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace WarpedFence
{
constexpr short WarpedFence(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 15097;
if (East && North && South && !West) return 15098;
if (East && North && !South && West) return 15101;
if (East && North && !South && !West) return 15102;
if (East && !North && South && West) return 15105;
if (East && !North && South && !West) return 15106;
if (East && !North && !South && West) return 15109;
if (East && !North && !South && !West) return 15110;
if (!East && North && South && West) return 15113;
if (!East && North && South && !West) return 15114;
if (!East && North && !South && West) return 15117;
if (!East && North && !South && !West) return 15118;
if (!East && !North && South && West) return 15121;
if (!East && !North && South && !West) return 15122;
if (!East && !North && !South && West) return 15125;
return 15126;
}
short WarpedFence();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace WarpedFenceGate
{
constexpr short WarpedFenceGate(eBlockFace Facing, bool InWall, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && Open && Powered) return 15287;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && Open && !Powered) return 15288;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && !Open && Powered) return 15289;
if (Facing == eBlockFace::BLOCK_FACE_ZM && InWall && !Open && !Powered) return 15290;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && Open && Powered) return 15291;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && Open && !Powered) return 15292;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && !Open && Powered) return 15293;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !InWall && !Open && !Powered) return 15294;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && Open && Powered) return 15295;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && Open && !Powered) return 15296;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && !Open && Powered) return 15297;
if (Facing == eBlockFace::BLOCK_FACE_ZP && InWall && !Open && !Powered) return 15298;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && Open && Powered) return 15299;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && Open && !Powered) return 15300;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && !Open && Powered) return 15301;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !InWall && !Open && !Powered) return 15302;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && Open && Powered) return 15303;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && Open && !Powered) return 15304;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && !Open && Powered) return 15305;
if (Facing == eBlockFace::BLOCK_FACE_XM && InWall && !Open && !Powered) return 15306;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && Open && Powered) return 15307;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && Open && !Powered) return 15308;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && !Open && Powered) return 15309;
if (Facing == eBlockFace::BLOCK_FACE_XM && !InWall && !Open && !Powered) return 15310;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && Open && Powered) return 15311;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && Open && !Powered) return 15312;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && !Open && Powered) return 15313;
if (Facing == eBlockFace::BLOCK_FACE_XP && InWall && !Open && !Powered) return 15314;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && Open && Powered) return 15315;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && Open && !Powered) return 15316;
if (Facing == eBlockFace::BLOCK_FACE_XP && !InWall && !Open && Powered) return 15317;
return 15318;
}
short WarpedFenceGate();
eBlockFace Facing(short ID);
bool InWall(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace WarpedFungus
{
constexpr short WarpedFungus()
{
return 14971;
}
}
namespace WarpedHyphae
{
enum class Axis
{
X,
Y,
Z
};
constexpr short WarpedHyphae(enum Axis Axis)
{
if (Axis == Axis::X) return 14964;
if (Axis == Axis::Y) return 14965;
return 14966;
}
short WarpedHyphae();
enum Axis Axis(short ID);
}
namespace WarpedNylium
{
constexpr short WarpedNylium()
{
return 14970;
}
}
namespace WarpedPlanks
{
constexpr short WarpedPlanks()
{
return 15046;
}
}
namespace WarpedPressurePlate
{
constexpr short WarpedPressurePlate(bool Powered)
{
if (Powered) return 15061;
return 15062;
}
short WarpedPressurePlate();
bool Powered(short ID);
}
namespace WarpedRoots
{
constexpr short WarpedRoots()
{
return 14973;
}
}
namespace WarpedSign
{
constexpr short WarpedSign(unsigned char Rotation)
{
if (Rotation == 0) return 15688;
if (Rotation == 1) return 15690;
if (Rotation == 2) return 15692;
if (Rotation == 3) return 15694;
if (Rotation == 4) return 15696;
if (Rotation == 5) return 15698;
if (Rotation == 6) return 15700;
if (Rotation == 7) return 15702;
if (Rotation == 8) return 15704;
if (Rotation == 9) return 15706;
if (Rotation == 10) return 15708;
if (Rotation == 11) return 15710;
if (Rotation == 12) return 15712;
if (Rotation == 13) return 15714;
if (Rotation == 14) return 15716;
return 15718;
}
short WarpedSign();
unsigned char Rotation(short ID);
}
namespace WarpedSlab
{
enum class Type
{
Top,
Bottom,
Double
};
constexpr short WarpedSlab(enum Type Type)
{
if (Type == Type::Top) return 15054;
if (Type == Type::Bottom) return 15056;
return 15058;
}
short WarpedSlab();
enum Type Type(short ID);
}
namespace WarpedStairs
{
enum class Half
{
Top,
Bottom
};
enum class Shape
{
Straight,
InnerLeft,
InnerRight,
OuterLeft,
OuterRight
};
constexpr short WarpedStairs(eBlockFace Facing, enum Half Half, enum Shape Shape)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::Straight) return 15400;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerLeft) return 15402;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::InnerRight) return 15404;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterLeft) return 15406;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Shape == Shape::OuterRight) return 15408;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::Straight) return 15410;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 15412;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::InnerRight) return 15414;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 15416;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Shape == Shape::OuterRight) return 15418;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::Straight) return 15420;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerLeft) return 15422;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::InnerRight) return 15424;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterLeft) return 15426;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Shape == Shape::OuterRight) return 15428;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::Straight) return 15430;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 15432;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::InnerRight) return 15434;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 15436;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Shape == Shape::OuterRight) return 15438;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::Straight) return 15440;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerLeft) return 15442;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::InnerRight) return 15444;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterLeft) return 15446;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Shape == Shape::OuterRight) return 15448;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::Straight) return 15450;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerLeft) return 15452;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::InnerRight) return 15454;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterLeft) return 15456;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Shape == Shape::OuterRight) return 15458;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::Straight) return 15460;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerLeft) return 15462;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::InnerRight) return 15464;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterLeft) return 15466;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Shape == Shape::OuterRight) return 15468;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::Straight) return 15470;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerLeft) return 15472;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::InnerRight) return 15474;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Shape == Shape::OuterLeft) return 15476;
return 15478;
}
short WarpedStairs();
eBlockFace Facing(short ID);
enum Half Half(short ID);
enum Shape Shape(short ID);
}
namespace WarpedStem
{
enum class Axis
{
X,
Y,
Z
};
constexpr short WarpedStem(enum Axis Axis)
{
if (Axis == Axis::X) return 14958;
if (Axis == Axis::Y) return 14959;
return 14960;
}
short WarpedStem();
enum Axis Axis(short ID);
}
namespace WarpedTrapdoor
{
enum class Half
{
Top,
Bottom
};
constexpr short WarpedTrapdoor(eBlockFace Facing, enum Half Half, bool Open, bool Powered)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Open && Powered) return 15192;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && Open && !Powered) return 15194;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && !Open && Powered) return 15196;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Top && !Open && !Powered) return 15198;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Open && Powered) return 15200;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && Open && !Powered) return 15202;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && !Open && Powered) return 15204;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Half == Half::Bottom && !Open && !Powered) return 15206;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Open && Powered) return 15208;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && Open && !Powered) return 15210;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && !Open && Powered) return 15212;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Top && !Open && !Powered) return 15214;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Open && Powered) return 15216;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && Open && !Powered) return 15218;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && !Open && Powered) return 15220;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Half == Half::Bottom && !Open && !Powered) return 15222;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Open && Powered) return 15224;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && Open && !Powered) return 15226;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && !Open && Powered) return 15228;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Top && !Open && !Powered) return 15230;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Open && Powered) return 15232;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && Open && !Powered) return 15234;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && !Open && Powered) return 15236;
if (Facing == eBlockFace::BLOCK_FACE_XM && Half == Half::Bottom && !Open && !Powered) return 15238;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Open && Powered) return 15240;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && Open && !Powered) return 15242;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && !Open && Powered) return 15244;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Top && !Open && !Powered) return 15246;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Open && Powered) return 15248;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && Open && !Powered) return 15250;
if (Facing == eBlockFace::BLOCK_FACE_XP && Half == Half::Bottom && !Open && Powered) return 15252;
return 15254;
}
short WarpedTrapdoor();
eBlockFace Facing(short ID);
enum Half Half(short ID);
bool Open(short ID);
bool Powered(short ID);
}
namespace WarpedWallSign
{
constexpr short WarpedWallSign(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 15728;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 15730;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 15732;
return 15734;
}
short WarpedWallSign();
eBlockFace Facing(short ID);
}
namespace WarpedWartBlock
{
constexpr short WarpedWartBlock()
{
return 14972;
}
}
namespace Water
{
constexpr short Water(unsigned char Level)
{
if (Level == 0) return 34;
if (Level == 1) return 35;
if (Level == 2) return 36;
if (Level == 3) return 37;
if (Level == 4) return 38;
if (Level == 5) return 39;
if (Level == 6) return 40;
if (Level == 7) return 41;
if (Level == 8) return 42;
if (Level == 9) return 43;
if (Level == 10) return 44;
if (Level == 11) return 45;
if (Level == 12) return 46;
if (Level == 13) return 47;
if (Level == 14) return 48;
return 49;
}
short Water();
unsigned char Level(short ID);
}
namespace WeepingVines
{
constexpr short WeepingVines(unsigned char Age)
{
if (Age == 0) return 14990;
if (Age == 1) return 14991;
if (Age == 2) return 14992;
if (Age == 3) return 14993;
if (Age == 4) return 14994;
if (Age == 5) return 14995;
if (Age == 6) return 14996;
if (Age == 7) return 14997;
if (Age == 8) return 14998;
if (Age == 9) return 14999;
if (Age == 10) return 15000;
if (Age == 11) return 15001;
if (Age == 12) return 15002;
if (Age == 13) return 15003;
if (Age == 14) return 15004;
if (Age == 15) return 15005;
if (Age == 16) return 15006;
if (Age == 17) return 15007;
if (Age == 18) return 15008;
if (Age == 19) return 15009;
if (Age == 20) return 15010;
if (Age == 21) return 15011;
if (Age == 22) return 15012;
if (Age == 23) return 15013;
if (Age == 24) return 15014;
return 15015;
}
short WeepingVines();
unsigned char Age(short ID);
}
namespace WeepingVinesPlant
{
constexpr short WeepingVinesPlant()
{
return 15016;
}
}
namespace WetSponge
{
constexpr short WetSponge()
{
return 230;
}
}
namespace Wheat
{
constexpr short Wheat(unsigned char Age)
{
if (Age == 0) return 3357;
if (Age == 1) return 3358;
if (Age == 2) return 3359;
if (Age == 3) return 3360;
if (Age == 4) return 3361;
if (Age == 5) return 3362;
if (Age == 6) return 3363;
return 3364;
}
short Wheat();
unsigned char Age(short ID);
}
namespace WhiteBanner
{
constexpr short WhiteBanner(unsigned char Rotation)
{
if (Rotation == 0) return 7897;
if (Rotation == 1) return 7898;
if (Rotation == 2) return 7899;
if (Rotation == 3) return 7900;
if (Rotation == 4) return 7901;
if (Rotation == 5) return 7902;
if (Rotation == 6) return 7903;
if (Rotation == 7) return 7904;
if (Rotation == 8) return 7905;
if (Rotation == 9) return 7906;
if (Rotation == 10) return 7907;
if (Rotation == 11) return 7908;
if (Rotation == 12) return 7909;
if (Rotation == 13) return 7910;
if (Rotation == 14) return 7911;
return 7912;
}
short WhiteBanner();
unsigned char Rotation(short ID);
}
namespace WhiteBed
{
enum class Part
{
Head,
Foot
};
constexpr short WhiteBed(eBlockFace Facing, bool Occupied, enum Part Part)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Head) return 1049;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Foot) return 1050;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Head) return 1051;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Foot) return 1052;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Head) return 1053;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Foot) return 1054;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Head) return 1055;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Foot) return 1056;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Head) return 1057;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Foot) return 1058;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Head) return 1059;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Foot) return 1060;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Head) return 1061;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Foot) return 1062;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Occupied && Part == Part::Head) return 1063;
return 1064;
}
short WhiteBed();
eBlockFace Facing(short ID);
bool Occupied(short ID);
enum Part Part(short ID);
}
namespace WhiteCarpet
{
constexpr short WhiteCarpet()
{
return 7866;
}
}
namespace WhiteConcrete
{
constexpr short WhiteConcrete()
{
return 9438;
}
}
namespace WhiteConcretePowder
{
constexpr short WhiteConcretePowder()
{
return 9454;
}
}
namespace WhiteGlazedTerracotta
{
constexpr short WhiteGlazedTerracotta(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9374;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9375;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9376;
return 9377;
}
short WhiteGlazedTerracotta();
eBlockFace Facing(short ID);
}
namespace WhiteShulkerBox
{
constexpr short WhiteShulkerBox(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9278;
if (Facing == eBlockFace::BLOCK_FACE_XP) return 9279;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9280;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9281;
if (Facing == eBlockFace::BLOCK_FACE_YP) return 9282;
return 9283;
}
short WhiteShulkerBox();
eBlockFace Facing(short ID);
}
namespace WhiteStainedGlass
{
constexpr short WhiteStainedGlass()
{
return 4095;
}
}
namespace WhiteStainedGlassPane
{
constexpr short WhiteStainedGlassPane(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 6865;
if (East && North && South && !West) return 6866;
if (East && North && !South && West) return 6869;
if (East && North && !South && !West) return 6870;
if (East && !North && South && West) return 6873;
if (East && !North && South && !West) return 6874;
if (East && !North && !South && West) return 6877;
if (East && !North && !South && !West) return 6878;
if (!East && North && South && West) return 6881;
if (!East && North && South && !West) return 6882;
if (!East && North && !South && West) return 6885;
if (!East && North && !South && !West) return 6886;
if (!East && !North && South && West) return 6889;
if (!East && !North && South && !West) return 6890;
if (!East && !North && !South && West) return 6893;
return 6894;
}
short WhiteStainedGlassPane();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace WhiteTerracotta
{
constexpr short WhiteTerracotta()
{
return 6847;
}
}
namespace WhiteTulip
{
constexpr short WhiteTulip()
{
return 1419;
}
}
namespace WhiteWallBanner
{
constexpr short WhiteWallBanner(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8153;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8154;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 8155;
return 8156;
}
short WhiteWallBanner();
eBlockFace Facing(short ID);
}
namespace WhiteWool
{
constexpr short WhiteWool()
{
return 1384;
}
}
namespace WitherRose
{
constexpr short WitherRose()
{
return 1423;
}
}
namespace WitherSkeletonSkull
{
constexpr short WitherSkeletonSkull(unsigned char Rotation)
{
if (Rotation == 0) return 6510;
if (Rotation == 1) return 6511;
if (Rotation == 2) return 6512;
if (Rotation == 3) return 6513;
if (Rotation == 4) return 6514;
if (Rotation == 5) return 6515;
if (Rotation == 6) return 6516;
if (Rotation == 7) return 6517;
if (Rotation == 8) return 6518;
if (Rotation == 9) return 6519;
if (Rotation == 10) return 6520;
if (Rotation == 11) return 6521;
if (Rotation == 12) return 6522;
if (Rotation == 13) return 6523;
if (Rotation == 14) return 6524;
return 6525;
}
short WitherSkeletonSkull();
unsigned char Rotation(short ID);
}
namespace WitherSkeletonWallSkull
{
constexpr short WitherSkeletonWallSkull(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6526;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6527;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 6528;
return 6529;
}
short WitherSkeletonWallSkull();
eBlockFace Facing(short ID);
}
namespace YellowBanner
{
constexpr short YellowBanner(unsigned char Rotation)
{
if (Rotation == 0) return 7961;
if (Rotation == 1) return 7962;
if (Rotation == 2) return 7963;
if (Rotation == 3) return 7964;
if (Rotation == 4) return 7965;
if (Rotation == 5) return 7966;
if (Rotation == 6) return 7967;
if (Rotation == 7) return 7968;
if (Rotation == 8) return 7969;
if (Rotation == 9) return 7970;
if (Rotation == 10) return 7971;
if (Rotation == 11) return 7972;
if (Rotation == 12) return 7973;
if (Rotation == 13) return 7974;
if (Rotation == 14) return 7975;
return 7976;
}
short YellowBanner();
unsigned char Rotation(short ID);
}
namespace YellowBed
{
enum class Part
{
Head,
Foot
};
constexpr short YellowBed(eBlockFace Facing, bool Occupied, enum Part Part)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Head) return 1113;
if (Facing == eBlockFace::BLOCK_FACE_ZM && Occupied && Part == Part::Foot) return 1114;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Head) return 1115;
if (Facing == eBlockFace::BLOCK_FACE_ZM && !Occupied && Part == Part::Foot) return 1116;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Head) return 1117;
if (Facing == eBlockFace::BLOCK_FACE_ZP && Occupied && Part == Part::Foot) return 1118;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Head) return 1119;
if (Facing == eBlockFace::BLOCK_FACE_ZP && !Occupied && Part == Part::Foot) return 1120;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Head) return 1121;
if (Facing == eBlockFace::BLOCK_FACE_XM && Occupied && Part == Part::Foot) return 1122;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Head) return 1123;
if (Facing == eBlockFace::BLOCK_FACE_XM && !Occupied && Part == Part::Foot) return 1124;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Head) return 1125;
if (Facing == eBlockFace::BLOCK_FACE_XP && Occupied && Part == Part::Foot) return 1126;
if (Facing == eBlockFace::BLOCK_FACE_XP && !Occupied && Part == Part::Head) return 1127;
return 1128;
}
short YellowBed();
eBlockFace Facing(short ID);
bool Occupied(short ID);
enum Part Part(short ID);
}
namespace YellowCarpet
{
constexpr short YellowCarpet()
{
return 7870;
}
}
namespace YellowConcrete
{
constexpr short YellowConcrete()
{
return 9442;
}
}
namespace YellowConcretePowder
{
constexpr short YellowConcretePowder()
{
return 9458;
}
}
namespace YellowGlazedTerracotta
{
constexpr short YellowGlazedTerracotta(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9390;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9391;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9392;
return 9393;
}
short YellowGlazedTerracotta();
eBlockFace Facing(short ID);
}
namespace YellowShulkerBox
{
constexpr short YellowShulkerBox(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 9302;
if (Facing == eBlockFace::BLOCK_FACE_XP) return 9303;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 9304;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 9305;
if (Facing == eBlockFace::BLOCK_FACE_YP) return 9306;
return 9307;
}
short YellowShulkerBox();
eBlockFace Facing(short ID);
}
namespace YellowStainedGlass
{
constexpr short YellowStainedGlass()
{
return 4099;
}
}
namespace YellowStainedGlassPane
{
constexpr short YellowStainedGlassPane(bool East, bool North, bool South, bool West)
{
if (East && North && South && West) return 6993;
if (East && North && South && !West) return 6994;
if (East && North && !South && West) return 6997;
if (East && North && !South && !West) return 6998;
if (East && !North && South && West) return 7001;
if (East && !North && South && !West) return 7002;
if (East && !North && !South && West) return 7005;
if (East && !North && !South && !West) return 7006;
if (!East && North && South && West) return 7009;
if (!East && North && South && !West) return 7010;
if (!East && North && !South && West) return 7013;
if (!East && North && !South && !West) return 7014;
if (!East && !North && South && West) return 7017;
if (!East && !North && South && !West) return 7018;
if (!East && !North && !South && West) return 7021;
return 7022;
}
short YellowStainedGlassPane();
bool East(short ID);
bool North(short ID);
bool South(short ID);
bool West(short ID);
}
namespace YellowTerracotta
{
constexpr short YellowTerracotta()
{
return 6851;
}
}
namespace YellowWallBanner
{
constexpr short YellowWallBanner(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 8169;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 8170;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 8171;
return 8172;
}
short YellowWallBanner();
eBlockFace Facing(short ID);
}
namespace YellowWool
{
constexpr short YellowWool()
{
return 1388;
}
}
namespace ZombieHead
{
constexpr short ZombieHead(unsigned char Rotation)
{
if (Rotation == 0) return 6530;
if (Rotation == 1) return 6531;
if (Rotation == 2) return 6532;
if (Rotation == 3) return 6533;
if (Rotation == 4) return 6534;
if (Rotation == 5) return 6535;
if (Rotation == 6) return 6536;
if (Rotation == 7) return 6537;
if (Rotation == 8) return 6538;
if (Rotation == 9) return 6539;
if (Rotation == 10) return 6540;
if (Rotation == 11) return 6541;
if (Rotation == 12) return 6542;
if (Rotation == 13) return 6543;
if (Rotation == 14) return 6544;
return 6545;
}
short ZombieHead();
unsigned char Rotation(short ID);
}
namespace ZombieWallHead
{
constexpr short ZombieWallHead(eBlockFace Facing)
{
if (Facing == eBlockFace::BLOCK_FACE_ZM) return 6546;
if (Facing == eBlockFace::BLOCK_FACE_ZP) return 6547;
if (Facing == eBlockFace::BLOCK_FACE_XM) return 6548;
return 6549;
}
short ZombieWallHead();
eBlockFace Facing(short ID);
}
}